From a0d562d5b2c87177ceac473f6cf606559b9debde Mon Sep 17 00:00:00 2001 From: Pavel Shevaev Date: Thu, 27 Jan 2022 13:18:12 +0300 Subject: [PATCH] Trimming extra fat --- 7.4.27/mac/bin/pear | 28 - 7.4.27/mac/bin/peardev | 28 - 7.4.27/mac/bin/pecl | 28 - 7.4.27/mac/bin/php-cgi | Bin 13918416 -> 0 bytes 7.4.27/mac/bin/phpdbg | Bin 14183504 -> 0 bytes 7.4.27/mac/include/php/TSRM/TSRM.h | 218 - 7.4.27/mac/include/php/TSRM/tsrm_win32.h | 111 - 7.4.27/mac/include/php/Zend/zend.h | 358 - 7.4.27/mac/include/php/Zend/zend_API.h | 1751 - 7.4.27/mac/include/php/Zend/zend_alloc.h | 407 - .../mac/include/php/Zend/zend_alloc_sizes.h | 64 - 7.4.27/mac/include/php/Zend/zend_arena.h | 224 - 7.4.27/mac/include/php/Zend/zend_ast.h | 342 - 7.4.27/mac/include/php/Zend/zend_bitset.h | 254 - 7.4.27/mac/include/php/Zend/zend_build.h | 46 - .../include/php/Zend/zend_builtin_functions.h | 29 - 7.4.27/mac/include/php/Zend/zend_closures.h | 43 - 7.4.27/mac/include/php/Zend/zend_compile.h | 1108 - 7.4.27/mac/include/php/Zend/zend_config.h | 1 - 7.4.27/mac/include/php/Zend/zend_config.w32.h | 82 - 7.4.27/mac/include/php/Zend/zend_constants.h | 96 - 7.4.27/mac/include/php/Zend/zend_cpuinfo.h | 209 - 7.4.27/mac/include/php/Zend/zend_dtrace.h | 46 - 7.4.27/mac/include/php/Zend/zend_errors.h | 42 - 7.4.27/mac/include/php/Zend/zend_exceptions.h | 82 - 7.4.27/mac/include/php/Zend/zend_execute.h | 435 - 7.4.27/mac/include/php/Zend/zend_extensions.h | 156 - 7.4.27/mac/include/php/Zend/zend_float.h | 415 - 7.4.27/mac/include/php/Zend/zend_gc.h | 87 - 7.4.27/mac/include/php/Zend/zend_generators.h | 136 - 7.4.27/mac/include/php/Zend/zend_globals.h | 315 - .../include/php/Zend/zend_globals_macros.h | 71 - 7.4.27/mac/include/php/Zend/zend_hash.h | 1192 - 7.4.27/mac/include/php/Zend/zend_highlight.h | 50 - .../mac/include/php/Zend/zend_inheritance.h | 42 - 7.4.27/mac/include/php/Zend/zend_ini.h | 197 - 7.4.27/mac/include/php/Zend/zend_ini_parser.h | 78 - .../mac/include/php/Zend/zend_ini_scanner.h | 37 - .../include/php/Zend/zend_ini_scanner_defs.h | 12 - 7.4.27/mac/include/php/Zend/zend_interfaces.h | 82 - .../mac/include/php/Zend/zend_istdiostream.h | 34 - 7.4.27/mac/include/php/Zend/zend_iterators.h | 80 - .../include/php/Zend/zend_language_parser.h | 203 - .../include/php/Zend/zend_language_scanner.h | 76 - .../php/Zend/zend_language_scanner_defs.h | 16 - 7.4.27/mac/include/php/Zend/zend_list.h | 76 - 7.4.27/mac/include/php/Zend/zend_llist.h | 76 - 7.4.27/mac/include/php/Zend/zend_long.h | 129 - 7.4.27/mac/include/php/Zend/zend_map_ptr.h | 85 - 7.4.27/mac/include/php/Zend/zend_modules.h | 131 - 7.4.27/mac/include/php/Zend/zend_multibyte.h | 79 - 7.4.27/mac/include/php/Zend/zend_multiply.h | 343 - .../include/php/Zend/zend_object_handlers.h | 259 - 7.4.27/mac/include/php/Zend/zend_objects.h | 35 - .../mac/include/php/Zend/zend_objects_API.h | 117 - 7.4.27/mac/include/php/Zend/zend_operators.h | 983 - .../mac/include/php/Zend/zend_portability.h | 659 - 7.4.27/mac/include/php/Zend/zend_ptr_stack.h | 118 - .../mac/include/php/Zend/zend_range_check.h | 67 - 7.4.27/mac/include/php/Zend/zend_signal.h | 112 - 7.4.27/mac/include/php/Zend/zend_smart_str.h | 152 - .../include/php/Zend/zend_smart_str_public.h | 27 - .../mac/include/php/Zend/zend_smart_string.h | 115 - .../php/Zend/zend_smart_string_public.h | 31 - 7.4.27/mac/include/php/Zend/zend_sort.h | 29 - 7.4.27/mac/include/php/Zend/zend_stack.h | 49 - 7.4.27/mac/include/php/Zend/zend_stream.h | 98 - 7.4.27/mac/include/php/Zend/zend_string.h | 526 - 7.4.27/mac/include/php/Zend/zend_strtod.h | 36 - 7.4.27/mac/include/php/Zend/zend_strtod_int.h | 147 - 7.4.27/mac/include/php/Zend/zend_ts_hash.h | 138 - 7.4.27/mac/include/php/Zend/zend_type_info.h | 58 - 7.4.27/mac/include/php/Zend/zend_types.h | 1283 - 7.4.27/mac/include/php/Zend/zend_variables.h | 96 - .../mac/include/php/Zend/zend_virtual_cwd.h | 385 - 7.4.27/mac/include/php/Zend/zend_vm.h | 40 - 7.4.27/mac/include/php/Zend/zend_vm_def.h | 9423 --- 7.4.27/mac/include/php/Zend/zend_vm_execute.h | 61479 ---------------- .../mac/include/php/Zend/zend_vm_handlers.h | 1776 - 7.4.27/mac/include/php/Zend/zend_vm_opcodes.h | 277 - .../include/php/Zend/zend_vm_trace_handlers.h | 112 - .../mac/include/php/Zend/zend_vm_trace_map.h | 81 - 7.4.27/mac/include/php/Zend/zend_weakrefs.h | 36 - 7.4.27/mac/include/php/ext/date/lib/timelib.h | 967 - .../include/php/ext/date/lib/timelib_config.h | 14 - 7.4.27/mac/include/php/ext/date/php_date.h | 230 - 7.4.27/mac/include/php/ext/dom/xml_common.h | 93 - .../mac/include/php/ext/filter/php_filter.h | 99 - 7.4.27/mac/include/php/ext/hash/php_hash.h | 162 - .../include/php/ext/hash/php_hash_adler32.h | 33 - .../mac/include/php/ext/hash/php_hash_crc32.h | 36 - .../mac/include/php/ext/hash/php_hash_fnv.h | 68 - .../mac/include/php/ext/hash/php_hash_gost.h | 37 - .../mac/include/php/ext/hash/php_hash_haval.h | 57 - .../mac/include/php/ext/hash/php_hash_joaat.h | 32 - 7.4.27/mac/include/php/ext/hash/php_hash_md.h | 98 - .../include/php/ext/hash/php_hash_ripemd.h | 64 - .../mac/include/php/ext/hash/php_hash_sha.h | 103 - .../mac/include/php/ext/hash/php_hash_sha3.h | 54 - .../include/php/ext/hash/php_hash_snefru.h | 40 - .../mac/include/php/ext/hash/php_hash_tiger.h | 38 - .../include/php/ext/hash/php_hash_whirlpool.h | 37 - 7.4.27/mac/include/php/ext/json/php_json.h | 110 - .../include/php/ext/json/php_json_parser.h | 86 - .../include/php/ext/json/php_json_scanner.h | 48 - .../mac/include/php/ext/libxml/php_libxml.h | 129 - .../include/php/ext/mbstring/libmbfl/config.h | 1 - .../php/ext/mbstring/libmbfl/mbfl/eaw_table.h | 44 - .../php/ext/mbstring/libmbfl/mbfl/mbfilter.h | 308 - .../ext/mbstring/libmbfl/mbfl/mbfilter_8bit.h | 39 - .../ext/mbstring/libmbfl/mbfl/mbfilter_pass.h | 41 - .../mbstring/libmbfl/mbfl/mbfilter_wchar.h | 39 - .../mbstring/libmbfl/mbfl/mbfl_allocators.h | 57 - .../ext/mbstring/libmbfl/mbfl/mbfl_consts.h | 94 - .../ext/mbstring/libmbfl/mbfl/mbfl_convert.h | 86 - .../php/ext/mbstring/libmbfl/mbfl/mbfl_defs.h | 60 - .../ext/mbstring/libmbfl/mbfl/mbfl_encoding.h | 164 - .../libmbfl/mbfl/mbfl_filter_output.h | 38 - .../ext/mbstring/libmbfl/mbfl/mbfl_ident.h | 74 - .../ext/mbstring/libmbfl/mbfl/mbfl_language.h | 87 - .../libmbfl/mbfl/mbfl_memory_device.h | 76 - .../ext/mbstring/libmbfl/mbfl/mbfl_string.h | 57 - .../mac/include/php/ext/mbstring/mbstring.h | 203 - .../include/php/ext/mbstring/php_mbregex.h | 97 - .../php/ext/mbstring/php_onig_compat.h | 8 - .../mac/include/php/ext/msgpack/php_msgpack.h | 61 - .../include/php/ext/pcre/pcre2lib/config.h | 100 - .../mac/include/php/ext/pcre/pcre2lib/pcre2.h | 991 - .../php/ext/pcre/pcre2lib/pcre2_internal.h | 2004 - .../php/ext/pcre/pcre2lib/pcre2_intmodedep.h | 923 - .../ext/pcre/pcre2lib/pcre2_jit_neon_inc.h | 343 - .../ext/pcre/pcre2lib/pcre2_jit_simd_inc.h | 1123 - .../include/php/ext/pcre/pcre2lib/pcre2_ucp.h | 299 - 7.4.27/mac/include/php/ext/pcre/php_pcre.h | 86 - 7.4.27/mac/include/php/ext/pdo/php_pdo.h | 65 - .../mac/include/php/ext/pdo/php_pdo_driver.h | 698 - .../mac/include/php/ext/pdo/php_pdo_error.h | 37 - 7.4.27/mac/include/php/ext/phar/php_phar.h | 37 - .../mac/include/php/ext/session/mod_files.h | 27 - 7.4.27/mac/include/php/ext/session/mod_user.h | 27 - .../mac/include/php/ext/session/php_session.h | 333 - .../include/php/ext/simplexml/php_simplexml.h | 84 - .../php/ext/simplexml/php_simplexml_exports.h | 57 - .../mac/include/php/ext/sockets/php_sockets.h | 119 - 7.4.27/mac/include/php/ext/spl/php_spl.h | 75 - 7.4.27/mac/include/php/ext/spl/spl_array.h | 35 - .../mac/include/php/ext/spl/spl_directory.h | 149 - 7.4.27/mac/include/php/ext/spl/spl_dllist.h | 31 - 7.4.27/mac/include/php/ext/spl/spl_engine.h | 78 - .../mac/include/php/ext/spl/spl_exceptions.h | 42 - .../mac/include/php/ext/spl/spl_fixedarray.h | 27 - .../mac/include/php/ext/spl/spl_functions.h | 80 - 7.4.27/mac/include/php/ext/spl/spl_heap.h | 33 - .../mac/include/php/ext/spl/spl_iterators.h | 172 - 7.4.27/mac/include/php/ext/spl/spl_observer.h | 32 - 7.4.27/mac/include/php/ext/standard/base64.h | 83 - .../php/ext/standard/basic_functions.h | 274 - 7.4.27/mac/include/php/ext/standard/crc32.h | 98 - 7.4.27/mac/include/php/ext/standard/credits.h | 40 - .../include/php/ext/standard/credits_ext.h | 81 - .../include/php/ext/standard/credits_sapi.h | 19 - .../include/php/ext/standard/crypt_blowfish.h | 31 - .../include/php/ext/standard/crypt_freesec.h | 34 - 7.4.27/mac/include/php/ext/standard/css.h | 24 - .../include/php/ext/standard/cyr_convert.h | 24 - .../mac/include/php/ext/standard/datetime.h | 29 - 7.4.27/mac/include/php/ext/standard/dl.h | 33 - 7.4.27/mac/include/php/ext/standard/exec.h | 40 - 7.4.27/mac/include/php/ext/standard/file.h | 146 - .../include/php/ext/standard/flock_compat.h | 64 - 7.4.27/mac/include/php/ext/standard/fsock.h | 31 - 7.4.27/mac/include/php/ext/standard/head.h | 42 - 7.4.27/mac/include/php/ext/standard/hrtime.h | 60 - 7.4.27/mac/include/php/ext/standard/html.h | 60 - .../include/php/ext/standard/html_tables.h | 6232 -- 7.4.27/mac/include/php/ext/standard/info.h | 85 - 7.4.27/mac/include/php/ext/standard/md5.h | 53 - .../mac/include/php/ext/standard/microtime.h | 30 - 7.4.27/mac/include/php/ext/standard/pack.h | 26 - .../mac/include/php/ext/standard/pageinfo.h | 33 - .../mac/include/php/ext/standard/php_array.h | 133 - .../mac/include/php/ext/standard/php_assert.h | 30 - .../include/php/ext/standard/php_browscap.h | 27 - .../mac/include/php/ext/standard/php_crypt.h | 30 - .../include/php/ext/standard/php_crypt_r.h | 58 - 7.4.27/mac/include/php/ext/standard/php_dir.h | 42 - 7.4.27/mac/include/php/ext/standard/php_dns.h | 88 - .../include/php/ext/standard/php_ext_syslog.h | 39 - .../include/php/ext/standard/php_filestat.h | 105 - .../php/ext/standard/php_fopen_wrappers.h | 31 - .../mac/include/php/ext/standard/php_ftok.h | 26 - .../mac/include/php/ext/standard/php_http.h | 34 - .../mac/include/php/ext/standard/php_image.h | 65 - .../php/ext/standard/php_incomplete_class.h | 61 - .../mac/include/php/ext/standard/php_iptc.h | 25 - 7.4.27/mac/include/php/ext/standard/php_lcg.h | 41 - .../mac/include/php/ext/standard/php_link.h | 31 - .../mac/include/php/ext/standard/php_mail.h | 58 - .../mac/include/php/ext/standard/php_math.h | 171 - .../include/php/ext/standard/php_metaphone.h | 24 - .../include/php/ext/standard/php_mt_rand.h | 42 - 7.4.27/mac/include/php/ext/standard/php_net.h | 29 - .../include/php/ext/standard/php_password.h | 72 - .../mac/include/php/ext/standard/php_rand.h | 74 - .../mac/include/php/ext/standard/php_random.h | 55 - .../php/ext/standard/php_smart_string.h | 21 - .../ext/standard/php_smart_string_public.h | 21 - .../include/php/ext/standard/php_standard.h | 68 - .../mac/include/php/ext/standard/php_string.h | 160 - .../mac/include/php/ext/standard/php_type.h | 42 - .../include/php/ext/standard/php_uuencode.h | 28 - 7.4.27/mac/include/php/ext/standard/php_var.h | 76 - .../include/php/ext/standard/php_versioning.h | 28 - .../mac/include/php/ext/standard/proc_open.h | 48 - .../mac/include/php/ext/standard/quot_print.h | 28 - 7.4.27/mac/include/php/ext/standard/scanf.h | 47 - 7.4.27/mac/include/php/ext/standard/sha1.h | 39 - .../include/php/ext/standard/streamsfuncs.h | 69 - 7.4.27/mac/include/php/ext/standard/uniqid.h | 26 - 7.4.27/mac/include/php/ext/standard/url.h | 62 - .../include/php/ext/standard/url_scanner_ex.h | 65 - 7.4.27/mac/include/php/ext/standard/winver.h | 133 - 7.4.27/mac/include/php/ext/xml/expat_compat.h | 159 - 7.4.27/mac/include/php/ext/xml/php_xml.h | 44 - 7.4.27/mac/include/php/main/SAPI.h | 323 - 7.4.27/mac/include/php/main/build-defs.h | 41 - 7.4.27/mac/include/php/main/fastcgi.h | 128 - 7.4.27/mac/include/php/main/fopen_wrappers.h | 49 - .../mac/include/php/main/http_status_codes.h | 82 - 7.4.27/mac/include/php/main/php.h | 450 - 7.4.27/mac/include/php/main/php_compat.h | 402 - 7.4.27/mac/include/php/main/php_config.h | 2382 - .../mac/include/php/main/php_content_types.h | 29 - 7.4.27/mac/include/php/main/php_getopt.h | 41 - 7.4.27/mac/include/php/main/php_globals.h | 176 - 7.4.27/mac/include/php/main/php_ini.h | 89 - 7.4.27/mac/include/php/main/php_main.h | 58 - .../mac/include/php/main/php_memory_streams.h | 65 - 7.4.27/mac/include/php/main/php_network.h | 339 - .../php/main/php_open_temporary_file.h | 40 - 7.4.27/mac/include/php/main/php_output.h | 264 - 7.4.27/mac/include/php/main/php_reentrancy.h | 124 - 7.4.27/mac/include/php/main/php_scandir.h | 48 - 7.4.27/mac/include/php/main/php_stdint.h | 220 - 7.4.27/mac/include/php/main/php_streams.h | 610 - 7.4.27/mac/include/php/main/php_syslog.h | 44 - 7.4.27/mac/include/php/main/php_ticks.h | 32 - 7.4.27/mac/include/php/main/php_variables.h | 48 - 7.4.27/mac/include/php/main/php_version.h | 8 - 7.4.27/mac/include/php/main/rfc1867.h | 89 - 7.4.27/mac/include/php/main/snprintf.h | 164 - 7.4.27/mac/include/php/main/spprintf.h | 36 - .../php/main/streams/php_stream_context.h | 116 - .../php/main/streams/php_stream_filter_api.h | 151 - .../main/streams/php_stream_glob_wrapper.h | 33 - .../php/main/streams/php_stream_mmap.h | 79 - .../main/streams/php_stream_plain_wrapper.h | 58 - .../php/main/streams/php_stream_transport.h | 218 - .../php/main/streams/php_stream_userspace.h | 23 - .../php/main/streams/php_streams_int.h | 67 - 7.4.27/mac/include/php/sapi/cli/cli.h | 41 - 261 files changed, 118744 deletions(-) delete mode 100755 7.4.27/mac/bin/pear delete mode 100755 7.4.27/mac/bin/peardev delete mode 100755 7.4.27/mac/bin/pecl delete mode 100755 7.4.27/mac/bin/php-cgi delete mode 100755 7.4.27/mac/bin/phpdbg delete mode 100644 7.4.27/mac/include/php/TSRM/TSRM.h delete mode 100644 7.4.27/mac/include/php/TSRM/tsrm_win32.h delete mode 100644 7.4.27/mac/include/php/Zend/zend.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_API.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_alloc.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_alloc_sizes.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_arena.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_ast.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_bitset.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_build.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_builtin_functions.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_closures.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_compile.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_config.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_config.w32.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_constants.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_cpuinfo.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_dtrace.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_errors.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_exceptions.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_execute.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_extensions.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_float.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_gc.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_generators.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_globals.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_globals_macros.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_hash.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_highlight.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_inheritance.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_ini.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_ini_parser.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_ini_scanner.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_ini_scanner_defs.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_interfaces.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_istdiostream.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_iterators.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_language_parser.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_language_scanner.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_language_scanner_defs.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_list.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_llist.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_long.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_map_ptr.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_modules.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_multibyte.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_multiply.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_object_handlers.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_objects.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_objects_API.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_operators.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_portability.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_ptr_stack.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_range_check.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_signal.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_smart_str.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_smart_str_public.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_smart_string.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_smart_string_public.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_sort.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_stack.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_stream.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_string.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_strtod.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_strtod_int.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_ts_hash.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_type_info.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_types.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_variables.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_virtual_cwd.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_vm.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_vm_def.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_vm_execute.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_vm_handlers.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_vm_opcodes.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_vm_trace_handlers.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_vm_trace_map.h delete mode 100644 7.4.27/mac/include/php/Zend/zend_weakrefs.h delete mode 100644 7.4.27/mac/include/php/ext/date/lib/timelib.h delete mode 100644 7.4.27/mac/include/php/ext/date/lib/timelib_config.h delete mode 100644 7.4.27/mac/include/php/ext/date/php_date.h delete mode 100644 7.4.27/mac/include/php/ext/dom/xml_common.h delete mode 100644 7.4.27/mac/include/php/ext/filter/php_filter.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash_adler32.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash_crc32.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash_fnv.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash_gost.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash_haval.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash_joaat.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash_md.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash_ripemd.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash_sha.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash_sha3.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash_snefru.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash_tiger.h delete mode 100644 7.4.27/mac/include/php/ext/hash/php_hash_whirlpool.h delete mode 100644 7.4.27/mac/include/php/ext/json/php_json.h delete mode 100644 7.4.27/mac/include/php/ext/json/php_json_parser.h delete mode 100644 7.4.27/mac/include/php/ext/json/php_json_scanner.h delete mode 100644 7.4.27/mac/include/php/ext/libxml/php_libxml.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/config.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/eaw_table.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter_8bit.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter_pass.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter_wchar.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_allocators.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_consts.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_convert.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_defs.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_encoding.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_filter_output.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_ident.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_language.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_memory_device.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_string.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/mbstring.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/php_mbregex.h delete mode 100644 7.4.27/mac/include/php/ext/mbstring/php_onig_compat.h delete mode 100644 7.4.27/mac/include/php/ext/msgpack/php_msgpack.h delete mode 100644 7.4.27/mac/include/php/ext/pcre/pcre2lib/config.h delete mode 100644 7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2.h delete mode 100644 7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_internal.h delete mode 100644 7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_intmodedep.h delete mode 100644 7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_jit_neon_inc.h delete mode 100644 7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_jit_simd_inc.h delete mode 100644 7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_ucp.h delete mode 100644 7.4.27/mac/include/php/ext/pcre/php_pcre.h delete mode 100644 7.4.27/mac/include/php/ext/pdo/php_pdo.h delete mode 100644 7.4.27/mac/include/php/ext/pdo/php_pdo_driver.h delete mode 100644 7.4.27/mac/include/php/ext/pdo/php_pdo_error.h delete mode 100644 7.4.27/mac/include/php/ext/phar/php_phar.h delete mode 100644 7.4.27/mac/include/php/ext/session/mod_files.h delete mode 100644 7.4.27/mac/include/php/ext/session/mod_user.h delete mode 100644 7.4.27/mac/include/php/ext/session/php_session.h delete mode 100644 7.4.27/mac/include/php/ext/simplexml/php_simplexml.h delete mode 100644 7.4.27/mac/include/php/ext/simplexml/php_simplexml_exports.h delete mode 100644 7.4.27/mac/include/php/ext/sockets/php_sockets.h delete mode 100644 7.4.27/mac/include/php/ext/spl/php_spl.h delete mode 100644 7.4.27/mac/include/php/ext/spl/spl_array.h delete mode 100644 7.4.27/mac/include/php/ext/spl/spl_directory.h delete mode 100644 7.4.27/mac/include/php/ext/spl/spl_dllist.h delete mode 100644 7.4.27/mac/include/php/ext/spl/spl_engine.h delete mode 100644 7.4.27/mac/include/php/ext/spl/spl_exceptions.h delete mode 100644 7.4.27/mac/include/php/ext/spl/spl_fixedarray.h delete mode 100644 7.4.27/mac/include/php/ext/spl/spl_functions.h delete mode 100644 7.4.27/mac/include/php/ext/spl/spl_heap.h delete mode 100644 7.4.27/mac/include/php/ext/spl/spl_iterators.h delete mode 100644 7.4.27/mac/include/php/ext/spl/spl_observer.h delete mode 100644 7.4.27/mac/include/php/ext/standard/base64.h delete mode 100644 7.4.27/mac/include/php/ext/standard/basic_functions.h delete mode 100644 7.4.27/mac/include/php/ext/standard/crc32.h delete mode 100644 7.4.27/mac/include/php/ext/standard/credits.h delete mode 100644 7.4.27/mac/include/php/ext/standard/credits_ext.h delete mode 100644 7.4.27/mac/include/php/ext/standard/credits_sapi.h delete mode 100644 7.4.27/mac/include/php/ext/standard/crypt_blowfish.h delete mode 100644 7.4.27/mac/include/php/ext/standard/crypt_freesec.h delete mode 100644 7.4.27/mac/include/php/ext/standard/css.h delete mode 100644 7.4.27/mac/include/php/ext/standard/cyr_convert.h delete mode 100644 7.4.27/mac/include/php/ext/standard/datetime.h delete mode 100644 7.4.27/mac/include/php/ext/standard/dl.h delete mode 100644 7.4.27/mac/include/php/ext/standard/exec.h delete mode 100644 7.4.27/mac/include/php/ext/standard/file.h delete mode 100644 7.4.27/mac/include/php/ext/standard/flock_compat.h delete mode 100644 7.4.27/mac/include/php/ext/standard/fsock.h delete mode 100644 7.4.27/mac/include/php/ext/standard/head.h delete mode 100644 7.4.27/mac/include/php/ext/standard/hrtime.h delete mode 100644 7.4.27/mac/include/php/ext/standard/html.h delete mode 100644 7.4.27/mac/include/php/ext/standard/html_tables.h delete mode 100644 7.4.27/mac/include/php/ext/standard/info.h delete mode 100644 7.4.27/mac/include/php/ext/standard/md5.h delete mode 100644 7.4.27/mac/include/php/ext/standard/microtime.h delete mode 100644 7.4.27/mac/include/php/ext/standard/pack.h delete mode 100644 7.4.27/mac/include/php/ext/standard/pageinfo.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_array.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_assert.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_browscap.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_crypt.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_crypt_r.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_dir.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_dns.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_ext_syslog.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_filestat.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_fopen_wrappers.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_ftok.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_http.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_image.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_incomplete_class.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_iptc.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_lcg.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_link.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_mail.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_math.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_metaphone.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_mt_rand.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_net.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_password.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_rand.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_random.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_smart_string.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_smart_string_public.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_standard.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_string.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_type.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_uuencode.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_var.h delete mode 100644 7.4.27/mac/include/php/ext/standard/php_versioning.h delete mode 100644 7.4.27/mac/include/php/ext/standard/proc_open.h delete mode 100644 7.4.27/mac/include/php/ext/standard/quot_print.h delete mode 100644 7.4.27/mac/include/php/ext/standard/scanf.h delete mode 100644 7.4.27/mac/include/php/ext/standard/sha1.h delete mode 100644 7.4.27/mac/include/php/ext/standard/streamsfuncs.h delete mode 100644 7.4.27/mac/include/php/ext/standard/uniqid.h delete mode 100644 7.4.27/mac/include/php/ext/standard/url.h delete mode 100644 7.4.27/mac/include/php/ext/standard/url_scanner_ex.h delete mode 100644 7.4.27/mac/include/php/ext/standard/winver.h delete mode 100644 7.4.27/mac/include/php/ext/xml/expat_compat.h delete mode 100644 7.4.27/mac/include/php/ext/xml/php_xml.h delete mode 100644 7.4.27/mac/include/php/main/SAPI.h delete mode 100644 7.4.27/mac/include/php/main/build-defs.h delete mode 100644 7.4.27/mac/include/php/main/fastcgi.h delete mode 100644 7.4.27/mac/include/php/main/fopen_wrappers.h delete mode 100644 7.4.27/mac/include/php/main/http_status_codes.h delete mode 100644 7.4.27/mac/include/php/main/php.h delete mode 100644 7.4.27/mac/include/php/main/php_compat.h delete mode 100644 7.4.27/mac/include/php/main/php_config.h delete mode 100644 7.4.27/mac/include/php/main/php_content_types.h delete mode 100644 7.4.27/mac/include/php/main/php_getopt.h delete mode 100644 7.4.27/mac/include/php/main/php_globals.h delete mode 100644 7.4.27/mac/include/php/main/php_ini.h delete mode 100644 7.4.27/mac/include/php/main/php_main.h delete mode 100644 7.4.27/mac/include/php/main/php_memory_streams.h delete mode 100644 7.4.27/mac/include/php/main/php_network.h delete mode 100644 7.4.27/mac/include/php/main/php_open_temporary_file.h delete mode 100644 7.4.27/mac/include/php/main/php_output.h delete mode 100644 7.4.27/mac/include/php/main/php_reentrancy.h delete mode 100644 7.4.27/mac/include/php/main/php_scandir.h delete mode 100644 7.4.27/mac/include/php/main/php_stdint.h delete mode 100644 7.4.27/mac/include/php/main/php_streams.h delete mode 100644 7.4.27/mac/include/php/main/php_syslog.h delete mode 100644 7.4.27/mac/include/php/main/php_ticks.h delete mode 100644 7.4.27/mac/include/php/main/php_variables.h delete mode 100644 7.4.27/mac/include/php/main/php_version.h delete mode 100644 7.4.27/mac/include/php/main/rfc1867.h delete mode 100644 7.4.27/mac/include/php/main/snprintf.h delete mode 100644 7.4.27/mac/include/php/main/spprintf.h delete mode 100644 7.4.27/mac/include/php/main/streams/php_stream_context.h delete mode 100644 7.4.27/mac/include/php/main/streams/php_stream_filter_api.h delete mode 100644 7.4.27/mac/include/php/main/streams/php_stream_glob_wrapper.h delete mode 100644 7.4.27/mac/include/php/main/streams/php_stream_mmap.h delete mode 100644 7.4.27/mac/include/php/main/streams/php_stream_plain_wrapper.h delete mode 100644 7.4.27/mac/include/php/main/streams/php_stream_transport.h delete mode 100644 7.4.27/mac/include/php/main/streams/php_stream_userspace.h delete mode 100644 7.4.27/mac/include/php/main/streams/php_streams_int.h delete mode 100644 7.4.27/mac/include/php/sapi/cli/cli.h diff --git a/7.4.27/mac/bin/pear b/7.4.27/mac/bin/pear deleted file mode 100755 index f4dbe41..0000000 --- a/7.4.27/mac/bin/pear +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh - -# first find which PHP binary to use -if test "x$PHP_PEAR_PHP_BIN" != "x"; then - PHP="$PHP_PEAR_PHP_BIN" -else - if test "/Users/pachanga/.phpbrew/php/php-7.4.27/bin/php" = '@'php_bin'@'; then - PHP=php - else - PHP="/Users/pachanga/.phpbrew/php/php-7.4.27/bin/php" - fi -fi - -# then look for the right pear include dir -if test "x$PHP_PEAR_INSTALL_DIR" != "x"; then - INCDIR=$PHP_PEAR_INSTALL_DIR - INCARG="-d include_path=$PHP_PEAR_INSTALL_DIR" -else - if test "/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php/pear" = '@'php_dir'@'; then - INCDIR=`dirname $0` - INCARG="" - else - INCDIR="/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php/pear" - INCARG="-d include_path=/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php/pear" - fi -fi - -exec $PHP -C -q $INCARG -d date.timezone=UTC -d output_buffering=1 -d variables_order=EGPCS -d open_basedir="" -d safe_mode=0 -d register_argc_argv="On" -d auto_prepend_file="" -d auto_append_file="" $INCDIR/pearcmd.php "$@" diff --git a/7.4.27/mac/bin/peardev b/7.4.27/mac/bin/peardev deleted file mode 100755 index b501475..0000000 --- a/7.4.27/mac/bin/peardev +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh - -# first find which PHP binary to use -if test "x$PHP_PEAR_PHP_BIN" != "x"; then - PHP="$PHP_PEAR_PHP_BIN" -else - if test "/Users/pachanga/.phpbrew/php/php-7.4.27/bin/php" = '@'php_bin'@'; then - PHP=php - else - PHP="/Users/pachanga/.phpbrew/php/php-7.4.27/bin/php" - fi -fi - -# then look for the right pear include dir -if test "x$PHP_PEAR_INSTALL_DIR" != "x"; then - INCDIR=$PHP_PEAR_INSTALL_DIR - INCARG="-d include_path=$PHP_PEAR_INSTALL_DIR" -else - if test "/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php/pear" = '@'php_dir'@'; then - INCDIR=`dirname $0` - INCARG="" - else - INCDIR="/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php/pear" - INCARG="-d include_path=/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php/pear" - fi -fi - -exec $PHP -d date.timezone=UTC -d memory_limit="-1" -C -q $INCARG -d output_buffering=1 -d open_basedir="" -d safe_mode=0 -d register_argc_argv="On" -d auto_prepend_file="" -d variables_order=EGPCS -d auto_append_file="" $INCDIR/pearcmd.php "$@" diff --git a/7.4.27/mac/bin/pecl b/7.4.27/mac/bin/pecl deleted file mode 100755 index b8750b8..0000000 --- a/7.4.27/mac/bin/pecl +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/sh - -# first find which PHP binary to use -if test "x$PHP_PEAR_PHP_BIN" != "x"; then - PHP="$PHP_PEAR_PHP_BIN" -else - if test "/Users/pachanga/.phpbrew/php/php-7.4.27/bin/php" = '@'php_bin'@'; then - PHP=php - else - PHP="/Users/pachanga/.phpbrew/php/php-7.4.27/bin/php" - fi -fi - -# then look for the right pear include dir -if test "x$PHP_PEAR_INSTALL_DIR" != "x"; then - INCDIR=$PHP_PEAR_INSTALL_DIR - INCARG="-d include_path=$PHP_PEAR_INSTALL_DIR" -else - if test "/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php/pear" = '@'php_dir'@'; then - INCDIR=`dirname $0` - INCARG="" - else - INCDIR="/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php/pear" - INCARG="-d include_path=/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php/pear" - fi -fi - -exec $PHP -C -q $INCARG -d date.timezone=UTC -d output_buffering=1 -d variables_order=EGPCS -d safe_mode=0 -d register_argc_argv="On" $INCDIR/peclcmd.php "$@" diff --git a/7.4.27/mac/bin/php-cgi b/7.4.27/mac/bin/php-cgi deleted file mode 100755 index 39cdd2322315bb0b74b211de418595ffcb09f348..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 13918416 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

) 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
t|f&>q$`3hEmit9DO^_de_eXL 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

RBc`GR?sZ#U~xl;D1vz1m+tN0~R31{pk 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%0D}Ja6d00B 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

~ue0(c>yXkH>z8!|`dvttz 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

+A1P@K=U_xb*K=KTu4 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

_ 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


E1 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νxX|HCby<5a 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

HB?{4uJCG+t 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]|JV;n=V2w{NiMhg$fZ8WNPodulQj9O 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


(z>W5EsN9Yc#?9 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Ñ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 z%0A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
qBT&g7VXM&NC@6IazPiq1jc&zPEt;!N&6<@t< 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�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
IV%; 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

srx%VhIG+f2XD~ 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�BtRMkPFWSp#pVDlG=ewAr_(ZK|Y9$hXiHE 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

M-FTehp>~CaiyEX!raW8!%maN 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[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

Bb0mTso*hVFvylJ2JN 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∓V|8NeZ<>qtGgj|F-W>b^g)q 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%0DX`?L?5P)(0^Bq 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 z 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 z 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Ν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�EBF+(525{bT!`i8pZxhT$2HHr zP5W|a@4E2t{d0Q{{7ifE{@a;o&!3<3`|tAo(RiPKm&o`;>pZj%B

>W}5Mv_g^j+ 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∓HP!QzGxq~FpkWO4ZE>z)}g-K4W|0??<1o?L#6!8 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

T_2;z!)SbKqulN_Q2j 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⋙``qJ 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

eaC*K;j6+>B`GSe=eMo0;IL|BU2W;W@*Z6AA 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

w^F;Gt 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�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

>5cfS~3vW<8-E87^NrcApL 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ℑv$ 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

y7I9AG3Thph(UR5GAOF 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

{`7wnF|iWKuXzOacvP`0F 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

Ko}1F88yLj#;+^#l#R<}jPx%` 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

9d9F!aEXR4tMdh@I` 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
+w4WxKLtbyodKa2n~2+uN~ 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 z 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

)%~WC>EA82CIg|y5 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%0D)X<6bgps}wgZTvXR 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

Ht>lJSvPvYALF^>?jS#fGN7P{ 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%0DTVQpIN(6-b<10*|SIF?YG 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%0D!EnB2#WTYsS~X1xdTnQsi1fw2I?-Ug|Juz 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%0A}2y$mDGD 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
|?$REDc8YsG( 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%0A4wQn_GaBEB5yf973{ek==w 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�U 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

^~Qfh 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">c$bR)k9Sqk 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

BUqWocE@hH&fXnci3$;ZU5C}a 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 z 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 z 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%0D%6iD-DpcXCIG1 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

;$M`D~GrFBE$f9f%aB@F%1Hvvj4{)qt{E(G> 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%0DP# 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%0DC0OV&!CSuR*c`9V=IJOl5f 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 )7}hc(b1K>sUoebLvm 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¨z~=QsU6to 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%0AWLEi_ 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

Fc*9r*)>!51<`~I?( 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

?J~|A~KE4Mu7506yf3kgY8XkUj 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 z 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

Ls@WT%e&frE#)xO=-}-5j-@`?tkLgGpjM(jEZO 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

  • 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∨>)}ToMqhI`{zkMXUXcF1^O7!S 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℞#N*7@JuXF(( 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

    5t&Iqu*+agL9{6+R!g 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 jgnDn-G+d-aYR|0Np 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�zF? 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

    pG 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 | - +----------------------------------------------------------------------+ -*/ - -#ifndef TSRM_H -#define TSRM_H - -#if !defined(__CYGWIN__) && defined(WIN32) -# define TSRM_WIN32 -# include "Zend/zend_config.w32.h" -#else -# include "main/php_config.h" -#endif - -#include "main/php_stdint.h" - -#ifdef TSRM_WIN32 -# ifdef TSRM_EXPORTS -# define TSRM_API __declspec(dllexport) -# else -# define TSRM_API __declspec(dllimport) -# endif -#elif defined(__GNUC__) && __GNUC__ >= 4 -# define TSRM_API __attribute__ ((visibility("default"))) -#else -# define TSRM_API -#endif - -typedef intptr_t tsrm_intptr_t; -typedef uintptr_t tsrm_uintptr_t; - -/* Only compile multi-threading functions if we're in ZTS mode */ -#ifdef ZTS - -#ifdef TSRM_WIN32 -# ifndef TSRM_INCLUDE_FULL_WINDOWS_HEADERS -# define WIN32_LEAN_AND_MEAN -# endif -# include -# include -#elif defined(GNUPTH) -# include -#elif defined(PTHREADS) -# include -#elif defined(TSRM_ST) -# include -#endif - -#if SIZEOF_SIZE_T == 4 -# define TSRM_ALIGNED_SIZE(size) \ - (((size) + INT32_C(15)) & ~INT32_C(15)) -#else -# define TSRM_ALIGNED_SIZE(size) \ - (((size) + INT64_C(15)) & ~INT64_C(15)) -#endif - -typedef int ts_rsrc_id; - -/* Define THREAD_T and MUTEX_T */ -#ifdef TSRM_WIN32 -# define THREAD_T DWORD -# define MUTEX_T CRITICAL_SECTION * -#elif defined(GNUPTH) -# define THREAD_T pth_t -# define MUTEX_T pth_mutex_t * -#elif defined(PTHREADS) -# define THREAD_T pthread_t -# define MUTEX_T pthread_mutex_t * -#elif defined(TSRM_ST) -# define THREAD_T st_thread_t -# define MUTEX_T st_mutex_t -#endif - -#include - -typedef void (*ts_allocate_ctor)(void *); -typedef void (*ts_allocate_dtor)(void *); - -#define THREAD_HASH_OF(thr,ts) (unsigned long)thr%(unsigned long)ts - -#ifdef __cplusplus -extern "C" { -#endif - -/* startup/shutdown */ -TSRM_API int tsrm_startup(int expected_threads, int expected_resources, int debug_level, char *debug_filename); -TSRM_API void tsrm_shutdown(void); - -/* environ lock API */ -TSRM_API void tsrm_env_lock(); -TSRM_API void tsrm_env_unlock(); - -/* allocates a new thread-safe-resource id */ -TSRM_API ts_rsrc_id ts_allocate_id(ts_rsrc_id *rsrc_id, size_t size, ts_allocate_ctor ctor, ts_allocate_dtor dtor); - -/* Fast resource in reserved (pre-allocated) space */ -TSRM_API void tsrm_reserve(size_t size); -TSRM_API ts_rsrc_id ts_allocate_fast_id(ts_rsrc_id *rsrc_id, size_t *offset, size_t size, ts_allocate_ctor ctor, ts_allocate_dtor dtor); - -/* fetches the requested resource for the current thread */ -TSRM_API void *ts_resource_ex(ts_rsrc_id id, THREAD_T *th_id); -#define ts_resource(id) ts_resource_ex(id, NULL) - -/* frees all resources allocated for the current thread */ -TSRM_API void ts_free_thread(void); - -/* deallocates all occurrences of a given id */ -TSRM_API void ts_free_id(ts_rsrc_id id); - - -/* Debug support */ -#define TSRM_ERROR_LEVEL_ERROR 1 -#define TSRM_ERROR_LEVEL_CORE 2 -#define TSRM_ERROR_LEVEL_INFO 3 - -typedef void (*tsrm_thread_begin_func_t)(THREAD_T thread_id); -typedef void (*tsrm_thread_end_func_t)(THREAD_T thread_id); -typedef void (*tsrm_shutdown_func_t)(void); - - -TSRM_API int tsrm_error(int level, const char *format, ...); -TSRM_API void tsrm_error_set(int level, char *debug_filename); - -/* utility functions */ -TSRM_API THREAD_T tsrm_thread_id(void); -TSRM_API MUTEX_T tsrm_mutex_alloc(void); -TSRM_API void tsrm_mutex_free(MUTEX_T mutexp); -TSRM_API int tsrm_mutex_lock(MUTEX_T mutexp); -TSRM_API int tsrm_mutex_unlock(MUTEX_T mutexp); -#ifdef HAVE_SIGPROCMASK -TSRM_API int tsrm_sigmask(int how, const sigset_t *set, sigset_t *oldset); -#endif - -TSRM_API void *tsrm_set_new_thread_begin_handler(tsrm_thread_begin_func_t new_thread_begin_handler); -TSRM_API void *tsrm_set_new_thread_end_handler(tsrm_thread_end_func_t new_thread_end_handler); -TSRM_API void *tsrm_set_shutdown_handler(tsrm_shutdown_func_t shutdown_handler); - -/* these 3 APIs should only be used by people that fully understand the threading model - * used by PHP/Zend and the selected SAPI. */ -TSRM_API void *tsrm_new_interpreter_context(void); -TSRM_API void *tsrm_set_interpreter_context(void *new_ctx); -TSRM_API void tsrm_free_interpreter_context(void *context); - -TSRM_API void *tsrm_get_ls_cache(void); -TSRM_API uint8_t tsrm_is_main_thread(void); -TSRM_API uint8_t tsrm_is_shutdown(void); -TSRM_API const char *tsrm_api_name(void); - -#ifdef TSRM_WIN32 -# define TSRM_TLS __declspec(thread) -#else -# define TSRM_TLS __thread -#endif - -#define TSRM_SHUFFLE_RSRC_ID(rsrc_id) ((rsrc_id)+1) -#define TSRM_UNSHUFFLE_RSRC_ID(rsrc_id) ((rsrc_id)-1) - -#define TSRMLS_FETCH_FROM_CTX(ctx) void ***tsrm_ls = (void ***) ctx -#define TSRMLS_SET_CTX(ctx) ctx = (void ***) tsrm_get_ls_cache() -#define TSRMG(id, type, element) (TSRMG_BULK(id, type)->element) -#define TSRMG_BULK(id, type) ((type) (*((void ***) tsrm_get_ls_cache()))[TSRM_UNSHUFFLE_RSRC_ID(id)]) -#define TSRMG_FAST(offset, type, element) (TSRMG_FAST_BULK(offset, type)->element) -#define TSRMG_FAST_BULK(offset, type) ((type) (((char*) tsrm_get_ls_cache())+(offset))) - -#define TSRMG_STATIC(id, type, element) (TSRMG_BULK_STATIC(id, type)->element) -#define TSRMG_BULK_STATIC(id, type) ((type) (*((void ***) TSRMLS_CACHE))[TSRM_UNSHUFFLE_RSRC_ID(id)]) -#define TSRMG_FAST_STATIC(offset, type, element) (TSRMG_FAST_BULK_STATIC(offset, type)->element) -#define TSRMG_FAST_BULK_STATIC(offset, type) ((type) (((char*) TSRMLS_CACHE)+(offset))) -#define TSRMLS_CACHE_EXTERN() extern TSRM_TLS void *TSRMLS_CACHE; -#define TSRMLS_CACHE_DEFINE() TSRM_TLS void *TSRMLS_CACHE = NULL; -#define TSRMLS_CACHE_UPDATE() TSRMLS_CACHE = tsrm_get_ls_cache() -#define TSRMLS_CACHE _tsrm_ls_cache - -/* BC only */ -#define TSRMLS_D void -#define TSRMLS_DC -#define TSRMLS_C -#define TSRMLS_CC -#define TSRMLS_FETCH() - -#ifdef __cplusplus -} -#endif - -#else /* non ZTS */ - -#define tsrm_env_lock() -#define tsrm_env_unlock() - -#define TSRMLS_FETCH() -#define TSRMLS_FETCH_FROM_CTX(ctx) -#define TSRMLS_SET_CTX(ctx) - -#define TSRMG_STATIC(id, type, element) -#define TSRMLS_CACHE_EXTERN() -#define TSRMLS_CACHE_DEFINE() -#define TSRMLS_CACHE_UPDATE() -#define TSRMLS_CACHE - -#define TSRM_TLS - -/* BC only */ -#define TSRMLS_D void -#define TSRMLS_DC -#define TSRMLS_C -#define TSRMLS_CC - -#endif /* ZTS */ - -#endif /* TSRM_H */ diff --git a/7.4.27/mac/include/php/TSRM/tsrm_win32.h b/7.4.27/mac/include/php/TSRM/tsrm_win32.h deleted file mode 100644 index 1ae9bea..0000000 --- a/7.4.27/mac/include/php/TSRM/tsrm_win32.h +++ /dev/null @@ -1,111 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Daniel Beulshausen | - +----------------------------------------------------------------------+ -*/ - -#ifndef TSRM_WIN32_H -#define TSRM_WIN32_H - -#include "TSRM.h" -#include -#if HAVE_UTIME -# include -#endif -#include "win32/ipc.h" - -struct ipc_perm { - key_t key; - unsigned short uid; - unsigned short gid; - unsigned short cuid; - unsigned short cgid; - unsigned short mode; - unsigned short seq; -}; - -struct shmid_ds { - struct ipc_perm shm_perm; - size_t shm_segsz; - time_t shm_atime; - time_t shm_dtime; - time_t shm_ctime; - unsigned short shm_cpid; - unsigned short shm_lpid; - short shm_nattch; -}; - -typedef struct { - FILE *stream; - HANDLE prochnd; -} process_pair; - -typedef struct { - void *addr; - HANDLE info; - HANDLE segment; - struct shmid_ds *descriptor; -} shm_pair; - -typedef struct { - process_pair *process; - shm_pair *shm; - int process_size; - int shm_size; - char *comspec; - HANDLE impersonation_token; - PSID impersonation_token_sid; -} tsrm_win32_globals; - -#ifdef ZTS -# define TWG(v) TSRMG_STATIC(win32_globals_id, tsrm_win32_globals *, v) -TSRMLS_CACHE_EXTERN() -#else -# define TWG(v) (win32_globals.v) -#endif - -#define IPC_PRIVATE 0 -#define IPC_CREAT 00001000 -#define IPC_EXCL 00002000 -#define IPC_NOWAIT 00004000 - -#define IPC_RMID 0 -#define IPC_SET 1 -#define IPC_STAT 2 -#define IPC_INFO 3 - -#define SHM_R PAGE_READONLY -#define SHM_W PAGE_READWRITE - -#define SHM_RDONLY FILE_MAP_READ -#define SHM_RND FILE_MAP_WRITE -#define SHM_REMAP FILE_MAP_COPY - -char * tsrm_win32_get_path_sid_key(const char *pathname, size_t pathname_len, size_t *key_len); - -TSRM_API void tsrm_win32_startup(void); -TSRM_API void tsrm_win32_shutdown(void); - -TSRM_API FILE *popen_ex(const char *command, const char *type, const char *cwd, char *env); -TSRM_API FILE *popen(const char *command, const char *type); -TSRM_API int pclose(FILE *stream); -TSRM_API int tsrm_win32_access(const char *pathname, int mode); -TSRM_API int win32_utime(const char *filename, struct utimbuf *buf); - -TSRM_API int shmget(key_t key, size_t size, int flags); -TSRM_API void *shmat(int key, const void *shmaddr, int flags); -TSRM_API int shmdt(const void *shmaddr); -TSRM_API int shmctl(int key, int cmd, struct shmid_ds *buf); -#endif diff --git a/7.4.27/mac/include/php/Zend/zend.h b/7.4.27/mac/include/php/Zend/zend.h deleted file mode 100644 index 94fd9a3..0000000 --- a/7.4.27/mac/include/php/Zend/zend.h +++ /dev/null @@ -1,358 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_H -#define ZEND_H - -#define ZEND_VERSION "3.4.0" - -#define ZEND_ENGINE_3 - -#include "zend_types.h" -#include "zend_map_ptr.h" -#include "zend_errors.h" -#include "zend_alloc.h" -#include "zend_llist.h" -#include "zend_string.h" -#include "zend_hash.h" -#include "zend_ast.h" -#include "zend_gc.h" -#include "zend_variables.h" -#include "zend_iterators.h" -#include "zend_stream.h" -#include "zend_smart_str_public.h" -#include "zend_smart_string_public.h" -#include "zend_signal.h" - -#define zend_sprintf sprintf - -#define HANDLE_BLOCK_INTERRUPTIONS() ZEND_SIGNAL_BLOCK_INTERRUPTIONS() -#define HANDLE_UNBLOCK_INTERRUPTIONS() ZEND_SIGNAL_UNBLOCK_INTERRUPTIONS() - -#define INTERNAL_FUNCTION_PARAMETERS zend_execute_data *execute_data, zval *return_value -#define INTERNAL_FUNCTION_PARAM_PASSTHRU execute_data, return_value - -#define USED_RET() \ - (!EX(prev_execute_data) || \ - !ZEND_USER_CODE(EX(prev_execute_data)->func->common.type) || \ - (EX(prev_execute_data)->opline->result_type != IS_UNUSED)) - -#ifdef ZEND_ENABLE_STATIC_TSRMLS_CACHE -#define ZEND_TSRMG TSRMG_STATIC -#define ZEND_TSRMG_FAST TSRMG_FAST_STATIC -#define ZEND_TSRMLS_CACHE_EXTERN() TSRMLS_CACHE_EXTERN() -#define ZEND_TSRMLS_CACHE_DEFINE() TSRMLS_CACHE_DEFINE() -#define ZEND_TSRMLS_CACHE_UPDATE() TSRMLS_CACHE_UPDATE() -#define ZEND_TSRMLS_CACHE TSRMLS_CACHE -#else -#define ZEND_TSRMG TSRMG -#define ZEND_TSRMG_FAST TSRMG_FAST -#define ZEND_TSRMLS_CACHE_EXTERN() -#define ZEND_TSRMLS_CACHE_DEFINE() -#define ZEND_TSRMLS_CACHE_UPDATE() -#define ZEND_TSRMLS_CACHE -#endif - -ZEND_TSRMLS_CACHE_EXTERN() - -struct _zend_serialize_data; -struct _zend_unserialize_data; - -typedef struct _zend_serialize_data zend_serialize_data; -typedef struct _zend_unserialize_data zend_unserialize_data; - -typedef struct _zend_class_name { - zend_string *name; - zend_string *lc_name; -} zend_class_name; - -typedef struct _zend_trait_method_reference { - zend_string *method_name; - zend_string *class_name; -} zend_trait_method_reference; - -typedef struct _zend_trait_precedence { - zend_trait_method_reference trait_method; - uint32_t num_excludes; - zend_string *exclude_class_names[1]; -} zend_trait_precedence; - -typedef struct _zend_trait_alias { - zend_trait_method_reference trait_method; - - /** - * name for method to be added - */ - zend_string *alias; - - /** - * modifiers to be set on trait method - */ - uint32_t modifiers; -} zend_trait_alias; - -struct _zend_class_entry { - char type; - zend_string *name; - /* class_entry or string depending on ZEND_ACC_LINKED */ - union { - zend_class_entry *parent; - zend_string *parent_name; - }; - int refcount; - uint32_t ce_flags; - - int default_properties_count; - int default_static_members_count; - zval *default_properties_table; - zval *default_static_members_table; - ZEND_MAP_PTR_DEF(zval *, static_members_table); - HashTable function_table; - HashTable properties_info; - HashTable constants_table; - - struct _zend_property_info **properties_info_table; - - zend_function *constructor; - zend_function *destructor; - zend_function *clone; - zend_function *__get; - zend_function *__set; - zend_function *__unset; - zend_function *__isset; - zend_function *__call; - zend_function *__callstatic; - zend_function *__tostring; - zend_function *__debugInfo; - zend_function *serialize_func; - zend_function *unserialize_func; - - /* allocated only if class implements Iterator or IteratorAggregate interface */ - zend_class_iterator_funcs *iterator_funcs_ptr; - - /* handlers */ - union { - zend_object* (*create_object)(zend_class_entry *class_type); - int (*interface_gets_implemented)(zend_class_entry *iface, zend_class_entry *class_type); /* a class implements this interface */ - }; - zend_object_iterator *(*get_iterator)(zend_class_entry *ce, zval *object, int by_ref); - zend_function *(*get_static_method)(zend_class_entry *ce, zend_string* method); - - /* serializer callbacks */ - int (*serialize)(zval *object, unsigned char **buffer, size_t *buf_len, zend_serialize_data *data); - int (*unserialize)(zval *object, zend_class_entry *ce, const unsigned char *buf, size_t buf_len, zend_unserialize_data *data); - - uint32_t num_interfaces; - uint32_t num_traits; - - /* class_entry or string(s) depending on ZEND_ACC_LINKED */ - union { - zend_class_entry **interfaces; - zend_class_name *interface_names; - }; - - zend_class_name *trait_names; - zend_trait_alias **trait_aliases; - zend_trait_precedence **trait_precedences; - - union { - struct { - zend_string *filename; - uint32_t line_start; - uint32_t line_end; - zend_string *doc_comment; - } user; - struct { - const struct _zend_function_entry *builtin_functions; - struct _zend_module_entry *module; - } internal; - } info; -}; - -typedef struct _zend_utility_functions { - void (*error_function)(int type, const char *error_filename, const uint32_t error_lineno, const char *format, va_list args) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 4, 0); - size_t (*printf_function)(const char *format, ...) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 1, 2); - size_t (*write_function)(const char *str, size_t str_length); - FILE *(*fopen_function)(const char *filename, zend_string **opened_path); - void (*message_handler)(zend_long message, const void *data); - zval *(*get_configuration_directive)(zend_string *name); - void (*ticks_function)(int ticks); - void (*on_timeout)(int seconds); - int (*stream_open_function)(const char *filename, zend_file_handle *handle); - void (*printf_to_smart_string_function)(smart_string *buf, const char *format, va_list ap); - void (*printf_to_smart_str_function)(smart_str *buf, const char *format, va_list ap); - char *(*getenv_function)(char *name, size_t name_len); - zend_string *(*resolve_path_function)(const char *filename, size_t filename_len); -} zend_utility_functions; - -typedef struct _zend_utility_values { - zend_bool html_errors; -} zend_utility_values; - -typedef int (*zend_write_func_t)(const char *str, size_t str_length); - -#define zend_bailout() _zend_bailout(__FILE__, __LINE__) - -#define zend_try \ - { \ - JMP_BUF *__orig_bailout = EG(bailout); \ - JMP_BUF __bailout; \ - \ - EG(bailout) = &__bailout; \ - if (SETJMP(__bailout)==0) { -#define zend_catch \ - } else { \ - EG(bailout) = __orig_bailout; -#define zend_end_try() \ - } \ - EG(bailout) = __orig_bailout; \ - } -#define zend_first_try EG(bailout)=NULL; zend_try - -BEGIN_EXTERN_C() -int zend_startup(zend_utility_functions *utility_functions); -void zend_shutdown(void); -void zend_register_standard_ini_entries(void); -int zend_post_startup(void); -void zend_set_utility_values(zend_utility_values *utility_values); - -ZEND_API ZEND_COLD ZEND_NORETURN void _zend_bailout(const char *filename, uint32_t lineno); - -ZEND_API size_t zend_vspprintf(char **pbuf, size_t max_len, const char *format, va_list ap); -ZEND_API size_t zend_spprintf(char **message, size_t max_len, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 3, 4); -ZEND_API zend_string *zend_vstrpprintf(size_t max_len, const char *format, va_list ap); -ZEND_API zend_string *zend_strpprintf(size_t max_len, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 2, 3); - -/* Same as zend_spprintf and zend_strpprintf, without checking of format validity. - * For use with custom printf specifiers such as %H. */ -ZEND_API size_t zend_spprintf_unchecked(char **message, size_t max_len, const char *format, ...); -ZEND_API zend_string *zend_strpprintf_unchecked(size_t max_len, const char *format, ...); - -ZEND_API char *get_zend_version(void); -ZEND_API int zend_make_printable_zval(zval *expr, zval *expr_copy); -ZEND_API size_t zend_print_zval(zval *expr, int indent); -ZEND_API void zend_print_zval_r(zval *expr, int indent); -ZEND_API zend_string *zend_print_zval_r_to_str(zval *expr, int indent); -ZEND_API void zend_print_flat_zval_r(zval *expr); - -#define zend_print_variable(var) \ - zend_print_zval((var), 0) - -ZEND_API ZEND_COLD void zend_output_debug_string(zend_bool trigger_break, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 2, 3); - -ZEND_API void zend_activate(void); -ZEND_API void zend_deactivate(void); -ZEND_API void zend_call_destructors(void); -ZEND_API void zend_activate_modules(void); -ZEND_API void zend_deactivate_modules(void); -ZEND_API void zend_post_deactivate_modules(void); - -ZEND_API void free_estring(char **str_p); - -END_EXTERN_C() - -/* output support */ -#define ZEND_WRITE(str, str_len) zend_write((str), (str_len)) -#define ZEND_WRITE_EX(str, str_len) write_func((str), (str_len)) -#define ZEND_PUTS(str) zend_write((str), strlen((str))) -#define ZEND_PUTS_EX(str) write_func((str), strlen((str))) -#define ZEND_PUTC(c) zend_write(&(c), 1) - -BEGIN_EXTERN_C() -extern ZEND_API size_t (*zend_printf)(const char *format, ...) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 1, 2); -extern ZEND_API zend_write_func_t zend_write; -extern ZEND_API FILE *(*zend_fopen)(const char *filename, zend_string **opened_path); -extern ZEND_API void (*zend_ticks_function)(int ticks); -extern ZEND_API void (*zend_interrupt_function)(zend_execute_data *execute_data); -extern ZEND_API void (*zend_error_cb)(int type, const char *error_filename, const uint32_t error_lineno, const char *format, va_list args) ZEND_ATTRIBUTE_PTR_FORMAT(printf, 4, 0); -extern ZEND_API void (*zend_on_timeout)(int seconds); -extern ZEND_API int (*zend_stream_open_function)(const char *filename, zend_file_handle *handle); -extern void (*zend_printf_to_smart_string)(smart_string *buf, const char *format, va_list ap); -extern void (*zend_printf_to_smart_str)(smart_str *buf, const char *format, va_list ap); -extern ZEND_API char *(*zend_getenv)(char *name, size_t name_len); -extern ZEND_API zend_string *(*zend_resolve_path)(const char *filename, size_t filename_len); - -/* These two callbacks are especially for opcache */ -extern ZEND_API int (*zend_post_startup_cb)(void); -extern ZEND_API void (*zend_post_shutdown_cb)(void); - -/* Callback for loading of not preloaded part of the script */ -extern ZEND_API int (*zend_preload_autoload)(zend_string *filename); - -ZEND_API ZEND_COLD void zend_error(int type, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 2, 3); -ZEND_API ZEND_COLD ZEND_NORETURN void zend_error_noreturn(int type, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 2, 3); -/* If filename is NULL the default filename is used. */ -ZEND_API ZEND_COLD void zend_error_at(int type, const char *filename, uint32_t lineno, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 4, 5); -ZEND_API ZEND_COLD ZEND_NORETURN void zend_error_at_noreturn(int type, const char *filename, uint32_t lineno, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 4, 5); - -ZEND_API ZEND_COLD void zend_throw_error(zend_class_entry *exception_ce, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 2, 3); -ZEND_API ZEND_COLD void zend_type_error(const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 1, 2); -ZEND_API ZEND_COLD void zend_internal_type_error(zend_bool throw_exception, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 2, 3); -ZEND_API ZEND_COLD void zend_internal_argument_count_error(zend_bool throw_exception, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 2, 3); - -ZEND_COLD void zenderror(const char *error); - -/* The following #define is used for code duality in PHP for Engine 1 & 2 */ -#define ZEND_STANDARD_CLASS_DEF_PTR zend_standard_class_def -extern ZEND_API zend_class_entry *zend_standard_class_def; -extern ZEND_API zend_utility_values zend_uv; - -/* If DTrace is available and enabled */ -extern ZEND_API zend_bool zend_dtrace_enabled; -END_EXTERN_C() - -#define ZEND_UV(name) (zend_uv.name) - -BEGIN_EXTERN_C() -ZEND_API void zend_message_dispatcher(zend_long message, const void *data); - -ZEND_API zval *zend_get_configuration_directive(zend_string *name); -END_EXTERN_C() - -/* Messages for applications of Zend */ -#define ZMSG_FAILED_INCLUDE_FOPEN 1L -#define ZMSG_FAILED_REQUIRE_FOPEN 2L -#define ZMSG_FAILED_HIGHLIGHT_FOPEN 3L -#define ZMSG_MEMORY_LEAK_DETECTED 4L -#define ZMSG_MEMORY_LEAK_REPEATED 5L -#define ZMSG_LOG_SCRIPT_NAME 6L -#define ZMSG_MEMORY_LEAKS_GRAND_TOTAL 7L - -typedef enum { - EH_NORMAL = 0, - EH_THROW -} zend_error_handling_t; - -typedef struct { - zend_error_handling_t handling; - zend_class_entry *exception; - zval user_handler; -} zend_error_handling; - -ZEND_API void zend_save_error_handling(zend_error_handling *current); -ZEND_API void zend_replace_error_handling(zend_error_handling_t error_handling, zend_class_entry *exception_class, zend_error_handling *current); -ZEND_API void zend_restore_error_handling(zend_error_handling *saved); - -#define DEBUG_BACKTRACE_PROVIDE_OBJECT (1<<0) -#define DEBUG_BACKTRACE_IGNORE_ARGS (1<<1) - -#include "zend_object_handlers.h" -#include "zend_operators.h" - -#endif /* ZEND_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_API.h b/7.4.27/mac/include/php/Zend/zend_API.h deleted file mode 100644 index 2a3b582..0000000 --- a/7.4.27/mac/include/php/Zend/zend_API.h +++ /dev/null @@ -1,1751 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - | Andrei Zmievski | - | Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_API_H -#define ZEND_API_H - -#include "zend_modules.h" -#include "zend_list.h" -#include "zend_operators.h" -#include "zend_variables.h" -#include "zend_execute.h" - - -BEGIN_EXTERN_C() - -typedef struct _zend_function_entry { - const char *fname; - zif_handler handler; - const struct _zend_internal_arg_info *arg_info; - uint32_t num_args; - uint32_t flags; -} zend_function_entry; - -typedef struct _zend_fcall_info { - size_t size; - zval function_name; - zval *retval; - zval *params; - zend_object *object; - zend_bool no_separation; - uint32_t param_count; -} zend_fcall_info; - -typedef struct _zend_fcall_info_cache { - zend_function *function_handler; - zend_class_entry *calling_scope; - zend_class_entry *called_scope; - zend_object *object; -} zend_fcall_info_cache; - -#define ZEND_NS_NAME(ns, name) ns "\\" name - -#define ZEND_FN(name) zif_##name -#define ZEND_MN(name) zim_##name -#define ZEND_NAMED_FUNCTION(name) void ZEND_FASTCALL name(INTERNAL_FUNCTION_PARAMETERS) -#define ZEND_FUNCTION(name) ZEND_NAMED_FUNCTION(ZEND_FN(name)) -#define ZEND_METHOD(classname, name) ZEND_NAMED_FUNCTION(ZEND_MN(classname##_##name)) - -#define ZEND_FENTRY(zend_name, name, arg_info, flags) { #zend_name, name, arg_info, (uint32_t) (sizeof(arg_info)/sizeof(struct _zend_internal_arg_info)-1), flags }, - -#define ZEND_RAW_FENTRY(zend_name, name, arg_info, flags) { zend_name, name, arg_info, (uint32_t) (sizeof(arg_info)/sizeof(struct _zend_internal_arg_info)-1), flags }, -#define ZEND_RAW_NAMED_FE(zend_name, name, arg_info) ZEND_RAW_FENTRY(#zend_name, name, arg_info, 0) - -#define ZEND_NAMED_FE(zend_name, name, arg_info) ZEND_FENTRY(zend_name, name, arg_info, 0) -#define ZEND_FE(name, arg_info) ZEND_FENTRY(name, ZEND_FN(name), arg_info, 0) -#define ZEND_DEP_FE(name, arg_info) ZEND_FENTRY(name, ZEND_FN(name), arg_info, ZEND_ACC_DEPRECATED) -#define ZEND_FALIAS(name, alias, arg_info) ZEND_FENTRY(name, ZEND_FN(alias), arg_info, 0) -#define ZEND_DEP_FALIAS(name, alias, arg_info) ZEND_FENTRY(name, ZEND_FN(alias), arg_info, ZEND_ACC_DEPRECATED) -#define ZEND_NAMED_ME(zend_name, name, arg_info, flags) ZEND_FENTRY(zend_name, name, arg_info, flags) -#define ZEND_ME(classname, name, arg_info, flags) ZEND_FENTRY(name, ZEND_MN(classname##_##name), arg_info, flags) -#define ZEND_DEP_ME(classname, name, arg_info, flags) ZEND_ME(classname, name, arg_info, flags | ZEND_ACC_DEPRECATED) -#define ZEND_ABSTRACT_ME(classname, name, arg_info) ZEND_FENTRY(name, NULL, arg_info, ZEND_ACC_PUBLIC|ZEND_ACC_ABSTRACT) -#define ZEND_MALIAS(classname, name, alias, arg_info, flags) \ - ZEND_FENTRY(name, ZEND_MN(classname##_##alias), arg_info, flags) -#define ZEND_ME_MAPPING(name, func_name, arg_types, flags) ZEND_NAMED_ME(name, ZEND_FN(func_name), arg_types, flags) - -#define ZEND_NS_FENTRY(ns, zend_name, name, arg_info, flags) ZEND_RAW_FENTRY(ZEND_NS_NAME(ns, #zend_name), name, arg_info, flags) - -#define ZEND_NS_RAW_FENTRY(ns, zend_name, name, arg_info, flags) ZEND_RAW_FENTRY(ZEND_NS_NAME(ns, zend_name), name, arg_info, flags) -#define ZEND_NS_RAW_NAMED_FE(ns, zend_name, name, arg_info) ZEND_NS_RAW_FENTRY(ns, #zend_name, name, arg_info, 0) - -#define ZEND_NS_NAMED_FE(ns, zend_name, name, arg_info) ZEND_NS_FENTRY(ns, zend_name, name, arg_info, 0) -#define ZEND_NS_FE(ns, name, arg_info) ZEND_NS_FENTRY(ns, name, ZEND_FN(name), arg_info, 0) -#define ZEND_NS_DEP_FE(ns, name, arg_info) ZEND_NS_FENTRY(ns, name, ZEND_FN(name), arg_info, ZEND_ACC_DEPRECATED) -#define ZEND_NS_FALIAS(ns, name, alias, arg_info) ZEND_NS_FENTRY(ns, name, ZEND_FN(alias), arg_info, 0) -#define ZEND_NS_DEP_FALIAS(ns, name, alias, arg_info) ZEND_NS_FENTRY(ns, name, ZEND_FN(alias), arg_info, ZEND_ACC_DEPRECATED) - -#define ZEND_FE_END { NULL, NULL, NULL, 0, 0 } - -#define ZEND_ARG_INFO(pass_by_ref, name) { #name, 0, pass_by_ref, 0}, -#define ZEND_ARG_PASS_INFO(pass_by_ref) { NULL, 0, pass_by_ref, 0}, -#define ZEND_ARG_OBJ_INFO(pass_by_ref, name, classname, allow_null) { #name, ZEND_TYPE_ENCODE_CLASS_CONST(#classname, allow_null), pass_by_ref, 0 }, -#define ZEND_ARG_ARRAY_INFO(pass_by_ref, name, allow_null) { #name, ZEND_TYPE_ENCODE(IS_ARRAY, allow_null), pass_by_ref, 0 }, -#define ZEND_ARG_CALLABLE_INFO(pass_by_ref, name, allow_null) { #name, ZEND_TYPE_ENCODE(IS_CALLABLE, allow_null), pass_by_ref, 0 }, -#define ZEND_ARG_TYPE_INFO(pass_by_ref, name, type_hint, allow_null) { #name, ZEND_TYPE_ENCODE(type_hint, allow_null), pass_by_ref, 0 }, -#define ZEND_ARG_VARIADIC_INFO(pass_by_ref, name) { #name, 0, pass_by_ref, 1 }, -#define ZEND_ARG_VARIADIC_TYPE_INFO(pass_by_ref, name, type_hint, allow_null) { #name, ZEND_TYPE_ENCODE(type_hint, allow_null), pass_by_ref, 1 }, -#define ZEND_ARG_VARIADIC_OBJ_INFO(pass_by_ref, name, classname, allow_null) { #name, ZEND_TYPE_ENCODE_CLASS_CONST(#classname, allow_null), pass_by_ref, 1 }, - -#define ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(name, return_reference, required_num_args, class_name, allow_null) \ - static const zend_internal_arg_info name[] = { \ - { (const char*)(zend_uintptr_t)(required_num_args), ZEND_TYPE_ENCODE_CLASS_CONST(#class_name, allow_null), return_reference, 0 }, - -#define ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO(name, class_name, allow_null) \ - ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(name, 0, -1, class_name, allow_null) - -#define ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(name, return_reference, required_num_args, type, allow_null) \ - static const zend_internal_arg_info name[] = { \ - { (const char*)(zend_uintptr_t)(required_num_args), ZEND_TYPE_ENCODE(type, allow_null), return_reference, 0 }, -#define ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO(name, type, allow_null) \ - ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(name, 0, -1, type, allow_null) - -#define ZEND_BEGIN_ARG_INFO_EX(name, _unused, return_reference, required_num_args) \ - static const zend_internal_arg_info name[] = { \ - { (const char*)(zend_uintptr_t)(required_num_args), 0, return_reference, 0 }, -#define ZEND_BEGIN_ARG_INFO(name, _unused) \ - ZEND_BEGIN_ARG_INFO_EX(name, 0, ZEND_RETURN_VALUE, -1) -#define ZEND_END_ARG_INFO() }; - -/* Name macros */ -#define ZEND_MODULE_STARTUP_N(module) zm_startup_##module -#define ZEND_MODULE_SHUTDOWN_N(module) zm_shutdown_##module -#define ZEND_MODULE_ACTIVATE_N(module) zm_activate_##module -#define ZEND_MODULE_DEACTIVATE_N(module) zm_deactivate_##module -#define ZEND_MODULE_POST_ZEND_DEACTIVATE_N(module) zm_post_zend_deactivate_##module -#define ZEND_MODULE_INFO_N(module) zm_info_##module -#define ZEND_MODULE_GLOBALS_CTOR_N(module) zm_globals_ctor_##module -#define ZEND_MODULE_GLOBALS_DTOR_N(module) zm_globals_dtor_##module - -/* Declaration macros */ -#define ZEND_MODULE_STARTUP_D(module) int ZEND_MODULE_STARTUP_N(module)(INIT_FUNC_ARGS) -#define ZEND_MODULE_SHUTDOWN_D(module) int ZEND_MODULE_SHUTDOWN_N(module)(SHUTDOWN_FUNC_ARGS) -#define ZEND_MODULE_ACTIVATE_D(module) int ZEND_MODULE_ACTIVATE_N(module)(INIT_FUNC_ARGS) -#define ZEND_MODULE_DEACTIVATE_D(module) int ZEND_MODULE_DEACTIVATE_N(module)(SHUTDOWN_FUNC_ARGS) -#define ZEND_MODULE_POST_ZEND_DEACTIVATE_D(module) int ZEND_MODULE_POST_ZEND_DEACTIVATE_N(module)(void) -#define ZEND_MODULE_INFO_D(module) ZEND_COLD void ZEND_MODULE_INFO_N(module)(ZEND_MODULE_INFO_FUNC_ARGS) -#define ZEND_MODULE_GLOBALS_CTOR_D(module) void ZEND_MODULE_GLOBALS_CTOR_N(module)(zend_##module##_globals *module##_globals) -#define ZEND_MODULE_GLOBALS_DTOR_D(module) void ZEND_MODULE_GLOBALS_DTOR_N(module)(zend_##module##_globals *module##_globals) - -#define ZEND_GET_MODULE(name) \ - BEGIN_EXTERN_C()\ - ZEND_DLEXPORT zend_module_entry *get_module(void) { return &name##_module_entry; }\ - END_EXTERN_C() - -#define ZEND_BEGIN_MODULE_GLOBALS(module_name) \ - typedef struct _zend_##module_name##_globals { -#define ZEND_END_MODULE_GLOBALS(module_name) \ - } zend_##module_name##_globals; - -#ifdef ZTS - -#define ZEND_DECLARE_MODULE_GLOBALS(module_name) \ - ts_rsrc_id module_name##_globals_id; -#define ZEND_EXTERN_MODULE_GLOBALS(module_name) \ - extern ts_rsrc_id module_name##_globals_id; -#define ZEND_INIT_MODULE_GLOBALS(module_name, globals_ctor, globals_dtor) \ - ts_allocate_id(&module_name##_globals_id, sizeof(zend_##module_name##_globals), (ts_allocate_ctor) globals_ctor, (ts_allocate_dtor) globals_dtor); -#define ZEND_MODULE_GLOBALS_ACCESSOR(module_name, v) ZEND_TSRMG(module_name##_globals_id, zend_##module_name##_globals *, v) -#if ZEND_ENABLE_STATIC_TSRMLS_CACHE -#define ZEND_MODULE_GLOBALS_BULK(module_name) TSRMG_BULK_STATIC(module_name##_globals_id, zend_##module_name##_globals *) -#else -#define ZEND_MODULE_GLOBALS_BULK(module_name) TSRMG_BULK(module_name##_globals_id, zend_##module_name##_globals *) -#endif - -#else - -#define ZEND_DECLARE_MODULE_GLOBALS(module_name) \ - zend_##module_name##_globals module_name##_globals; -#define ZEND_EXTERN_MODULE_GLOBALS(module_name) \ - extern zend_##module_name##_globals module_name##_globals; -#define ZEND_INIT_MODULE_GLOBALS(module_name, globals_ctor, globals_dtor) \ - globals_ctor(&module_name##_globals); -#define ZEND_MODULE_GLOBALS_ACCESSOR(module_name, v) (module_name##_globals.v) -#define ZEND_MODULE_GLOBALS_BULK(module_name) (&module_name##_globals) - -#endif - -#define INIT_CLASS_ENTRY(class_container, class_name, functions) \ - INIT_CLASS_ENTRY_EX(class_container, class_name, sizeof(class_name)-1, functions) - -#define INIT_CLASS_ENTRY_EX(class_container, class_name, class_name_len, functions) \ - { \ - memset(&class_container, 0, sizeof(zend_class_entry)); \ - class_container.name = zend_string_init_interned(class_name, class_name_len, 1); \ - class_container.info.internal.builtin_functions = functions; \ - } - -#define INIT_CLASS_ENTRY_INIT_METHODS(class_container, functions) \ - { \ - class_container.constructor = NULL; \ - class_container.destructor = NULL; \ - class_container.clone = NULL; \ - class_container.serialize = NULL; \ - class_container.unserialize = NULL; \ - class_container.create_object = NULL; \ - class_container.get_static_method = NULL; \ - class_container.__call = NULL; \ - class_container.__callstatic = NULL; \ - class_container.__tostring = NULL; \ - class_container.__get = NULL; \ - class_container.__set = NULL; \ - class_container.__unset = NULL; \ - class_container.__isset = NULL; \ - class_container.__debugInfo = NULL; \ - class_container.serialize_func = NULL; \ - class_container.unserialize_func = NULL; \ - class_container.parent = NULL; \ - class_container.num_interfaces = 0; \ - class_container.trait_names = NULL; \ - class_container.num_traits = 0; \ - class_container.trait_aliases = NULL; \ - class_container.trait_precedences = NULL; \ - class_container.interfaces = NULL; \ - class_container.get_iterator = NULL; \ - class_container.iterator_funcs_ptr = NULL; \ - class_container.info.internal.module = NULL; \ - class_container.info.internal.builtin_functions = functions; \ - } - - -#define INIT_NS_CLASS_ENTRY(class_container, ns, class_name, functions) \ - INIT_CLASS_ENTRY(class_container, ZEND_NS_NAME(ns, class_name), functions) - -#define CE_STATIC_MEMBERS(ce) \ - ((zval*)ZEND_MAP_PTR_GET((ce)->static_members_table)) - -#define ZEND_FCI_INITIALIZED(fci) ((fci).size != 0) - -ZEND_API int zend_next_free_module(void); - -BEGIN_EXTERN_C() -ZEND_API int _zend_get_parameters_array_ex(int param_count, zval *argument_array); - -/* internal function to efficiently copy parameters when executing __call() */ -ZEND_API int zend_copy_parameters_array(int param_count, zval *argument_array); - -#define zend_get_parameters_array(ht, param_count, argument_array) \ - _zend_get_parameters_array_ex(param_count, argument_array) -#define zend_get_parameters_array_ex(param_count, argument_array) \ - _zend_get_parameters_array_ex(param_count, argument_array) -#define zend_parse_parameters_none() \ - (EXPECTED(ZEND_NUM_ARGS() == 0) ? SUCCESS : (zend_wrong_parameters_none_error(), FAILURE)) -#define zend_parse_parameters_none_throw() \ - (EXPECTED(ZEND_NUM_ARGS() == 0) ? SUCCESS : (zend_wrong_parameters_none_exception(), FAILURE)) - -/* Parameter parsing API -- andrei */ - -#define ZEND_PARSE_PARAMS_QUIET (1<<1) -#define ZEND_PARSE_PARAMS_THROW (1<<2) -ZEND_API int zend_parse_parameters(int num_args, const char *type_spec, ...); -ZEND_API int zend_parse_parameters_ex(int flags, int num_args, const char *type_spec, ...); -ZEND_API int zend_parse_parameters_throw(int num_args, const char *type_spec, ...); -ZEND_API char *zend_zval_type_name(const zval *arg); -ZEND_API zend_string *zend_zval_get_type(const zval *arg); - -ZEND_API int zend_parse_method_parameters(int num_args, zval *this_ptr, const char *type_spec, ...); -ZEND_API int zend_parse_method_parameters_ex(int flags, int num_args, zval *this_ptr, const char *type_spec, ...); - -ZEND_API int zend_parse_parameter(int flags, int arg_num, zval *arg, const char *spec, ...); - -/* End of parameter parsing API -- andrei */ - -ZEND_API int zend_register_functions(zend_class_entry *scope, const zend_function_entry *functions, HashTable *function_table, int type); -ZEND_API void zend_unregister_functions(const zend_function_entry *functions, int count, HashTable *function_table); -ZEND_API int zend_startup_module(zend_module_entry *module_entry); -ZEND_API zend_module_entry* zend_register_internal_module(zend_module_entry *module_entry); -ZEND_API zend_module_entry* zend_register_module_ex(zend_module_entry *module); -ZEND_API int zend_startup_module_ex(zend_module_entry *module); -ZEND_API int zend_startup_modules(void); -ZEND_API void zend_collect_module_handlers(void); -ZEND_API void zend_destroy_modules(void); -ZEND_API void zend_check_magic_method_implementation(const zend_class_entry *ce, const zend_function *fptr, int error_type); - -ZEND_API zend_class_entry *zend_register_internal_class(zend_class_entry *class_entry); -ZEND_API zend_class_entry *zend_register_internal_class_ex(zend_class_entry *class_entry, zend_class_entry *parent_ce); -ZEND_API zend_class_entry *zend_register_internal_interface(zend_class_entry *orig_class_entry); -ZEND_API void zend_class_implements(zend_class_entry *class_entry, int num_interfaces, ...); - -ZEND_API int zend_register_class_alias_ex(const char *name, size_t name_len, zend_class_entry *ce, int persistent); - -#define zend_register_class_alias(name, ce) \ - zend_register_class_alias_ex(name, sizeof(name)-1, ce, 1) -#define zend_register_ns_class_alias(ns, name, ce) \ - zend_register_class_alias_ex(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name))-1, ce, 1) - -ZEND_API int zend_disable_function(char *function_name, size_t function_name_length); -ZEND_API int zend_disable_class(char *class_name, size_t class_name_length); - -ZEND_API ZEND_COLD void zend_wrong_param_count(void); - -#define IS_CALLABLE_CHECK_SYNTAX_ONLY (1<<0) -#define IS_CALLABLE_CHECK_NO_ACCESS (1<<1) -#define IS_CALLABLE_CHECK_IS_STATIC (1<<2) -#define IS_CALLABLE_CHECK_SILENT (1<<3) - -#define IS_CALLABLE_STRICT (IS_CALLABLE_CHECK_IS_STATIC) - -ZEND_API void zend_release_fcall_info_cache(zend_fcall_info_cache *fcc); -ZEND_API zend_string *zend_get_callable_name_ex(zval *callable, zend_object *object); -ZEND_API zend_string *zend_get_callable_name(zval *callable); -ZEND_API zend_bool zend_is_callable_ex(zval *callable, zend_object *object, uint32_t check_flags, zend_string **callable_name, zend_fcall_info_cache *fcc, char **error); -ZEND_API zend_bool zend_is_callable(zval *callable, uint32_t check_flags, zend_string **callable_name); -ZEND_API zend_bool zend_make_callable(zval *callable, zend_string **callable_name); -ZEND_API const char *zend_get_module_version(const char *module_name); -ZEND_API int zend_get_module_started(const char *module_name); - -ZEND_API int zend_declare_typed_property(zend_class_entry *ce, zend_string *name, zval *property, int access_type, zend_string *doc_comment, zend_type type); - -ZEND_API int zend_declare_property_ex(zend_class_entry *ce, zend_string *name, zval *property, int access_type, zend_string *doc_comment); -ZEND_API int zend_declare_property(zend_class_entry *ce, const char *name, size_t name_length, zval *property, int access_type); -ZEND_API int zend_declare_property_null(zend_class_entry *ce, const char *name, size_t name_length, int access_type); -ZEND_API int zend_declare_property_bool(zend_class_entry *ce, const char *name, size_t name_length, zend_long value, int access_type); -ZEND_API int zend_declare_property_long(zend_class_entry *ce, const char *name, size_t name_length, zend_long value, int access_type); -ZEND_API int zend_declare_property_double(zend_class_entry *ce, const char *name, size_t name_length, double value, int access_type); -ZEND_API int zend_declare_property_string(zend_class_entry *ce, const char *name, size_t name_length, const char *value, int access_type); -ZEND_API int zend_declare_property_stringl(zend_class_entry *ce, const char *name, size_t name_length, const char *value, size_t value_len, int access_type); - -ZEND_API int zend_declare_class_constant_ex(zend_class_entry *ce, zend_string *name, zval *value, int access_type, zend_string *doc_comment); -ZEND_API int zend_declare_class_constant(zend_class_entry *ce, const char *name, size_t name_length, zval *value); -ZEND_API int zend_declare_class_constant_null(zend_class_entry *ce, const char *name, size_t name_length); -ZEND_API int zend_declare_class_constant_long(zend_class_entry *ce, const char *name, size_t name_length, zend_long value); -ZEND_API int zend_declare_class_constant_bool(zend_class_entry *ce, const char *name, size_t name_length, zend_bool value); -ZEND_API int zend_declare_class_constant_double(zend_class_entry *ce, const char *name, size_t name_length, double value); -ZEND_API int zend_declare_class_constant_stringl(zend_class_entry *ce, const char *name, size_t name_length, const char *value, size_t value_length); -ZEND_API int zend_declare_class_constant_string(zend_class_entry *ce, const char *name, size_t name_length, const char *value); - -ZEND_API int zend_update_class_constants(zend_class_entry *class_type); - -ZEND_API void zend_update_property_ex(zend_class_entry *scope, zval *object, zend_string *name, zval *value); -ZEND_API void zend_update_property(zend_class_entry *scope, zval *object, const char *name, size_t name_length, zval *value); -ZEND_API void zend_update_property_null(zend_class_entry *scope, zval *object, const char *name, size_t name_length); -ZEND_API void zend_update_property_bool(zend_class_entry *scope, zval *object, const char *name, size_t name_length, zend_long value); -ZEND_API void zend_update_property_long(zend_class_entry *scope, zval *object, const char *name, size_t name_length, zend_long value); -ZEND_API void zend_update_property_double(zend_class_entry *scope, zval *object, const char *name, size_t name_length, double value); -ZEND_API void zend_update_property_str(zend_class_entry *scope, zval *object, const char *name, size_t name_length, zend_string *value); -ZEND_API void zend_update_property_string(zend_class_entry *scope, zval *object, const char *name, size_t name_length, const char *value); -ZEND_API void zend_update_property_stringl(zend_class_entry *scope, zval *object, const char *name, size_t name_length, const char *value, size_t value_length); -ZEND_API void zend_unset_property(zend_class_entry *scope, zval *object, const char *name, size_t name_length); - -ZEND_API int zend_update_static_property_ex(zend_class_entry *scope, zend_string *name, zval *value); -ZEND_API int zend_update_static_property(zend_class_entry *scope, const char *name, size_t name_length, zval *value); -ZEND_API int zend_update_static_property_null(zend_class_entry *scope, const char *name, size_t name_length); -ZEND_API int zend_update_static_property_bool(zend_class_entry *scope, const char *name, size_t name_length, zend_long value); -ZEND_API int zend_update_static_property_long(zend_class_entry *scope, const char *name, size_t name_length, zend_long value); -ZEND_API int zend_update_static_property_double(zend_class_entry *scope, const char *name, size_t name_length, double value); -ZEND_API int zend_update_static_property_string(zend_class_entry *scope, const char *name, size_t name_length, const char *value); -ZEND_API int zend_update_static_property_stringl(zend_class_entry *scope, const char *name, size_t name_length, const char *value, size_t value_length); - -ZEND_API zval *zend_read_property_ex(zend_class_entry *scope, zval *object, zend_string *name, zend_bool silent, zval *rv); -ZEND_API zval *zend_read_property(zend_class_entry *scope, zval *object, const char *name, size_t name_length, zend_bool silent, zval *rv); - -ZEND_API zval *zend_read_static_property_ex(zend_class_entry *scope, zend_string *name, zend_bool silent); -ZEND_API zval *zend_read_static_property(zend_class_entry *scope, const char *name, size_t name_length, zend_bool silent); - -ZEND_API char *zend_get_type_by_const(int type); - -#define ZEND_THIS (&EX(This)) - -#define getThis() ((Z_TYPE_P(ZEND_THIS) == IS_OBJECT) ? ZEND_THIS : NULL) -#define ZEND_IS_METHOD_CALL() (EX(func)->common.scope != NULL) - -#define WRONG_PARAM_COUNT ZEND_WRONG_PARAM_COUNT() -#define WRONG_PARAM_COUNT_WITH_RETVAL(ret) ZEND_WRONG_PARAM_COUNT_WITH_RETVAL(ret) -#define ARG_COUNT(dummy) EX_NUM_ARGS() -#define ZEND_NUM_ARGS() EX_NUM_ARGS() -#define ZEND_WRONG_PARAM_COUNT() { zend_wrong_param_count(); return; } -#define ZEND_WRONG_PARAM_COUNT_WITH_RETVAL(ret) { zend_wrong_param_count(); return ret; } - -#ifndef ZEND_WIN32 -#define DLEXPORT -#endif - -#define array_init(arg) ZVAL_ARR((arg), zend_new_array(0)) -#define array_init_size(arg, size) ZVAL_ARR((arg), zend_new_array(size)) -ZEND_API int object_init(zval *arg); -ZEND_API int object_init_ex(zval *arg, zend_class_entry *ce); -ZEND_API int object_and_properties_init(zval *arg, zend_class_entry *ce, HashTable *properties); -ZEND_API void object_properties_init(zend_object *object, zend_class_entry *class_type); -ZEND_API void object_properties_init_ex(zend_object *object, HashTable *properties); -ZEND_API void object_properties_load(zend_object *object, HashTable *properties); - -ZEND_API void zend_merge_properties(zval *obj, HashTable *properties); - -ZEND_API int add_assoc_long_ex(zval *arg, const char *key, size_t key_len, zend_long n); -ZEND_API int add_assoc_null_ex(zval *arg, const char *key, size_t key_len); -ZEND_API int add_assoc_bool_ex(zval *arg, const char *key, size_t key_len, int b); -ZEND_API int add_assoc_resource_ex(zval *arg, const char *key, size_t key_len, zend_resource *r); -ZEND_API int add_assoc_double_ex(zval *arg, const char *key, size_t key_len, double d); -ZEND_API int add_assoc_str_ex(zval *arg, const char *key, size_t key_len, zend_string *str); -ZEND_API int add_assoc_string_ex(zval *arg, const char *key, size_t key_len, const char *str); -ZEND_API int add_assoc_stringl_ex(zval *arg, const char *key, size_t key_len, const char *str, size_t length); -ZEND_API int add_assoc_zval_ex(zval *arg, const char *key, size_t key_len, zval *value); - -#define add_assoc_long(__arg, __key, __n) add_assoc_long_ex(__arg, __key, strlen(__key), __n) -#define add_assoc_null(__arg, __key) add_assoc_null_ex(__arg, __key, strlen(__key)) -#define add_assoc_bool(__arg, __key, __b) add_assoc_bool_ex(__arg, __key, strlen(__key), __b) -#define add_assoc_resource(__arg, __key, __r) add_assoc_resource_ex(__arg, __key, strlen(__key), __r) -#define add_assoc_double(__arg, __key, __d) add_assoc_double_ex(__arg, __key, strlen(__key), __d) -#define add_assoc_str(__arg, __key, __str) add_assoc_str_ex(__arg, __key, strlen(__key), __str) -#define add_assoc_string(__arg, __key, __str) add_assoc_string_ex(__arg, __key, strlen(__key), __str) -#define add_assoc_stringl(__arg, __key, __str, __length) add_assoc_stringl_ex(__arg, __key, strlen(__key), __str, __length) -#define add_assoc_zval(__arg, __key, __value) add_assoc_zval_ex(__arg, __key, strlen(__key), __value) - -ZEND_API int add_index_long(zval *arg, zend_ulong index, zend_long n); -ZEND_API int add_index_null(zval *arg, zend_ulong index); -ZEND_API int add_index_bool(zval *arg, zend_ulong index, int b); -ZEND_API int add_index_resource(zval *arg, zend_ulong index, zend_resource *r); -ZEND_API int add_index_double(zval *arg, zend_ulong index, double d); -ZEND_API int add_index_str(zval *arg, zend_ulong index, zend_string *str); -ZEND_API int add_index_string(zval *arg, zend_ulong index, const char *str); -ZEND_API int add_index_stringl(zval *arg, zend_ulong index, const char *str, size_t length); - -static zend_always_inline int add_index_zval(zval *arg, zend_ulong index, zval *value) -{ - return zend_hash_index_update(Z_ARRVAL_P(arg), index, value) ? SUCCESS : FAILURE; -} - -ZEND_API int add_next_index_long(zval *arg, zend_long n); -ZEND_API int add_next_index_null(zval *arg); -ZEND_API int add_next_index_bool(zval *arg, int b); -ZEND_API int add_next_index_resource(zval *arg, zend_resource *r); -ZEND_API int add_next_index_double(zval *arg, double d); -ZEND_API int add_next_index_str(zval *arg, zend_string *str); -ZEND_API int add_next_index_string(zval *arg, const char *str); -ZEND_API int add_next_index_stringl(zval *arg, const char *str, size_t length); - -static zend_always_inline int add_next_index_zval(zval *arg, zval *value) -{ - return zend_hash_next_index_insert(Z_ARRVAL_P(arg), value) ? SUCCESS : FAILURE; -} - -ZEND_API int array_set_zval_key(HashTable *ht, zval *key, zval *value); - -ZEND_API int add_property_long_ex(zval *arg, const char *key, size_t key_len, zend_long l); -ZEND_API int add_property_null_ex(zval *arg, const char *key, size_t key_len); -ZEND_API int add_property_bool_ex(zval *arg, const char *key, size_t key_len, zend_long b); -ZEND_API int add_property_resource_ex(zval *arg, const char *key, size_t key_len, zend_resource *r); -ZEND_API int add_property_double_ex(zval *arg, const char *key, size_t key_len, double d); -ZEND_API int add_property_str_ex(zval *arg, const char *key, size_t key_len, zend_string *str); -ZEND_API int add_property_string_ex(zval *arg, const char *key, size_t key_len, const char *str); -ZEND_API int add_property_stringl_ex(zval *arg, const char *key, size_t key_len, const char *str, size_t length); -ZEND_API int add_property_zval_ex(zval *arg, const char *key, size_t key_len, zval *value); - -#define add_property_long(__arg, __key, __n) add_property_long_ex(__arg, __key, strlen(__key), __n) -#define add_property_null(__arg, __key) add_property_null_ex(__arg, __key, strlen(__key)) -#define add_property_bool(__arg, __key, __b) add_property_bool_ex(__arg, __key, strlen(__key), __b) -#define add_property_resource(__arg, __key, __r) add_property_resource_ex(__arg, __key, strlen(__key), __r) -#define add_property_double(__arg, __key, __d) add_property_double_ex(__arg, __key, strlen(__key), __d) -#define add_property_str(__arg, __key, __str) add_property_str_ex(__arg, __key, strlen(__key), __str) -#define add_property_string(__arg, __key, __str) add_property_string_ex(__arg, __key, strlen(__key), __str) -#define add_property_stringl(__arg, __key, __str, __length) add_property_stringl_ex(__arg, __key, strlen(__key), __str, __length) -#define add_property_zval(__arg, __key, __value) add_property_zval_ex(__arg, __key, strlen(__key), __value) - - -ZEND_API int _call_user_function_ex(zval *object, zval *function_name, zval *retval_ptr, uint32_t param_count, zval params[], int no_separation); - -#define call_user_function(function_table, object, function_name, retval_ptr, param_count, params) \ - _call_user_function_ex(object, function_name, retval_ptr, param_count, params, 1) -#define call_user_function_ex(function_table, object, function_name, retval_ptr, param_count, params, no_separation, symbol_table) \ - _call_user_function_ex(object, function_name, retval_ptr, param_count, params, no_separation) - -ZEND_API extern const zend_fcall_info empty_fcall_info; -ZEND_API extern const zend_fcall_info_cache empty_fcall_info_cache; - -/** Build zend_call_info/cache from a zval* - * - * Caller is responsible to provide a return value (fci->retval), otherwise the we will crash. - * In order to pass parameters the following members need to be set: - * fci->param_count = 0; - * fci->params = NULL; - * The callable_name argument may be NULL. - * Set check_flags to IS_CALLABLE_STRICT for every new usage! - */ -ZEND_API int zend_fcall_info_init(zval *callable, uint32_t check_flags, zend_fcall_info *fci, zend_fcall_info_cache *fcc, zend_string **callable_name, char **error); - -/** Clear arguments connected with zend_fcall_info *fci - * If free_mem is not zero then the params array gets free'd as well - */ -ZEND_API void zend_fcall_info_args_clear(zend_fcall_info *fci, int free_mem); - -/** Save current arguments from zend_fcall_info *fci - * params array will be set to NULL - */ -ZEND_API void zend_fcall_info_args_save(zend_fcall_info *fci, int *param_count, zval **params); - -/** Free arguments connected with zend_fcall_info *fci andset back saved ones. - */ -ZEND_API void zend_fcall_info_args_restore(zend_fcall_info *fci, int param_count, zval *params); - -/** Set or clear the arguments in the zend_call_info struct taking care of - * refcount. If args is NULL and arguments are set then those are cleared. - */ -ZEND_API int zend_fcall_info_args(zend_fcall_info *fci, zval *args); -ZEND_API int zend_fcall_info_args_ex(zend_fcall_info *fci, zend_function *func, zval *args); - -/** Set arguments in the zend_fcall_info struct taking care of refcount. - * If argc is 0 the arguments which are set will be cleared, else pass - * a variable amount of zval** arguments. - */ -ZEND_API int zend_fcall_info_argp(zend_fcall_info *fci, int argc, zval *argv); - -/** Set arguments in the zend_fcall_info struct taking care of refcount. - * If argc is 0 the arguments which are set will be cleared, else pass - * a variable amount of zval** arguments. - */ -ZEND_API int zend_fcall_info_argv(zend_fcall_info *fci, int argc, va_list *argv); - -/** Set arguments in the zend_fcall_info struct taking care of refcount. - * If argc is 0 the arguments which are set will be cleared, else pass - * a variable amount of zval** arguments. - */ -ZEND_API int zend_fcall_info_argn(zend_fcall_info *fci, int argc, ...); - -/** Call a function using information created by zend_fcall_info_init()/args(). - * If args is given then those replace the argument info in fci is temporarily. - */ -ZEND_API int zend_fcall_info_call(zend_fcall_info *fci, zend_fcall_info_cache *fcc, zval *retval, zval *args); - -ZEND_API int zend_call_function(zend_fcall_info *fci, zend_fcall_info_cache *fci_cache); - -ZEND_API int zend_set_hash_symbol(zval *symbol, const char *name, int name_length, zend_bool is_ref, int num_symbol_tables, ...); - -ZEND_API int zend_delete_global_variable(zend_string *name); - -ZEND_API zend_array *zend_rebuild_symbol_table(void); -ZEND_API void zend_attach_symbol_table(zend_execute_data *execute_data); -ZEND_API void zend_detach_symbol_table(zend_execute_data *execute_data); -ZEND_API int zend_set_local_var(zend_string *name, zval *value, int force); -ZEND_API int zend_set_local_var_str(const char *name, size_t len, zval *value, int force); - -static zend_always_inline int zend_forbid_dynamic_call(const char *func_name) -{ - zend_execute_data *ex = EG(current_execute_data); - ZEND_ASSERT(ex != NULL && ex->func != NULL); - - if (ZEND_CALL_INFO(ex) & ZEND_CALL_DYNAMIC) { - zend_error(E_WARNING, "Cannot call %s dynamically", func_name); - return FAILURE; - } - - return SUCCESS; -} - -ZEND_API zend_string *zend_find_alias_name(zend_class_entry *ce, zend_string *name); -ZEND_API zend_string *zend_resolve_method_name(zend_class_entry *ce, zend_function *f); - -ZEND_API ZEND_COLD const char *zend_get_object_type(const zend_class_entry *ce); - -ZEND_API zend_bool zend_is_iterable(zval *iterable); - -ZEND_API zend_bool zend_is_countable(zval *countable); - -ZEND_API ZEND_FUNCTION(display_disabled_function); -END_EXTERN_C() - -#if ZEND_DEBUG -#define CHECK_ZVAL_STRING(str) \ - if (ZSTR_VAL(str)[ZSTR_LEN(str)] != '\0') { zend_error(E_WARNING, "String is not zero-terminated (%s)", ZSTR_VAL(str)); } -#define CHECK_ZVAL_STRING_REL(str) \ - if (ZSTR_VAL(str)[ZSTR_LEN(str)] != '\0') { zend_error(E_WARNING, "String is not zero-terminated (%s) (source: %s:%d)", ZSTR_VAL(str) ZEND_FILE_LINE_RELAY_CC); } -#else -#define CHECK_ZVAL_STRING(z) -#define CHECK_ZVAL_STRING_REL(z) -#endif - -#define CHECK_ZVAL_NULL_PATH(p) (Z_STRLEN_P(p) != strlen(Z_STRVAL_P(p))) -#define CHECK_NULL_PATH(p, l) (strlen(p) != (size_t)(l)) - -#define ZVAL_STRINGL(z, s, l) do { \ - ZVAL_NEW_STR(z, zend_string_init(s, l, 0)); \ - } while (0) - -#define ZVAL_STRING(z, s) do { \ - const char *_s = (s); \ - ZVAL_STRINGL(z, _s, strlen(_s)); \ - } while (0) - -#define ZVAL_EMPTY_STRING(z) do { \ - ZVAL_INTERNED_STR(z, ZSTR_EMPTY_ALLOC()); \ - } while (0) - -#define ZVAL_PSTRINGL(z, s, l) do { \ - ZVAL_NEW_STR(z, zend_string_init(s, l, 1)); \ - } while (0) - -#define ZVAL_PSTRING(z, s) do { \ - const char *_s = (s); \ - ZVAL_PSTRINGL(z, _s, strlen(_s)); \ - } while (0) - -#define ZVAL_EMPTY_PSTRING(z) do { \ - ZVAL_PSTRINGL(z, "", 0); \ - } while (0) - -#define ZVAL_ZVAL(z, zv, copy, dtor) do { \ - zval *__z = (z); \ - zval *__zv = (zv); \ - if (EXPECTED(!Z_ISREF_P(__zv))) { \ - if (copy && !dtor) { \ - ZVAL_COPY(__z, __zv); \ - } else { \ - ZVAL_COPY_VALUE(__z, __zv); \ - } \ - } else { \ - ZVAL_COPY(__z, Z_REFVAL_P(__zv)); \ - if (dtor || !copy) { \ - zval_ptr_dtor(__zv); \ - } \ - } \ - } while (0) - -#define RETVAL_BOOL(b) ZVAL_BOOL(return_value, b) -#define RETVAL_NULL() ZVAL_NULL(return_value) -#define RETVAL_LONG(l) ZVAL_LONG(return_value, l) -#define RETVAL_DOUBLE(d) ZVAL_DOUBLE(return_value, d) -#define RETVAL_STR(s) ZVAL_STR(return_value, s) -#define RETVAL_INTERNED_STR(s) ZVAL_INTERNED_STR(return_value, s) -#define RETVAL_NEW_STR(s) ZVAL_NEW_STR(return_value, s) -#define RETVAL_STR_COPY(s) ZVAL_STR_COPY(return_value, s) -#define RETVAL_STRING(s) ZVAL_STRING(return_value, s) -#define RETVAL_STRINGL(s, l) ZVAL_STRINGL(return_value, s, l) -#define RETVAL_EMPTY_STRING() ZVAL_EMPTY_STRING(return_value) -#define RETVAL_RES(r) ZVAL_RES(return_value, r) -#define RETVAL_ARR(r) ZVAL_ARR(return_value, r) -#define RETVAL_EMPTY_ARRAY() ZVAL_EMPTY_ARRAY(return_value) -#define RETVAL_OBJ(r) ZVAL_OBJ(return_value, r) -#define RETVAL_ZVAL(zv, copy, dtor) ZVAL_ZVAL(return_value, zv, copy, dtor) -#define RETVAL_FALSE ZVAL_FALSE(return_value) -#define RETVAL_TRUE ZVAL_TRUE(return_value) - -#define RETURN_BOOL(b) { RETVAL_BOOL(b); return; } -#define RETURN_NULL() { RETVAL_NULL(); return;} -#define RETURN_LONG(l) { RETVAL_LONG(l); return; } -#define RETURN_DOUBLE(d) { RETVAL_DOUBLE(d); return; } -#define RETURN_STR(s) { RETVAL_STR(s); return; } -#define RETURN_INTERNED_STR(s) { RETVAL_INTERNED_STR(s); return; } -#define RETURN_NEW_STR(s) { RETVAL_NEW_STR(s); return; } -#define RETURN_STR_COPY(s) { RETVAL_STR_COPY(s); return; } -#define RETURN_STRING(s) { RETVAL_STRING(s); return; } -#define RETURN_STRINGL(s, l) { RETVAL_STRINGL(s, l); return; } -#define RETURN_EMPTY_STRING() { RETVAL_EMPTY_STRING(); return; } -#define RETURN_RES(r) { RETVAL_RES(r); return; } -#define RETURN_ARR(r) { RETVAL_ARR(r); return; } -#define RETURN_EMPTY_ARRAY() { RETVAL_EMPTY_ARRAY(); return; } -#define RETURN_OBJ(r) { RETVAL_OBJ(r); return; } -#define RETURN_ZVAL(zv, copy, dtor) { RETVAL_ZVAL(zv, copy, dtor); return; } -#define RETURN_FALSE { RETVAL_FALSE; return; } -#define RETURN_TRUE { RETVAL_TRUE; return; } - -#define HASH_OF(p) (Z_TYPE_P(p)==IS_ARRAY ? Z_ARRVAL_P(p) : ((Z_TYPE_P(p)==IS_OBJECT ? Z_OBJ_HT_P(p)->get_properties((p)) : NULL))) -#define ZVAL_IS_NULL(z) (Z_TYPE_P(z) == IS_NULL) - -/* For compatibility */ -#define ZEND_MINIT ZEND_MODULE_STARTUP_N -#define ZEND_MSHUTDOWN ZEND_MODULE_SHUTDOWN_N -#define ZEND_RINIT ZEND_MODULE_ACTIVATE_N -#define ZEND_RSHUTDOWN ZEND_MODULE_DEACTIVATE_N -#define ZEND_MINFO ZEND_MODULE_INFO_N -#define ZEND_GINIT(module) ((void (*)(void*))(ZEND_MODULE_GLOBALS_CTOR_N(module))) -#define ZEND_GSHUTDOWN(module) ((void (*)(void*))(ZEND_MODULE_GLOBALS_DTOR_N(module))) - -#define ZEND_MINIT_FUNCTION ZEND_MODULE_STARTUP_D -#define ZEND_MSHUTDOWN_FUNCTION ZEND_MODULE_SHUTDOWN_D -#define ZEND_RINIT_FUNCTION ZEND_MODULE_ACTIVATE_D -#define ZEND_RSHUTDOWN_FUNCTION ZEND_MODULE_DEACTIVATE_D -#define ZEND_MINFO_FUNCTION ZEND_MODULE_INFO_D -#define ZEND_GINIT_FUNCTION ZEND_MODULE_GLOBALS_CTOR_D -#define ZEND_GSHUTDOWN_FUNCTION ZEND_MODULE_GLOBALS_DTOR_D - -/* May modify arg in-place. Will free arg in failure case (and take ownership in success case). - * Prefer using the ZEND_TRY_ASSIGN_* macros over these APIs. */ -ZEND_API int zend_try_assign_typed_ref_ex(zend_reference *ref, zval *zv, zend_bool strict); -ZEND_API int zend_try_assign_typed_ref(zend_reference *ref, zval *zv); - -ZEND_API int zend_try_assign_typed_ref_null(zend_reference *ref); -ZEND_API int zend_try_assign_typed_ref_bool(zend_reference *ref, zend_bool val); -ZEND_API int zend_try_assign_typed_ref_long(zend_reference *ref, zend_long lval); -ZEND_API int zend_try_assign_typed_ref_double(zend_reference *ref, double dval); -ZEND_API int zend_try_assign_typed_ref_empty_string(zend_reference *ref); -ZEND_API int zend_try_assign_typed_ref_str(zend_reference *ref, zend_string *str); -ZEND_API int zend_try_assign_typed_ref_string(zend_reference *ref, const char *string); -ZEND_API int zend_try_assign_typed_ref_stringl(zend_reference *ref, const char *string, size_t len); -ZEND_API int zend_try_assign_typed_ref_arr(zend_reference *ref, zend_array *arr); -ZEND_API int zend_try_assign_typed_ref_res(zend_reference *ref, zend_resource *res); -ZEND_API int zend_try_assign_typed_ref_zval(zend_reference *ref, zval *zv); -ZEND_API int zend_try_assign_typed_ref_zval_ex(zend_reference *ref, zval *zv, zend_bool strict); - -#define _ZEND_TRY_ASSIGN_NULL(zv, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_null(ref); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_NULL(_zv); \ -} while (0) - -#define ZEND_TRY_ASSIGN_NULL(zv) \ - _ZEND_TRY_ASSIGN_NULL(zv, 0) - -#define ZEND_TRY_ASSIGN_REF_NULL(zv) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_NULL(zv, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_FALSE(zv, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_bool(ref, 0); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_FALSE(_zv); \ -} while (0) - -#define ZEND_TRY_ASSIGN_FALSE(zv) \ - _ZEND_TRY_ASSIGN_FALSE(zv, 0) - -#define ZEND_TRY_ASSIGN_REF_FALSE(zv) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_FALSE(zv, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_TRUE(zv, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_bool(ref, 1); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_TRUE(_zv); \ -} while (0) - -#define ZEND_TRY_ASSIGN_TRUE(zv) \ - _ZEND_TRY_ASSIGN_TRUE(zv, 0) - -#define ZEND_TRY_ASSIGN_REF_TRUE(zv) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_TRUE(zv, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_BOOL(zv, bval, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_bool(ref, 1); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_BOOL(_zv, bval); \ -} while (0) - -#define ZEND_TRY_ASSIGN_BOOL(zv, bval) \ - _ZEND_TRY_ASSIGN_BOOL(zv, bval, 0) - -#define ZEND_TRY_ASSIGN_REF_BOOL(zv, bval) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_BOOL(zv, bval, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_LONG(zv, lval, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_long(ref, lval); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_LONG(_zv, lval); \ -} while (0) - -#define ZEND_TRY_ASSIGN_LONG(zv, lval) \ - _ZEND_TRY_ASSIGN_LONG(zv, lval, 0) - -#define ZEND_TRY_ASSIGN_REF_LONG(zv, lval) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_LONG(zv, lval, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_DOUBLE(zv, dval, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_double(ref, dval); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_DOUBLE(_zv, dval); \ -} while (0) - -#define ZEND_TRY_ASSIGN_DOUBLE(zv, dval) \ - _ZEND_TRY_ASSIGN_DOUBLE(zv, dval, 0) - -#define ZEND_TRY_ASSIGN_REF_DOUBLE(zv, dval) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_DOUBLE(zv, dval, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_EMPTY_STRING(zv, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_empty_string(ref); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_EMPTY_STRING(_zv); \ -} while (0) - -#define ZEND_TRY_ASSIGN_EMPTY_STRING(zv) \ - _ZEND_TRY_ASSIGN_EMPTY_STRING(zv, 0) - -#define ZEND_TRY_ASSIGN_REF_EMPTY_STRING(zv) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_EMPTY_STRING(zv, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_STR(zv, str, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_str(ref, str); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_STR(_zv, str); \ -} while (0) - -#define ZEND_TRY_ASSIGN_STR(zv, str) \ - _ZEND_TRY_ASSIGN_STR(zv, str, 0) - -#define ZEND_TRY_ASSIGN_REF_STR(zv, str) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_STR(zv, str, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_NEW_STR(zv, str, is_str) do { \ - zval *_zv = zv; \ - if (is_str || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_str(ref, str); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_NEW_STR(_zv, str); \ -} while (0) - -#define ZEND_TRY_ASSIGN_NEW_STR(zv, str) \ - _ZEND_TRY_ASSIGN_NEW_STR(zv, str, 0) - -#define ZEND_TRY_ASSIGN_REF_NEW_STR(zv, str) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_NEW_STR(zv, str, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_STRING(zv, string, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_string(ref, string); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_STRING(_zv, string); \ -} while (0) - -#define ZEND_TRY_ASSIGN_STRING(zv, string) \ - _ZEND_TRY_ASSIGN_STRING(zv, string, 0) - -#define ZEND_TRY_ASSIGN_REF_STRING(zv, string) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_STRING(zv, string, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_STRINGL(zv, string, len, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_stringl(ref, string, len); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_STRINGL(_zv, string, len); \ -} while (0) - -#define ZEND_TRY_ASSIGN_STRINGL(zv, string, len) \ - _ZEND_TRY_ASSIGN_STRINGL(zv, string, len, 0) - -#define ZEND_TRY_ASSIGN_REF_STRINGL(zv, string, len) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_STRINGL(zv, string, len, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_ARR(zv, arr, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_arr(ref, arr); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_ARR(_zv, arr); \ -} while (0) - -#define ZEND_TRY_ASSIGN_ARR(zv, arr) \ - _ZEND_TRY_ASSIGN_ARR(zv, arr, 0) - -#define ZEND_TRY_ASSIGN_REF_ARR(zv, arr) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_ARR(zv, arr, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_RES(zv, res, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_res(ref, res); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_RES(_zv, res); \ -} while (0) - -#define ZEND_TRY_ASSIGN_RES(zv, res) \ - _ZEND_TRY_ASSIGN_RES(zv, res, 0) - -#define ZEND_TRY_ASSIGN_REF_RES(zv, res) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_RES(zv, res, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_TMP(zv, other_zv, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref(ref, other_zv); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_COPY_VALUE(_zv, other_zv); \ -} while (0) - -#define ZEND_TRY_ASSIGN_TMP(zv, other_zv) \ - _ZEND_TRY_ASSIGN_TMP(zv, other_zv, 0) - -#define ZEND_TRY_ASSIGN_REF_TMP(zv, other_zv) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_TMP(zv, other_zv, 1); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_VALUE(zv, other_zv, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_zval(ref, other_zv); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_COPY_VALUE(_zv, other_zv); \ -} while (0) - -#define ZEND_TRY_ASSIGN_VALUE(zv, other_zv) \ - _ZEND_TRY_ASSIGN_VALUE(zv, other_zv, 0) - -#define ZEND_TRY_ASSIGN_REF_VALUE(zv, other_zv) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_VALUE(zv, other_zv, 1); \ -} while (0) - -#define ZEND_TRY_ASSIGN_COPY(zv, other_zv) do { \ - Z_TRY_ADDREF_P(other_zv); \ - ZEND_TRY_ASSIGN_VALUE(zv, other_zv); \ -} while (0) - -#define ZEND_TRY_ASSIGN_REF_COPY(zv, other_zv) do { \ - Z_TRY_ADDREF_P(other_zv); \ - ZEND_TRY_ASSIGN_REF_VALUE(zv, other_zv); \ -} while (0) - -#define _ZEND_TRY_ASSIGN_VALUE_EX(zv, other_zv, strict, is_ref) do { \ - zval *_zv = zv; \ - if (is_ref || UNEXPECTED(Z_ISREF_P(_zv))) { \ - zend_reference *ref = Z_REF_P(_zv); \ - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { \ - zend_try_assign_typed_ref_zval_ex(ref, other_zv, strict); \ - break; \ - } \ - _zv = &ref->val; \ - } \ - zval_ptr_dtor(_zv); \ - ZVAL_COPY_VALUE(_zv, other_zv); \ -} while (0) - -#define ZEND_TRY_ASSIGN_VALUE_EX(zv, other_zv, strict) \ - _ZEND_TRY_ASSIGN_VALUE_EX(zv, other_zv, strict, 0) - -#define ZEND_TRY_ASSIGN_REF_VALUE_EX(zv, other_zv, strict) do { \ - ZEND_ASSERT(Z_ISREF_P(zv)); \ - _ZEND_TRY_ASSIGN_VALUE_EX(zv, other_zv, strict, 1); \ -} while (0) - -#define ZEND_TRY_ASSIGN_COPY_EX(zv, other_zv, strict) do { \ - Z_TRY_ADDREF_P(other_zv); \ - ZEND_TRY_ASSIGN_VALUE_EX(zv, other_zv, strict); \ -} while (0) - -#define ZEND_TRY_ASSIGN_REF_COPY_EX(zv, other_zv, strict) do { \ - Z_TRY_ADDREF_P(other_zv); \ - ZEND_TRY_ASSIGN_REF_VALUE_EX(zv, other_zv, strict); \ -} while (0) - -/* Initializes a reference to an empty array and returns dereferenced zval, - * or NULL if the initialization failed. */ -static zend_always_inline zval *zend_try_array_init_size(zval *zv, uint32_t size) -{ - zend_array *arr = zend_new_array(size); - - if (EXPECTED(Z_ISREF_P(zv))) { - zend_reference *ref = Z_REF_P(zv); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - if (zend_try_assign_typed_ref_arr(ref, arr) != SUCCESS) { - return NULL; - } - return &ref->val; - } - zv = &ref->val; - } - zval_ptr_dtor(zv); - ZVAL_ARR(zv, arr); - return zv; -} - -static zend_always_inline zval *zend_try_array_init(zval *zv) -{ - return zend_try_array_init_size(zv, 0); -} - -/* Fast parameter parsing API */ - -/* Fast ZPP is always enabled now; this define is left in for compatibility - * with any existing conditional compilation blocks. - */ -#define FAST_ZPP 1 - -#define Z_EXPECTED_TYPES(_) \ - _(Z_EXPECTED_LONG, "int") \ - _(Z_EXPECTED_BOOL, "bool") \ - _(Z_EXPECTED_STRING, "string") \ - _(Z_EXPECTED_ARRAY, "array") \ - _(Z_EXPECTED_FUNC, "valid callback") \ - _(Z_EXPECTED_RESOURCE, "resource") \ - _(Z_EXPECTED_PATH, "a valid path") \ - _(Z_EXPECTED_OBJECT, "object") \ - _(Z_EXPECTED_DOUBLE, "float") - -#define Z_EXPECTED_TYPE_ENUM(id, str) id, -#define Z_EXPECTED_TYPE_STR(id, str) str, - -typedef enum _zend_expected_type { - Z_EXPECTED_TYPES(Z_EXPECTED_TYPE_ENUM) - Z_EXPECTED_LAST -} zend_expected_type; - -ZEND_API ZEND_COLD int ZEND_FASTCALL zend_wrong_parameters_none_error(void); -ZEND_API ZEND_COLD int ZEND_FASTCALL zend_wrong_parameters_none_exception(void); -ZEND_API ZEND_COLD void ZEND_FASTCALL zend_wrong_parameters_count_error(int min_num_args, int max_num_args); -ZEND_API ZEND_COLD void ZEND_FASTCALL zend_wrong_parameters_count_exception(int min_num_args, int max_num_args); -ZEND_API ZEND_COLD void ZEND_FASTCALL zend_wrong_parameter_type_error(int num, zend_expected_type expected_type, zval *arg); -ZEND_API ZEND_COLD void ZEND_FASTCALL zend_wrong_parameter_type_exception(int num, zend_expected_type expected_type, zval *arg); -ZEND_API ZEND_COLD void ZEND_FASTCALL zend_wrong_parameter_class_error(int num, char *name, zval *arg); -ZEND_API ZEND_COLD void ZEND_FASTCALL zend_wrong_parameter_class_exception(int num, char *name, zval *arg); -ZEND_API ZEND_COLD void ZEND_FASTCALL zend_wrong_callback_error(int num, char *error); -ZEND_API ZEND_COLD void ZEND_FASTCALL zend_wrong_callback_deprecated(int num, char *error); -ZEND_API ZEND_COLD void ZEND_FASTCALL zend_wrong_callback_exception(int num, char *error); - -#define ZPP_ERROR_OK 0 -#define ZPP_ERROR_FAILURE 1 -#define ZPP_ERROR_WRONG_CALLBACK 2 -#define ZPP_ERROR_WRONG_CLASS 3 -#define ZPP_ERROR_WRONG_ARG 4 -#define ZPP_ERROR_WRONG_COUNT 5 - -#define ZEND_PARSE_PARAMETERS_START_EX(flags, min_num_args, max_num_args) do { \ - const int _flags = (flags); \ - int _min_num_args = (min_num_args); \ - int _max_num_args = (max_num_args); \ - int _num_args = EX_NUM_ARGS(); \ - int _i = 0; \ - zval *_real_arg, *_arg = NULL; \ - zend_expected_type _expected_type = Z_EXPECTED_LONG; \ - char *_error = NULL; \ - zend_bool _dummy; \ - zend_bool _optional = 0; \ - int _error_code = ZPP_ERROR_OK; \ - ((void)_i); \ - ((void)_real_arg); \ - ((void)_arg); \ - ((void)_expected_type); \ - ((void)_error); \ - ((void)_dummy); \ - ((void)_optional); \ - \ - do { \ - if (UNEXPECTED(_num_args < _min_num_args) || \ - (UNEXPECTED(_num_args > _max_num_args) && \ - EXPECTED(_max_num_args >= 0))) { \ - if (!(_flags & ZEND_PARSE_PARAMS_QUIET)) { \ - if (_flags & ZEND_PARSE_PARAMS_THROW) { \ - zend_wrong_parameters_count_exception(_min_num_args, _max_num_args); \ - } else { \ - zend_wrong_parameters_count_error(_min_num_args, _max_num_args); \ - } \ - } \ - _error_code = ZPP_ERROR_FAILURE; \ - break; \ - } \ - _real_arg = ZEND_CALL_ARG(execute_data, 0); - -#define ZEND_PARSE_PARAMETERS_START(min_num_args, max_num_args) \ - ZEND_PARSE_PARAMETERS_START_EX(0, min_num_args, max_num_args) - -#define ZEND_PARSE_PARAMETERS_NONE() do { \ - if (UNEXPECTED(ZEND_NUM_ARGS() != 0)) { \ - zend_wrong_parameters_none_error(); \ - return; \ - } \ - } while (0) - -#define ZEND_PARSE_PARAMETERS_END_EX(failure) \ - } while (0); \ - if (UNEXPECTED(_error_code != ZPP_ERROR_OK)) { \ - if (!(_flags & ZEND_PARSE_PARAMS_QUIET)) { \ - if (_error_code == ZPP_ERROR_WRONG_CALLBACK) { \ - if (_flags & ZEND_PARSE_PARAMS_THROW) { \ - zend_wrong_callback_exception(_i, _error); \ - } else { \ - zend_wrong_callback_error(_i, _error); \ - } \ - } else if (_error_code == ZPP_ERROR_WRONG_CLASS) { \ - if (_flags & ZEND_PARSE_PARAMS_THROW) { \ - zend_wrong_parameter_class_exception(_i, _error, _arg); \ - } else { \ - zend_wrong_parameter_class_error(_i, _error, _arg); \ - } \ - } else if (_error_code == ZPP_ERROR_WRONG_ARG) { \ - if (_flags & ZEND_PARSE_PARAMS_THROW) { \ - zend_wrong_parameter_type_exception(_i, _expected_type, _arg); \ - } else { \ - zend_wrong_parameter_type_error(_i, _expected_type, _arg); \ - } \ - } \ - } \ - failure; \ - } \ - } while (0) - -#define ZEND_PARSE_PARAMETERS_END() \ - ZEND_PARSE_PARAMETERS_END_EX(return) - -#define Z_PARAM_PROLOGUE(deref, separate) \ - ++_i; \ - ZEND_ASSERT(_i <= _min_num_args || _optional==1); \ - ZEND_ASSERT(_i > _min_num_args || _optional==0); \ - if (_optional) { \ - if (UNEXPECTED(_i >_num_args)) break; \ - } \ - _real_arg++; \ - _arg = _real_arg; \ - if (deref) { \ - if (EXPECTED(Z_ISREF_P(_arg))) { \ - _arg = Z_REFVAL_P(_arg); \ - } \ - } \ - if (separate) { \ - SEPARATE_ZVAL_NOREF(_arg); \ - } - -/* old "|" */ -#define Z_PARAM_OPTIONAL \ - _optional = 1; - -/* old "a" */ -#define Z_PARAM_ARRAY_EX2(dest, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_array(_arg, &dest, check_null, 0))) { \ - _expected_type = Z_EXPECTED_ARRAY; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_ARRAY_EX(dest, check_null, separate) \ - Z_PARAM_ARRAY_EX2(dest, check_null, separate, separate) - -#define Z_PARAM_ARRAY(dest) \ - Z_PARAM_ARRAY_EX(dest, 0, 0) - -/* old "A" */ -#define Z_PARAM_ARRAY_OR_OBJECT_EX2(dest, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_array(_arg, &dest, check_null, 1))) { \ - _expected_type = Z_EXPECTED_ARRAY; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_ARRAY_OR_OBJECT_EX(dest, check_null, separate) \ - Z_PARAM_ARRAY_OR_OBJECT_EX2(dest, check_null, separate, separate) - -#define Z_PARAM_ARRAY_OR_OBJECT(dest) \ - Z_PARAM_ARRAY_OR_OBJECT_EX(dest, 0, 0) - -/* old "b" */ -#define Z_PARAM_BOOL_EX2(dest, is_null, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_bool(_arg, &dest, &is_null, check_null))) { \ - _expected_type = Z_EXPECTED_BOOL; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_BOOL_EX(dest, is_null, check_null, separate) \ - Z_PARAM_BOOL_EX2(dest, is_null, check_null, separate, separate) - -#define Z_PARAM_BOOL(dest) \ - Z_PARAM_BOOL_EX(dest, _dummy, 0, 0) - -/* old "C" */ -#define Z_PARAM_CLASS_EX2(dest, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_class(_arg, &dest, _i, check_null))) { \ - _error_code = ZPP_ERROR_FAILURE; \ - break; \ - } - -#define Z_PARAM_CLASS_EX(dest, check_null, separate) \ - Z_PARAM_CLASS_EX2(dest, check_null, separate, separate) - -#define Z_PARAM_CLASS(dest) \ - Z_PARAM_CLASS_EX(dest, 0, 0) - -/* old "d" */ -#define Z_PARAM_DOUBLE_EX2(dest, is_null, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_double(_arg, &dest, &is_null, check_null))) { \ - _expected_type = Z_EXPECTED_DOUBLE; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_DOUBLE_EX(dest, is_null, check_null, separate) \ - Z_PARAM_DOUBLE_EX2(dest, is_null, check_null, separate, separate) - -#define Z_PARAM_DOUBLE(dest) \ - Z_PARAM_DOUBLE_EX(dest, _dummy, 0, 0) - -/* old "f" */ -#define Z_PARAM_FUNC_EX2(dest_fci, dest_fcc, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_func(_arg, &dest_fci, &dest_fcc, check_null, &_error))) { \ - if (!_error) { \ - _expected_type = Z_EXPECTED_FUNC; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } else { \ - _error_code = ZPP_ERROR_WRONG_CALLBACK; \ - break; \ - } \ - } else if (UNEXPECTED(_error != NULL)) { \ - zend_wrong_callback_deprecated(_i, _error); \ - } - -#define Z_PARAM_FUNC_EX(dest_fci, dest_fcc, check_null, separate) \ - Z_PARAM_FUNC_EX2(dest_fci, dest_fcc, check_null, separate, separate) - -#define Z_PARAM_FUNC(dest_fci, dest_fcc) \ - Z_PARAM_FUNC_EX(dest_fci, dest_fcc, 0, 0) - -/* old "h" */ -#define Z_PARAM_ARRAY_HT_EX2(dest, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_array_ht(_arg, &dest, check_null, 0, separate))) { \ - _expected_type = Z_EXPECTED_ARRAY; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_ARRAY_HT_EX(dest, check_null, separate) \ - Z_PARAM_ARRAY_HT_EX2(dest, check_null, separate, separate) - -#define Z_PARAM_ARRAY_HT(dest) \ - Z_PARAM_ARRAY_HT_EX(dest, 0, 0) - -/* old "H" */ -#define Z_PARAM_ARRAY_OR_OBJECT_HT_EX2(dest, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_array_ht(_arg, &dest, check_null, 1, separate))) { \ - _expected_type = Z_EXPECTED_ARRAY; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_ARRAY_OR_OBJECT_HT_EX(dest, check_null, separate) \ - Z_PARAM_ARRAY_OR_OBJECT_HT_EX2(dest, check_null, separate, separate) - -#define Z_PARAM_ARRAY_OR_OBJECT_HT(dest) \ - Z_PARAM_ARRAY_OR_OBJECT_HT_EX(dest, 0, 0) - -/* old "l" */ -#define Z_PARAM_LONG_EX2(dest, is_null, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_long(_arg, &dest, &is_null, check_null, 0))) { \ - _expected_type = Z_EXPECTED_LONG; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_LONG_EX(dest, is_null, check_null, separate) \ - Z_PARAM_LONG_EX2(dest, is_null, check_null, separate, separate) - -#define Z_PARAM_LONG(dest) \ - Z_PARAM_LONG_EX(dest, _dummy, 0, 0) - -/* old "L" */ -#define Z_PARAM_STRICT_LONG_EX2(dest, is_null, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_long(_arg, &dest, &is_null, check_null, 1))) { \ - _expected_type = Z_EXPECTED_LONG; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_STRICT_LONG_EX(dest, is_null, check_null, separate) \ - Z_PARAM_STRICT_LONG_EX2(dest, is_null, check_null, separate, separate) - -#define Z_PARAM_STRICT_LONG(dest) \ - Z_PARAM_STRICT_LONG_EX(dest, _dummy, 0, 0) - -/* old "o" */ -#define Z_PARAM_OBJECT_EX2(dest, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_object(_arg, &dest, NULL, check_null))) { \ - _expected_type = Z_EXPECTED_OBJECT; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_OBJECT_EX(dest, check_null, separate) \ - Z_PARAM_OBJECT_EX2(dest, check_null, separate, separate) - -#define Z_PARAM_OBJECT(dest) \ - Z_PARAM_OBJECT_EX(dest, 0, 0) - -/* old "O" */ -#define Z_PARAM_OBJECT_OF_CLASS_EX2(dest, _ce, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_object(_arg, &dest, _ce, check_null))) { \ - if (_ce) { \ - _error = ZSTR_VAL((_ce)->name); \ - _error_code = ZPP_ERROR_WRONG_CLASS; \ - break; \ - } else { \ - _expected_type = Z_EXPECTED_OBJECT; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } \ - } - -#define Z_PARAM_OBJECT_OF_CLASS_EX(dest, _ce, check_null, separate) \ - Z_PARAM_OBJECT_OF_CLASS_EX2(dest, _ce, check_null, separate, separate) - -#define Z_PARAM_OBJECT_OF_CLASS(dest, _ce) \ - Z_PARAM_OBJECT_OF_CLASS_EX(dest, _ce, 0, 0) - -/* old "p" */ -#define Z_PARAM_PATH_EX2(dest, dest_len, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_path(_arg, &dest, &dest_len, check_null))) { \ - _expected_type = Z_EXPECTED_PATH; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_PATH_EX(dest, dest_len, check_null, separate) \ - Z_PARAM_PATH_EX2(dest, dest_len, check_null, separate, separate) - -#define Z_PARAM_PATH(dest, dest_len) \ - Z_PARAM_PATH_EX(dest, dest_len, 0, 0) - -/* old "P" */ -#define Z_PARAM_PATH_STR_EX2(dest, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_path_str(_arg, &dest, check_null))) { \ - _expected_type = Z_EXPECTED_PATH; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_PATH_STR_EX(dest, check_null, separate) \ - Z_PARAM_PATH_STR_EX2(dest, check_null, separate, separate) - -#define Z_PARAM_PATH_STR(dest) \ - Z_PARAM_PATH_STR_EX(dest, 0, 0) - -/* old "r" */ -#define Z_PARAM_RESOURCE_EX2(dest, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_resource(_arg, &dest, check_null))) { \ - _expected_type = Z_EXPECTED_RESOURCE; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_RESOURCE_EX(dest, check_null, separate) \ - Z_PARAM_RESOURCE_EX2(dest, check_null, separate, separate) - -#define Z_PARAM_RESOURCE(dest) \ - Z_PARAM_RESOURCE_EX(dest, 0, 0) - -/* old "s" */ -#define Z_PARAM_STRING_EX2(dest, dest_len, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_string(_arg, &dest, &dest_len, check_null))) { \ - _expected_type = Z_EXPECTED_STRING; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_STRING_EX(dest, dest_len, check_null, separate) \ - Z_PARAM_STRING_EX2(dest, dest_len, check_null, separate, separate) - -#define Z_PARAM_STRING(dest, dest_len) \ - Z_PARAM_STRING_EX(dest, dest_len, 0, 0) - -/* old "S" */ -#define Z_PARAM_STR_EX2(dest, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - if (UNEXPECTED(!zend_parse_arg_str(_arg, &dest, check_null))) { \ - _expected_type = Z_EXPECTED_STRING; \ - _error_code = ZPP_ERROR_WRONG_ARG; \ - break; \ - } - -#define Z_PARAM_STR_EX(dest, check_null, separate) \ - Z_PARAM_STR_EX2(dest, check_null, separate, separate) - -#define Z_PARAM_STR(dest) \ - Z_PARAM_STR_EX(dest, 0, 0) - -/* old "z" */ -#define Z_PARAM_ZVAL_EX2(dest, check_null, deref, separate) \ - Z_PARAM_PROLOGUE(deref, separate); \ - zend_parse_arg_zval_deref(_arg, &dest, check_null); - -#define Z_PARAM_ZVAL_EX(dest, check_null, separate) \ - Z_PARAM_ZVAL_EX2(dest, check_null, separate, separate) - -#define Z_PARAM_ZVAL(dest) \ - Z_PARAM_ZVAL_EX(dest, 0, 0) - -/* old "z" (with dereference) */ -#define Z_PARAM_ZVAL_DEREF_EX(dest, check_null, separate) \ - Z_PARAM_PROLOGUE(1, separate); \ - zend_parse_arg_zval_deref(_arg, &dest, check_null); - -#define Z_PARAM_ZVAL_DEREF(dest) \ - Z_PARAM_ZVAL_DEREF_EX(dest, 0, 0) - -/* old "+" and "*" */ -#define Z_PARAM_VARIADIC_EX(spec, dest, dest_num, post_varargs) do { \ - int _num_varargs = _num_args - _i - (post_varargs); \ - if (EXPECTED(_num_varargs > 0)) { \ - dest = _real_arg + 1; \ - dest_num = _num_varargs; \ - _i += _num_varargs; \ - _real_arg += _num_varargs; \ - } else { \ - dest = NULL; \ - dest_num = 0; \ - } \ - } while (0); - -#define Z_PARAM_VARIADIC(spec, dest, dest_num) \ - Z_PARAM_VARIADIC_EX(spec, dest, dest_num, 0) - -/* End of new parameter parsing API */ - -/* Inlined implementations shared by new and old parameter parsing APIs */ - -ZEND_API int ZEND_FASTCALL zend_parse_arg_class(zval *arg, zend_class_entry **pce, int num, int check_null); -ZEND_API int ZEND_FASTCALL zend_parse_arg_bool_slow(zval *arg, zend_bool *dest); -ZEND_API int ZEND_FASTCALL zend_parse_arg_bool_weak(zval *arg, zend_bool *dest); -ZEND_API int ZEND_FASTCALL zend_parse_arg_long_slow(zval *arg, zend_long *dest); -ZEND_API int ZEND_FASTCALL zend_parse_arg_long_weak(zval *arg, zend_long *dest); -ZEND_API int ZEND_FASTCALL zend_parse_arg_long_cap_slow(zval *arg, zend_long *dest); -ZEND_API int ZEND_FASTCALL zend_parse_arg_long_cap_weak(zval *arg, zend_long *dest); -ZEND_API int ZEND_FASTCALL zend_parse_arg_double_slow(zval *arg, double *dest); -ZEND_API int ZEND_FASTCALL zend_parse_arg_double_weak(zval *arg, double *dest); -ZEND_API int ZEND_FASTCALL zend_parse_arg_str_slow(zval *arg, zend_string **dest); -ZEND_API int ZEND_FASTCALL zend_parse_arg_str_weak(zval *arg, zend_string **dest); - -static zend_always_inline int zend_parse_arg_bool(zval *arg, zend_bool *dest, zend_bool *is_null, int check_null) -{ - if (check_null) { - *is_null = 0; - } - if (EXPECTED(Z_TYPE_P(arg) == IS_TRUE)) { - *dest = 1; - } else if (EXPECTED(Z_TYPE_P(arg) == IS_FALSE)) { - *dest = 0; - } else if (check_null && Z_TYPE_P(arg) == IS_NULL) { - *is_null = 1; - *dest = 0; - } else { - return zend_parse_arg_bool_slow(arg, dest); - } - return 1; -} - -static zend_always_inline int zend_parse_arg_long(zval *arg, zend_long *dest, zend_bool *is_null, int check_null, int cap) -{ - if (check_null) { - *is_null = 0; - } - if (EXPECTED(Z_TYPE_P(arg) == IS_LONG)) { - *dest = Z_LVAL_P(arg); - } else if (check_null && Z_TYPE_P(arg) == IS_NULL) { - *is_null = 1; - *dest = 0; - } else if (cap) { - return zend_parse_arg_long_cap_slow(arg, dest); - } else { - return zend_parse_arg_long_slow(arg, dest); - } - return 1; -} - -static zend_always_inline int zend_parse_arg_double(zval *arg, double *dest, zend_bool *is_null, int check_null) -{ - if (check_null) { - *is_null = 0; - } - if (EXPECTED(Z_TYPE_P(arg) == IS_DOUBLE)) { - *dest = Z_DVAL_P(arg); - } else if (check_null && Z_TYPE_P(arg) == IS_NULL) { - *is_null = 1; - *dest = 0.0; - } else { - return zend_parse_arg_double_slow(arg, dest); - } - return 1; -} - -static zend_always_inline int zend_parse_arg_str(zval *arg, zend_string **dest, int check_null) -{ - if (EXPECTED(Z_TYPE_P(arg) == IS_STRING)) { - *dest = Z_STR_P(arg); - } else if (check_null && Z_TYPE_P(arg) == IS_NULL) { - *dest = NULL; - } else { - return zend_parse_arg_str_slow(arg, dest); - } - return 1; -} - -static zend_always_inline int zend_parse_arg_string(zval *arg, char **dest, size_t *dest_len, int check_null) -{ - zend_string *str; - - if (!zend_parse_arg_str(arg, &str, check_null)) { - return 0; - } - if (check_null && UNEXPECTED(!str)) { - *dest = NULL; - *dest_len = 0; - } else { - *dest = ZSTR_VAL(str); - *dest_len = ZSTR_LEN(str); - } - return 1; -} - -static zend_always_inline int zend_parse_arg_path_str(zval *arg, zend_string **dest, int check_null) -{ - if (!zend_parse_arg_str(arg, dest, check_null) || - (*dest && UNEXPECTED(CHECK_NULL_PATH(ZSTR_VAL(*dest), ZSTR_LEN(*dest))))) { - return 0; - } - return 1; -} - -static zend_always_inline int zend_parse_arg_path(zval *arg, char **dest, size_t *dest_len, int check_null) -{ - zend_string *str; - - if (!zend_parse_arg_path_str(arg, &str, check_null)) { - return 0; - } - if (check_null && UNEXPECTED(!str)) { - *dest = NULL; - *dest_len = 0; - } else { - *dest = ZSTR_VAL(str); - *dest_len = ZSTR_LEN(str); - } - return 1; -} - -static zend_always_inline int zend_parse_arg_array(zval *arg, zval **dest, int check_null, int or_object) -{ - if (EXPECTED(Z_TYPE_P(arg) == IS_ARRAY) || - (or_object && EXPECTED(Z_TYPE_P(arg) == IS_OBJECT))) { - *dest = arg; - } else if (check_null && EXPECTED(Z_TYPE_P(arg) == IS_NULL)) { - *dest = NULL; - } else { - return 0; - } - return 1; -} - -static zend_always_inline int zend_parse_arg_array_ht(zval *arg, HashTable **dest, int check_null, int or_object, int separate) -{ - if (EXPECTED(Z_TYPE_P(arg) == IS_ARRAY)) { - *dest = Z_ARRVAL_P(arg); - } else if (or_object && EXPECTED(Z_TYPE_P(arg) == IS_OBJECT)) { - if (separate - && Z_OBJ_P(arg)->properties - && UNEXPECTED(GC_REFCOUNT(Z_OBJ_P(arg)->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(Z_OBJ_P(arg)->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(Z_OBJ_P(arg)->properties); - } - Z_OBJ_P(arg)->properties = zend_array_dup(Z_OBJ_P(arg)->properties); - } - *dest = Z_OBJ_HT_P(arg)->get_properties(arg); - } else if (check_null && EXPECTED(Z_TYPE_P(arg) == IS_NULL)) { - *dest = NULL; - } else { - return 0; - } - return 1; -} - -static zend_always_inline int zend_parse_arg_object(zval *arg, zval **dest, zend_class_entry *ce, int check_null) -{ - if (EXPECTED(Z_TYPE_P(arg) == IS_OBJECT) && - (!ce || EXPECTED(instanceof_function(Z_OBJCE_P(arg), ce) != 0))) { - *dest = arg; - } else if (check_null && EXPECTED(Z_TYPE_P(arg) == IS_NULL)) { - *dest = NULL; - } else { - return 0; - } - return 1; -} - -static zend_always_inline int zend_parse_arg_resource(zval *arg, zval **dest, int check_null) -{ - if (EXPECTED(Z_TYPE_P(arg) == IS_RESOURCE)) { - *dest = arg; - } else if (check_null && EXPECTED(Z_TYPE_P(arg) == IS_NULL)) { - *dest = NULL; - } else { - return 0; - } - return 1; -} - -static zend_always_inline int zend_parse_arg_func(zval *arg, zend_fcall_info *dest_fci, zend_fcall_info_cache *dest_fcc, int check_null, char **error) -{ - if (check_null && UNEXPECTED(Z_TYPE_P(arg) == IS_NULL)) { - dest_fci->size = 0; - dest_fcc->function_handler = NULL; - *error = NULL; - } else if (UNEXPECTED(zend_fcall_info_init(arg, 0, dest_fci, dest_fcc, NULL, error) != SUCCESS)) { - return 0; - } - return 1; -} - -static zend_always_inline void zend_parse_arg_zval(zval *arg, zval **dest, int check_null) -{ - *dest = (check_null && - (UNEXPECTED(Z_TYPE_P(arg) == IS_NULL) || - (UNEXPECTED(Z_ISREF_P(arg)) && - UNEXPECTED(Z_TYPE_P(Z_REFVAL_P(arg)) == IS_NULL)))) ? NULL : arg; -} - -static zend_always_inline void zend_parse_arg_zval_deref(zval *arg, zval **dest, int check_null) -{ - *dest = (check_null && UNEXPECTED(Z_TYPE_P(arg) == IS_NULL)) ? NULL : arg; -} - -END_EXTERN_C() - -#endif /* ZEND_API_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_alloc.h b/7.4.27/mac/include/php/Zend/zend_alloc.h deleted file mode 100644 index 8bb8543..0000000 --- a/7.4.27/mac/include/php/Zend/zend_alloc.h +++ /dev/null @@ -1,407 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - | Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_ALLOC_H -#define ZEND_ALLOC_H - -#include - -#include "../TSRM/TSRM.h" -#include "zend.h" - -#ifndef ZEND_MM_ALIGNMENT -# define ZEND_MM_ALIGNMENT Z_UL(8) -# define ZEND_MM_ALIGNMENT_LOG2 Z_L(3) -#elif ZEND_MM_ALIGNMENT < 4 -# undef ZEND_MM_ALIGNMENT -# undef ZEND_MM_ALIGNMENT_LOG2 -# define ZEND_MM_ALIGNMENT Z_UL(4) -# define ZEND_MM_ALIGNMENT_LOG2 Z_L(2) -#endif - -#define ZEND_MM_ALIGNMENT_MASK ~(ZEND_MM_ALIGNMENT - 1) - -#define ZEND_MM_ALIGNED_SIZE(size) (((size) + ZEND_MM_ALIGNMENT - 1) & ZEND_MM_ALIGNMENT_MASK) - -#define ZEND_MM_ALIGNED_SIZE_EX(size, alignment) \ - (((size) + ((alignment) - 1)) & ~((alignment) - 1)) - -typedef struct _zend_leak_info { - void *addr; - size_t size; - const char *filename; - const char *orig_filename; - uint32_t lineno; - uint32_t orig_lineno; -} zend_leak_info; - -#if ZEND_DEBUG -typedef struct _zend_mm_debug_info { - size_t size; - const char *filename; - const char *orig_filename; - uint32_t lineno; - uint32_t orig_lineno; -} zend_mm_debug_info; - -# define ZEND_MM_OVERHEAD ZEND_MM_ALIGNED_SIZE(sizeof(zend_mm_debug_info)) -#else -# define ZEND_MM_OVERHEAD 0 -#endif - -BEGIN_EXTERN_C() - -ZEND_API char* ZEND_FASTCALL zend_strndup(const char *s, size_t length) ZEND_ATTRIBUTE_MALLOC; - -ZEND_API void* ZEND_FASTCALL _emalloc(size_t size ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) ZEND_ATTRIBUTE_MALLOC ZEND_ATTRIBUTE_ALLOC_SIZE(1); -ZEND_API void* ZEND_FASTCALL _safe_emalloc(size_t nmemb, size_t size, size_t offset ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) ZEND_ATTRIBUTE_MALLOC; -ZEND_API void* ZEND_FASTCALL _safe_malloc(size_t nmemb, size_t size, size_t offset) ZEND_ATTRIBUTE_MALLOC; -ZEND_API void ZEND_FASTCALL _efree(void *ptr ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC); -ZEND_API void* ZEND_FASTCALL _ecalloc(size_t nmemb, size_t size ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) ZEND_ATTRIBUTE_MALLOC ZEND_ATTRIBUTE_ALLOC_SIZE2(1,2); -ZEND_API void* ZEND_FASTCALL _erealloc(void *ptr, size_t size ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) ZEND_ATTRIBUTE_ALLOC_SIZE(2); -ZEND_API void* ZEND_FASTCALL _erealloc2(void *ptr, size_t size, size_t copy_size ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) ZEND_ATTRIBUTE_ALLOC_SIZE(2); -ZEND_API void* ZEND_FASTCALL _safe_erealloc(void *ptr, size_t nmemb, size_t size, size_t offset ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC); -ZEND_API void* ZEND_FASTCALL _safe_realloc(void *ptr, size_t nmemb, size_t size, size_t offset); -ZEND_API char* ZEND_FASTCALL _estrdup(const char *s ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) ZEND_ATTRIBUTE_MALLOC; -ZEND_API char* ZEND_FASTCALL _estrndup(const char *s, size_t length ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) ZEND_ATTRIBUTE_MALLOC; -ZEND_API size_t ZEND_FASTCALL _zend_mem_block_size(void *ptr ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC); - -#include "zend_alloc_sizes.h" - -/* _emalloc() & _efree() specialization */ -#if !ZEND_DEBUG && defined(HAVE_BUILTIN_CONSTANT_P) - -# define _ZEND_BIN_ALLOCATOR_DEF(_num, _size, _elements, _pages, x, y) \ - ZEND_API void* ZEND_FASTCALL _emalloc_ ## _size(void) ZEND_ATTRIBUTE_MALLOC; - -ZEND_MM_BINS_INFO(_ZEND_BIN_ALLOCATOR_DEF, x, y) - -ZEND_API void* ZEND_FASTCALL _emalloc_large(size_t size) ZEND_ATTRIBUTE_MALLOC ZEND_ATTRIBUTE_ALLOC_SIZE(1); -ZEND_API void* ZEND_FASTCALL _emalloc_huge(size_t size) ZEND_ATTRIBUTE_MALLOC ZEND_ATTRIBUTE_ALLOC_SIZE(1); - -# define _ZEND_BIN_ALLOCATOR_SELECTOR_START(_num, _size, _elements, _pages, size, y) \ - ((size <= _size) ? _emalloc_ ## _size() : -# define _ZEND_BIN_ALLOCATOR_SELECTOR_END(_num, _size, _elements, _pages, size, y) \ - ) - -# define ZEND_ALLOCATOR(size) \ - ZEND_MM_BINS_INFO(_ZEND_BIN_ALLOCATOR_SELECTOR_START, size, y) \ - ((size <= ZEND_MM_MAX_LARGE_SIZE) ? _emalloc_large(size) : _emalloc_huge(size)) \ - ZEND_MM_BINS_INFO(_ZEND_BIN_ALLOCATOR_SELECTOR_END, size, y) - -# define _emalloc(size) \ - (__builtin_constant_p(size) ? \ - ZEND_ALLOCATOR(size) \ - : \ - _emalloc(size) \ - ) - -# define _ZEND_BIN_DEALLOCATOR_DEF(_num, _size, _elements, _pages, x, y) \ - ZEND_API void ZEND_FASTCALL _efree_ ## _size(void *); - -ZEND_MM_BINS_INFO(_ZEND_BIN_DEALLOCATOR_DEF, x, y) - -ZEND_API void ZEND_FASTCALL _efree_large(void *, size_t size); -ZEND_API void ZEND_FASTCALL _efree_huge(void *, size_t size); - -# define _ZEND_BIN_DEALLOCATOR_SELECTOR_START(_num, _size, _elements, _pages, ptr, size) \ - if (size <= _size) { _efree_ ## _size(ptr); } else - -# define ZEND_DEALLOCATOR(ptr, size) \ - ZEND_MM_BINS_INFO(_ZEND_BIN_DEALLOCATOR_SELECTOR_START, ptr, size) \ - if (size <= ZEND_MM_MAX_LARGE_SIZE) { _efree_large(ptr, size); } \ - else { _efree_huge(ptr, size); } - -# define efree_size(ptr, size) do { \ - if (__builtin_constant_p(size)) { \ - ZEND_DEALLOCATOR(ptr, size) \ - } else { \ - _efree(ptr); \ - } \ - } while (0) -# define efree_size_rel(ptr, size) \ - efree_size(ptr, size) - -#else - -# define efree_size(ptr, size) \ - efree(ptr) -# define efree_size_rel(ptr, size) \ - efree_rel(ptr) - -#define _emalloc_large _emalloc -#define _emalloc_huge _emalloc -#define _efree_large _efree -#define _efree_huge _efree - -#endif - -/* Standard wrapper macros */ -#define emalloc(size) _emalloc((size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define emalloc_large(size) _emalloc_large((size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define emalloc_huge(size) _emalloc_huge((size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define safe_emalloc(nmemb, size, offset) _safe_emalloc((nmemb), (size), (offset) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define efree(ptr) _efree((ptr) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define efree_large(ptr) _efree_large((ptr) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define efree_huge(ptr) _efree_huge((ptr) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define ecalloc(nmemb, size) _ecalloc((nmemb), (size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define erealloc(ptr, size) _erealloc((ptr), (size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define erealloc2(ptr, size, copy_size) _erealloc2((ptr), (size), (copy_size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define safe_erealloc(ptr, nmemb, size, offset) _safe_erealloc((ptr), (nmemb), (size), (offset) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define erealloc_recoverable(ptr, size) _erealloc((ptr), (size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define erealloc2_recoverable(ptr, size, copy_size) _erealloc2((ptr), (size), (copy_size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define estrdup(s) _estrdup((s) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define estrndup(s, length) _estrndup((s), (length) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define zend_mem_block_size(ptr) _zend_mem_block_size((ptr) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) - -/* Relay wrapper macros */ -#define emalloc_rel(size) _emalloc((size) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define safe_emalloc_rel(nmemb, size, offset) _safe_emalloc((nmemb), (size), (offset) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define efree_rel(ptr) _efree((ptr) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define ecalloc_rel(nmemb, size) _ecalloc((nmemb), (size) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define erealloc_rel(ptr, size) _erealloc((ptr), (size) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define erealloc2_rel(ptr, size, copy_size) _erealloc2((ptr), (size), (copy_size) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define erealloc_recoverable_rel(ptr, size) _erealloc((ptr), (size) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define erealloc2_recoverable_rel(ptr, size, copy_size) _erealloc2((ptr), (size), (copy_size) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define safe_erealloc_rel(ptr, nmemb, size, offset) _safe_erealloc((ptr), (nmemb), (size), (offset) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define estrdup_rel(s) _estrdup((s) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define estrndup_rel(s, length) _estrndup((s), (length) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define zend_mem_block_size_rel(ptr) _zend_mem_block_size((ptr) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) - -ZEND_API void * __zend_malloc(size_t len) ZEND_ATTRIBUTE_MALLOC ZEND_ATTRIBUTE_ALLOC_SIZE(1); -ZEND_API void * __zend_calloc(size_t nmemb, size_t len) ZEND_ATTRIBUTE_MALLOC ZEND_ATTRIBUTE_ALLOC_SIZE2(1,2); -ZEND_API void * __zend_realloc(void *p, size_t len) ZEND_ATTRIBUTE_ALLOC_SIZE(2); - -/* Selective persistent/non persistent allocation macros */ -#define pemalloc(size, persistent) ((persistent)?__zend_malloc(size):emalloc(size)) -#define safe_pemalloc(nmemb, size, offset, persistent) ((persistent)?_safe_malloc(nmemb, size, offset):safe_emalloc(nmemb, size, offset)) -#define pefree(ptr, persistent) ((persistent)?free(ptr):efree(ptr)) -#define pefree_size(ptr, size, persistent) do { \ - if (persistent) { \ - free(ptr); \ - } else { \ - efree_size(ptr, size);\ - } \ - } while (0) - -#define pecalloc(nmemb, size, persistent) ((persistent)?__zend_calloc((nmemb), (size)):ecalloc((nmemb), (size))) -#define perealloc(ptr, size, persistent) ((persistent)?__zend_realloc((ptr), (size)):erealloc((ptr), (size))) -#define perealloc2(ptr, size, copy_size, persistent) ((persistent)?__zend_realloc((ptr), (size)):erealloc2((ptr), (size), (copy_size))) -#define safe_perealloc(ptr, nmemb, size, offset, persistent) ((persistent)?_safe_realloc((ptr), (nmemb), (size), (offset)):safe_erealloc((ptr), (nmemb), (size), (offset))) -#define perealloc_recoverable(ptr, size, persistent) ((persistent)?realloc((ptr), (size)):erealloc_recoverable((ptr), (size))) -#define perealloc2_recoverable(ptr, size, persistent) ((persistent)?realloc((ptr), (size)):erealloc2_recoverable((ptr), (size), (copy_size))) -#define pestrdup(s, persistent) ((persistent)?strdup(s):estrdup(s)) -#define pestrndup(s, length, persistent) ((persistent)?zend_strndup((s),(length)):estrndup((s),(length))) - -#define pemalloc_rel(size, persistent) ((persistent)?__zend_malloc(size):emalloc_rel(size)) -#define pefree_rel(ptr, persistent) ((persistent)?free(ptr):efree_rel(ptr)) -#define pecalloc_rel(nmemb, size, persistent) ((persistent)?__zend_calloc((nmemb), (size)):ecalloc_rel((nmemb), (size))) -#define perealloc_rel(ptr, size, persistent) ((persistent)?__zend_realloc((ptr), (size)):erealloc_rel((ptr), (size))) -#define perealloc2_rel(ptr, size, copy_size, persistent) ((persistent)?__zend_realloc((ptr), (size)):erealloc2_rel((ptr), (size), (copy_size))) -#define perealloc_recoverable_rel(ptr, size, persistent) ((persistent)?realloc((ptr), (size)):erealloc_recoverable_rel((ptr), (size))) -#define perealloc2_recoverable_rel(ptr, size, copy_size, persistent) ((persistent)?realloc((ptr), (size)):erealloc2_recoverable_rel((ptr), (size), (copy_size))) -#define pestrdup_rel(s, persistent) ((persistent)?strdup(s):estrdup_rel(s)) - -ZEND_API int zend_set_memory_limit(size_t memory_limit); - -ZEND_API void start_memory_manager(void); -ZEND_API void shutdown_memory_manager(int silent, int full_shutdown); -ZEND_API int is_zend_mm(void); -ZEND_API int is_zend_ptr(const void *ptr); - -ZEND_API size_t zend_memory_usage(int real_usage); -ZEND_API size_t zend_memory_peak_usage(int real_usage); - -/* fast cache for HashTables */ -#define ALLOC_HASHTABLE(ht) \ - (ht) = (HashTable *) emalloc(sizeof(HashTable)) - -#define FREE_HASHTABLE(ht) \ - efree_size(ht, sizeof(HashTable)) - -#define ALLOC_HASHTABLE_REL(ht) \ - (ht) = (HashTable *) emalloc_rel(sizeof(HashTable)) - -#define FREE_HASHTABLE_REL(ht) \ - efree_size_rel(ht, sizeof(HashTable)) - -/* Heap functions */ -typedef struct _zend_mm_heap zend_mm_heap; - -ZEND_API zend_mm_heap *zend_mm_startup(void); -ZEND_API void zend_mm_shutdown(zend_mm_heap *heap, int full_shutdown, int silent); -ZEND_API void* ZEND_FASTCALL _zend_mm_alloc(zend_mm_heap *heap, size_t size ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC) ZEND_ATTRIBUTE_MALLOC; -ZEND_API void ZEND_FASTCALL _zend_mm_free(zend_mm_heap *heap, void *p ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC); -ZEND_API void* ZEND_FASTCALL _zend_mm_realloc(zend_mm_heap *heap, void *p, size_t size ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC); -ZEND_API void* ZEND_FASTCALL _zend_mm_realloc2(zend_mm_heap *heap, void *p, size_t size, size_t copy_size ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC); -ZEND_API size_t ZEND_FASTCALL _zend_mm_block_size(zend_mm_heap *heap, void *p ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC); - -#define zend_mm_alloc(heap, size) _zend_mm_alloc((heap), (size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define zend_mm_free(heap, p) _zend_mm_free((heap), (p) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define zend_mm_realloc(heap, p, size) _zend_mm_realloc((heap), (p), (size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define zend_mm_realloc2(heap, p, size, copy_size) _zend_mm_realloc2((heap), (p), (size), (copy_size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) -#define zend_mm_block_size(heap, p) _zend_mm_block_size((heap), (p) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) - -#define zend_mm_alloc_rel(heap, size) _zend_mm_alloc((heap), (size) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define zend_mm_free_rel(heap, p) _zend_mm_free((heap), (p) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define zend_mm_realloc_rel(heap, p, size) _zend_mm_realloc((heap), (p), (size) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define zend_mm_realloc2_rel(heap, p, size, copy_size) _zend_mm_realloc2((heap), (p), (size), (copy_size) ZEND_FILE_LINE_RELAY_CC ZEND_FILE_LINE_CC) -#define zend_mm_block_size_rel(heap, p) _zend_mm_block_size((heap), (p) ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC) - -ZEND_API zend_mm_heap *zend_mm_set_heap(zend_mm_heap *new_heap); -ZEND_API zend_mm_heap *zend_mm_get_heap(void); - -ZEND_API size_t zend_mm_gc(zend_mm_heap *heap); - -#define ZEND_MM_CUSTOM_HEAP_NONE 0 -#define ZEND_MM_CUSTOM_HEAP_STD 1 -#define ZEND_MM_CUSTOM_HEAP_DEBUG 2 - -ZEND_API int zend_mm_is_custom_heap(zend_mm_heap *new_heap); -ZEND_API void zend_mm_set_custom_handlers(zend_mm_heap *heap, - void* (*_malloc)(size_t), - void (*_free)(void*), - void* (*_realloc)(void*, size_t)); -ZEND_API void zend_mm_get_custom_handlers(zend_mm_heap *heap, - void* (**_malloc)(size_t), - void (**_free)(void*), - void* (**_realloc)(void*, size_t)); - -#if ZEND_DEBUG -ZEND_API void zend_mm_set_custom_debug_handlers(zend_mm_heap *heap, - void* (*_malloc)(size_t ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC), - void (*_free)(void* ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC), - void* (*_realloc)(void*, size_t ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC)); -#endif - -typedef struct _zend_mm_storage zend_mm_storage; - -typedef void* (*zend_mm_chunk_alloc_t)(zend_mm_storage *storage, size_t size, size_t alignment); -typedef void (*zend_mm_chunk_free_t)(zend_mm_storage *storage, void *chunk, size_t size); -typedef int (*zend_mm_chunk_truncate_t)(zend_mm_storage *storage, void *chunk, size_t old_size, size_t new_size); -typedef int (*zend_mm_chunk_extend_t)(zend_mm_storage *storage, void *chunk, size_t old_size, size_t new_size); - -typedef struct _zend_mm_handlers { - zend_mm_chunk_alloc_t chunk_alloc; - zend_mm_chunk_free_t chunk_free; - zend_mm_chunk_truncate_t chunk_truncate; - zend_mm_chunk_extend_t chunk_extend; -} zend_mm_handlers; - -struct _zend_mm_storage { - const zend_mm_handlers handlers; - void *data; -}; - -ZEND_API zend_mm_storage *zend_mm_get_storage(zend_mm_heap *heap); -ZEND_API zend_mm_heap *zend_mm_startup_ex(const zend_mm_handlers *handlers, void *data, size_t data_size); - -/* - -// The following example shows how to use zend_mm_heap API with custom storage - -static zend_mm_heap *apc_heap = NULL; -static HashTable *apc_ht = NULL; - -typedef struct _apc_data { - void *mem; - uint32_t free_pages; -} apc_data; - -static void *apc_chunk_alloc(zend_mm_storage *storage, size_t size, size_t alignment) -{ - apc_data *data = (apc_data*)(storage->data); - size_t real_size = ((size + (ZEND_MM_CHUNK_SIZE-1)) & ~(ZEND_MM_CHUNK_SIZE-1)); - uint32_t count = real_size / ZEND_MM_CHUNK_SIZE; - uint32_t first, last, i; - - ZEND_ASSERT(alignment == ZEND_MM_CHUNK_SIZE); - - for (first = 0; first < 32; first++) { - if (!(data->free_pages & (1 << first))) { - last = first; - do { - if (last - first == count - 1) { - for (i = first; i <= last; i++) { - data->free_pages |= (1 << i); - } - return (void *)(((char*)(data->mem)) + ZEND_MM_CHUNK_SIZE * (1 << first)); - } - last++; - } while (last < 32 && !(data->free_pages & (1 << last))); - first = last; - } - } - return NULL; -} - -static void apc_chunk_free(zend_mm_storage *storage, void *chunk, size_t size) -{ - apc_data *data = (apc_data*)(storage->data); - uint32_t i; - - ZEND_ASSERT(((uintptr_t)chunk & (ZEND_MM_CHUNK_SIZE - 1)) == 0); - - i = ((uintptr_t)chunk - (uintptr_t)(data->mem)) / ZEND_MM_CHUNK_SIZE; - while (1) { - data->free_pages &= ~(1 << i); - if (size <= ZEND_MM_CHUNK_SIZE) { - break; - } - size -= ZEND_MM_CHUNK_SIZE; - } -} - -static void apc_init_heap(void) -{ - zend_mm_handlers apc_handlers = { - apc_chunk_alloc, - apc_chunk_free, - NULL, - NULL, - }; - apc_data tmp_data; - zend_mm_heap *old_heap; - - // Preallocate properly aligned SHM chunks (64MB) - tmp_data.mem = shm_memalign(ZEND_MM_CHUNK_SIZE, ZEND_MM_CHUNK_SIZE * 32); - - // Initialize temporary storage data - tmp_data.free_pages = 0; - - // Create heap - apc_heap = zend_mm_startup_ex(&apc_handlers, &tmp_data, sizeof(tmp_data)); - - // Allocate some data in the heap - old_heap = zend_mm_set_heap(apc_heap); - ALLOC_HASHTABLE(apc_ht); - zend_hash_init(apc_ht, 64, NULL, ZVAL_PTR_DTOR, 0); - zend_mm_set_heap(old_heap); -} - -*/ - -#ifdef ZTS -size_t zend_mm_globals_size(void); -#endif - -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_alloc_sizes.h b/7.4.27/mac/include/php/Zend/zend_alloc_sizes.h deleted file mode 100644 index 9f1c00e..0000000 --- a/7.4.27/mac/include/php/Zend/zend_alloc_sizes.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_ALLOC_SIZES_H -#define ZEND_ALLOC_SIZES_H - -#define ZEND_MM_CHUNK_SIZE (2 * 1024 * 1024) /* 2 MB */ -#define ZEND_MM_PAGE_SIZE (4 * 1024) /* 4 KB */ -#define ZEND_MM_PAGES (ZEND_MM_CHUNK_SIZE / ZEND_MM_PAGE_SIZE) /* 512 */ -#define ZEND_MM_FIRST_PAGE (1) - -#define ZEND_MM_MIN_SMALL_SIZE 8 -#define ZEND_MM_MAX_SMALL_SIZE 3072 -#define ZEND_MM_MAX_LARGE_SIZE (ZEND_MM_CHUNK_SIZE - (ZEND_MM_PAGE_SIZE * ZEND_MM_FIRST_PAGE)) - -/* num, size, count, pages */ -#define ZEND_MM_BINS_INFO(_, x, y) \ - _( 0, 8, 512, 1, x, y) \ - _( 1, 16, 256, 1, x, y) \ - _( 2, 24, 170, 1, x, y) \ - _( 3, 32, 128, 1, x, y) \ - _( 4, 40, 102, 1, x, y) \ - _( 5, 48, 85, 1, x, y) \ - _( 6, 56, 73, 1, x, y) \ - _( 7, 64, 64, 1, x, y) \ - _( 8, 80, 51, 1, x, y) \ - _( 9, 96, 42, 1, x, y) \ - _(10, 112, 36, 1, x, y) \ - _(11, 128, 32, 1, x, y) \ - _(12, 160, 25, 1, x, y) \ - _(13, 192, 21, 1, x, y) \ - _(14, 224, 18, 1, x, y) \ - _(15, 256, 16, 1, x, y) \ - _(16, 320, 64, 5, x, y) \ - _(17, 384, 32, 3, x, y) \ - _(18, 448, 9, 1, x, y) \ - _(19, 512, 8, 1, x, y) \ - _(20, 640, 32, 5, x, y) \ - _(21, 768, 16, 3, x, y) \ - _(22, 896, 9, 2, x, y) \ - _(23, 1024, 8, 2, x, y) \ - _(24, 1280, 16, 5, x, y) \ - _(25, 1536, 8, 3, x, y) \ - _(26, 1792, 16, 7, x, y) \ - _(27, 2048, 8, 4, x, y) \ - _(28, 2560, 8, 5, x, y) \ - _(29, 3072, 4, 3, x, y) - -#endif /* ZEND_ALLOC_SIZES_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_arena.h b/7.4.27/mac/include/php/Zend/zend_arena.h deleted file mode 100644 index 6ecc1fc..0000000 --- a/7.4.27/mac/include/php/Zend/zend_arena.h +++ /dev/null @@ -1,224 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef _ZEND_ARENA_H_ -#define _ZEND_ARENA_H_ - -#include "zend.h" - -#ifndef ZEND_TRACK_ARENA_ALLOC - -typedef struct _zend_arena zend_arena; - -struct _zend_arena { - char *ptr; - char *end; - zend_arena *prev; -}; - -static zend_always_inline zend_arena* zend_arena_create(size_t size) -{ - zend_arena *arena = (zend_arena*)emalloc(size); - - arena->ptr = (char*) arena + ZEND_MM_ALIGNED_SIZE(sizeof(zend_arena)); - arena->end = (char*) arena + size; - arena->prev = NULL; - return arena; -} - -static zend_always_inline void zend_arena_destroy(zend_arena *arena) -{ - do { - zend_arena *prev = arena->prev; - efree(arena); - arena = prev; - } while (arena); -} - -static zend_always_inline void* zend_arena_alloc(zend_arena **arena_ptr, size_t size) -{ - zend_arena *arena = *arena_ptr; - char *ptr = arena->ptr; - - size = ZEND_MM_ALIGNED_SIZE(size); - - if (EXPECTED(size <= (size_t)(arena->end - ptr))) { - arena->ptr = ptr + size; - } else { - size_t arena_size = - UNEXPECTED((size + ZEND_MM_ALIGNED_SIZE(sizeof(zend_arena))) > (size_t)(arena->end - (char*) arena)) ? - (size + ZEND_MM_ALIGNED_SIZE(sizeof(zend_arena))) : - (size_t)(arena->end - (char*) arena); - zend_arena *new_arena = (zend_arena*)emalloc(arena_size); - - ptr = (char*) new_arena + ZEND_MM_ALIGNED_SIZE(sizeof(zend_arena)); - new_arena->ptr = (char*) new_arena + ZEND_MM_ALIGNED_SIZE(sizeof(zend_arena)) + size; - new_arena->end = (char*) new_arena + arena_size; - new_arena->prev = arena; - *arena_ptr = new_arena; - } - - return (void*) ptr; -} - -static zend_always_inline void* zend_arena_calloc(zend_arena **arena_ptr, size_t count, size_t unit_size) -{ - int overflow; - size_t size; - void *ret; - - size = zend_safe_address(unit_size, count, 0, &overflow); - if (UNEXPECTED(overflow)) { - zend_error(E_ERROR, "Possible integer overflow in zend_arena_calloc() (%zu * %zu)", unit_size, count); - } - ret = zend_arena_alloc(arena_ptr, size); - memset(ret, 0, size); - return ret; -} - -static zend_always_inline void* zend_arena_checkpoint(zend_arena *arena) -{ - return arena->ptr; -} - -static zend_always_inline void zend_arena_release(zend_arena **arena_ptr, void *checkpoint) -{ - zend_arena *arena = *arena_ptr; - - while (UNEXPECTED((char*)checkpoint > arena->end) || - UNEXPECTED((char*)checkpoint <= (char*)arena)) { - zend_arena *prev = arena->prev; - efree(arena); - *arena_ptr = arena = prev; - } - ZEND_ASSERT((char*)checkpoint > (char*)arena && (char*)checkpoint <= arena->end); - arena->ptr = (char*)checkpoint; -} - -static zend_always_inline zend_bool zend_arena_contains(zend_arena *arena, void *ptr) -{ - while (arena) { - if ((char*)ptr > (char*)arena && (char*)ptr <= arena->ptr) { - return 1; - } - arena = arena->prev; - } - return 0; -} - -#else - -/* Use normal allocations and keep track of them for mass-freeing. - * This is intended for use with asan/valgrind. */ - -typedef struct _zend_arena zend_arena; - -struct _zend_arena { - void **ptr; - void **end; - struct _zend_arena *prev; - void *ptrs[0]; -}; - -#define ZEND_TRACKED_ARENA_SIZE 1000 - -static zend_always_inline zend_arena *zend_arena_create(size_t _size) -{ - zend_arena *arena = (zend_arena*) emalloc( - sizeof(zend_arena) + sizeof(void *) * ZEND_TRACKED_ARENA_SIZE); - arena->ptr = &arena->ptrs[0]; - arena->end = &arena->ptrs[ZEND_TRACKED_ARENA_SIZE]; - arena->prev = NULL; - return arena; -} - -static zend_always_inline void zend_arena_destroy(zend_arena *arena) -{ - do { - zend_arena *prev = arena->prev; - void **ptr; - for (ptr = arena->ptrs; ptr < arena->ptr; ptr++) { - efree(*ptr); - } - efree(arena); - arena = prev; - } while (arena); -} - -static zend_always_inline void *zend_arena_alloc(zend_arena **arena_ptr, size_t size) -{ - zend_arena *arena = *arena_ptr; - if (arena->ptr == arena->end) { - *arena_ptr = zend_arena_create(0); - (*arena_ptr)->prev = arena; - arena = *arena_ptr; - } - - return *arena->ptr++ = emalloc(size); -} - -static zend_always_inline void* zend_arena_calloc(zend_arena **arena_ptr, size_t count, size_t unit_size) -{ - int overflow; - size_t size; - void *ret; - - size = zend_safe_address(unit_size, count, 0, &overflow); - if (UNEXPECTED(overflow)) { - zend_error(E_ERROR, "Possible integer overflow in zend_arena_calloc() (%zu * %zu)", unit_size, count); - } - ret = zend_arena_alloc(arena_ptr, size); - memset(ret, 0, size); - return ret; -} - -static zend_always_inline void* zend_arena_checkpoint(zend_arena *arena) -{ - return arena->ptr; -} - -static zend_always_inline void zend_arena_release(zend_arena **arena_ptr, void *checkpoint) -{ - while (1) { - zend_arena *arena = *arena_ptr; - zend_arena *prev = arena->prev; - while (1) { - if (arena->ptr == (void **) checkpoint) { - return; - } - if (arena->ptr == arena->ptrs) { - break; - } - arena->ptr--; - efree(*arena->ptr); - } - efree(arena); - *arena_ptr = prev; - ZEND_ASSERT(*arena_ptr); - } -} - -static zend_always_inline zend_bool zend_arena_contains(zend_arena *arena, void *ptr) -{ - /* TODO: Dummy */ - return 1; -} - -#endif - -#endif /* _ZEND_ARENA_H_ */ diff --git a/7.4.27/mac/include/php/Zend/zend_ast.h b/7.4.27/mac/include/php/Zend/zend_ast.h deleted file mode 100644 index fd6dd16..0000000 --- a/7.4.27/mac/include/php/Zend/zend_ast.h +++ /dev/null @@ -1,342 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Bob Weinand | - | Dmitry Stogov | - | Nikita Popov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_AST_H -#define ZEND_AST_H - -#include "zend.h" - -#ifndef ZEND_AST_SPEC -# define ZEND_AST_SPEC 1 -#endif - -#define ZEND_AST_SPECIAL_SHIFT 6 -#define ZEND_AST_IS_LIST_SHIFT 7 -#define ZEND_AST_NUM_CHILDREN_SHIFT 8 - -enum _zend_ast_kind { - /* special nodes */ - ZEND_AST_ZVAL = 1 << ZEND_AST_SPECIAL_SHIFT, - ZEND_AST_CONSTANT, - ZEND_AST_ZNODE, - - /* declaration nodes */ - ZEND_AST_FUNC_DECL, - ZEND_AST_CLOSURE, - ZEND_AST_METHOD, - ZEND_AST_CLASS, - ZEND_AST_ARROW_FUNC, - - /* list nodes */ - ZEND_AST_ARG_LIST = 1 << ZEND_AST_IS_LIST_SHIFT, - ZEND_AST_ARRAY, - ZEND_AST_ENCAPS_LIST, - ZEND_AST_EXPR_LIST, - ZEND_AST_STMT_LIST, - ZEND_AST_IF, - ZEND_AST_SWITCH_LIST, - ZEND_AST_CATCH_LIST, - ZEND_AST_PARAM_LIST, - ZEND_AST_CLOSURE_USES, - ZEND_AST_PROP_DECL, - ZEND_AST_CONST_DECL, - ZEND_AST_CLASS_CONST_DECL, - ZEND_AST_NAME_LIST, - ZEND_AST_TRAIT_ADAPTATIONS, - ZEND_AST_USE, - - /* 0 child nodes */ - ZEND_AST_MAGIC_CONST = 0 << ZEND_AST_NUM_CHILDREN_SHIFT, - ZEND_AST_TYPE, - ZEND_AST_CONSTANT_CLASS, - - /* 1 child node */ - ZEND_AST_VAR = 1 << ZEND_AST_NUM_CHILDREN_SHIFT, - ZEND_AST_CONST, - ZEND_AST_UNPACK, - ZEND_AST_UNARY_PLUS, - ZEND_AST_UNARY_MINUS, - ZEND_AST_CAST, - ZEND_AST_EMPTY, - ZEND_AST_ISSET, - ZEND_AST_SILENCE, - ZEND_AST_SHELL_EXEC, - ZEND_AST_CLONE, - ZEND_AST_EXIT, - ZEND_AST_PRINT, - ZEND_AST_INCLUDE_OR_EVAL, - ZEND_AST_UNARY_OP, - ZEND_AST_PRE_INC, - ZEND_AST_PRE_DEC, - ZEND_AST_POST_INC, - ZEND_AST_POST_DEC, - ZEND_AST_YIELD_FROM, - ZEND_AST_CLASS_NAME, - - ZEND_AST_GLOBAL, - ZEND_AST_UNSET, - ZEND_AST_RETURN, - ZEND_AST_LABEL, - ZEND_AST_REF, - ZEND_AST_HALT_COMPILER, - ZEND_AST_ECHO, - ZEND_AST_THROW, - ZEND_AST_GOTO, - ZEND_AST_BREAK, - ZEND_AST_CONTINUE, - - /* 2 child nodes */ - ZEND_AST_DIM = 2 << ZEND_AST_NUM_CHILDREN_SHIFT, - ZEND_AST_PROP, - ZEND_AST_STATIC_PROP, - ZEND_AST_CALL, - ZEND_AST_CLASS_CONST, - ZEND_AST_ASSIGN, - ZEND_AST_ASSIGN_REF, - ZEND_AST_ASSIGN_OP, - ZEND_AST_BINARY_OP, - ZEND_AST_GREATER, - ZEND_AST_GREATER_EQUAL, - ZEND_AST_AND, - ZEND_AST_OR, - ZEND_AST_ARRAY_ELEM, - ZEND_AST_NEW, - ZEND_AST_INSTANCEOF, - ZEND_AST_YIELD, - ZEND_AST_COALESCE, - ZEND_AST_ASSIGN_COALESCE, - - ZEND_AST_STATIC, - ZEND_AST_WHILE, - ZEND_AST_DO_WHILE, - ZEND_AST_IF_ELEM, - ZEND_AST_SWITCH, - ZEND_AST_SWITCH_CASE, - ZEND_AST_DECLARE, - ZEND_AST_USE_TRAIT, - ZEND_AST_TRAIT_PRECEDENCE, - ZEND_AST_METHOD_REFERENCE, - ZEND_AST_NAMESPACE, - ZEND_AST_USE_ELEM, - ZEND_AST_TRAIT_ALIAS, - ZEND_AST_GROUP_USE, - ZEND_AST_PROP_GROUP, - - /* 3 child nodes */ - ZEND_AST_METHOD_CALL = 3 << ZEND_AST_NUM_CHILDREN_SHIFT, - ZEND_AST_STATIC_CALL, - ZEND_AST_CONDITIONAL, - - ZEND_AST_TRY, - ZEND_AST_CATCH, - ZEND_AST_PARAM, - ZEND_AST_PROP_ELEM, - ZEND_AST_CONST_ELEM, - - /* 4 child nodes */ - ZEND_AST_FOR = 4 << ZEND_AST_NUM_CHILDREN_SHIFT, - ZEND_AST_FOREACH, -}; - -typedef uint16_t zend_ast_kind; -typedef uint16_t zend_ast_attr; - -struct _zend_ast { - zend_ast_kind kind; /* Type of the node (ZEND_AST_* enum constant) */ - zend_ast_attr attr; /* Additional attribute, use depending on node type */ - uint32_t lineno; /* Line number */ - zend_ast *child[1]; /* Array of children (using struct hack) */ -}; - -/* Same as zend_ast, but with children count, which is updated dynamically */ -typedef struct _zend_ast_list { - zend_ast_kind kind; - zend_ast_attr attr; - uint32_t lineno; - uint32_t children; - zend_ast *child[1]; -} zend_ast_list; - -/* Lineno is stored in val.u2.lineno */ -typedef struct _zend_ast_zval { - zend_ast_kind kind; - zend_ast_attr attr; - zval val; -} zend_ast_zval; - -/* Separate structure for function and class declaration, as they need extra information. */ -typedef struct _zend_ast_decl { - zend_ast_kind kind; - zend_ast_attr attr; /* Unused - for structure compatibility */ - uint32_t start_lineno; - uint32_t end_lineno; - uint32_t flags; - unsigned char *lex_pos; - zend_string *doc_comment; - zend_string *name; - zend_ast *child[4]; -} zend_ast_decl; - -typedef void (*zend_ast_process_t)(zend_ast *ast); -extern ZEND_API zend_ast_process_t zend_ast_process; - -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_zval_with_lineno(zval *zv, uint32_t lineno); -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_zval_ex(zval *zv, zend_ast_attr attr); -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_zval(zval *zv); -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_zval_from_str(zend_string *str); -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_zval_from_long(zend_long lval); - -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_constant(zend_string *name, zend_ast_attr attr); -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_class_const_or_name(zend_ast *class_name, zend_ast *name); - -#if ZEND_AST_SPEC -# define ZEND_AST_SPEC_CALL(name, ...) \ - ZEND_EXPAND_VA(ZEND_AST_SPEC_CALL_(name, __VA_ARGS__, _4, _3, _2, _1, _0)(__VA_ARGS__)) -# define ZEND_AST_SPEC_CALL_(name, _, _4, _3, _2, _1, suffix, ...) \ - name ## suffix -# define ZEND_AST_SPEC_CALL_EX(name, ...) \ - ZEND_EXPAND_VA(ZEND_AST_SPEC_CALL_EX_(name, __VA_ARGS__, _4, _3, _2, _1, _0)(__VA_ARGS__)) -# define ZEND_AST_SPEC_CALL_EX_(name, _, _5, _4, _3, _2, _1, suffix, ...) \ - name ## suffix - -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_0(zend_ast_kind kind); -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_1(zend_ast_kind kind, zend_ast *child); -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_2(zend_ast_kind kind, zend_ast *child1, zend_ast *child2); -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_3(zend_ast_kind kind, zend_ast *child1, zend_ast *child2, zend_ast *child3); -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_4(zend_ast_kind kind, zend_ast *child1, zend_ast *child2, zend_ast *child3, zend_ast *child4); - -static zend_always_inline zend_ast * zend_ast_create_ex_0(zend_ast_kind kind, zend_ast_attr attr) { - zend_ast *ast = zend_ast_create_0(kind); - ast->attr = attr; - return ast; -} -static zend_always_inline zend_ast * zend_ast_create_ex_1(zend_ast_kind kind, zend_ast_attr attr, zend_ast *child) { - zend_ast *ast = zend_ast_create_1(kind, child); - ast->attr = attr; - return ast; -} -static zend_always_inline zend_ast * zend_ast_create_ex_2(zend_ast_kind kind, zend_ast_attr attr, zend_ast *child1, zend_ast *child2) { - zend_ast *ast = zend_ast_create_2(kind, child1, child2); - ast->attr = attr; - return ast; -} -static zend_always_inline zend_ast * zend_ast_create_ex_3(zend_ast_kind kind, zend_ast_attr attr, zend_ast *child1, zend_ast *child2, zend_ast *child3) { - zend_ast *ast = zend_ast_create_3(kind, child1, child2, child3); - ast->attr = attr; - return ast; -} -static zend_always_inline zend_ast * zend_ast_create_ex_4(zend_ast_kind kind, zend_ast_attr attr, zend_ast *child1, zend_ast *child2, zend_ast *child3, zend_ast *child4) { - zend_ast *ast = zend_ast_create_4(kind, child1, child2, child3, child4); - ast->attr = attr; - return ast; -} - -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_list_0(zend_ast_kind kind); -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_list_1(zend_ast_kind kind, zend_ast *child); -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_list_2(zend_ast_kind kind, zend_ast *child1, zend_ast *child2); - -# define zend_ast_create(...) \ - ZEND_AST_SPEC_CALL(zend_ast_create, __VA_ARGS__) -# define zend_ast_create_ex(...) \ - ZEND_AST_SPEC_CALL_EX(zend_ast_create_ex, __VA_ARGS__) -# define zend_ast_create_list(init_children, ...) \ - ZEND_AST_SPEC_CALL(zend_ast_create_list, __VA_ARGS__) - -#else -ZEND_API zend_ast *zend_ast_create(zend_ast_kind kind, ...); -ZEND_API zend_ast *zend_ast_create_ex(zend_ast_kind kind, zend_ast_attr attr, ...); -ZEND_API zend_ast *zend_ast_create_list(uint32_t init_children, zend_ast_kind kind, ...); -#endif - -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_list_add(zend_ast *list, zend_ast *op); - -ZEND_API zend_ast *zend_ast_create_decl( - zend_ast_kind kind, uint32_t flags, uint32_t start_lineno, zend_string *doc_comment, - zend_string *name, zend_ast *child0, zend_ast *child1, zend_ast *child2, zend_ast *child3 -); - -ZEND_API int ZEND_FASTCALL zend_ast_evaluate(zval *result, zend_ast *ast, zend_class_entry *scope); -ZEND_API zend_string *zend_ast_export(const char *prefix, zend_ast *ast, const char *suffix); - -ZEND_API zend_ast_ref * ZEND_FASTCALL zend_ast_copy(zend_ast *ast); -ZEND_API void ZEND_FASTCALL zend_ast_destroy(zend_ast *ast); -ZEND_API void ZEND_FASTCALL zend_ast_ref_destroy(zend_ast_ref *ast); - -typedef void (*zend_ast_apply_func)(zend_ast **ast_ptr); -ZEND_API void zend_ast_apply(zend_ast *ast, zend_ast_apply_func fn); - -static zend_always_inline zend_bool zend_ast_is_special(zend_ast *ast) { - return (ast->kind >> ZEND_AST_SPECIAL_SHIFT) & 1; -} - -static zend_always_inline zend_bool zend_ast_is_list(zend_ast *ast) { - return (ast->kind >> ZEND_AST_IS_LIST_SHIFT) & 1; -} -static zend_always_inline zend_ast_list *zend_ast_get_list(zend_ast *ast) { - ZEND_ASSERT(zend_ast_is_list(ast)); - return (zend_ast_list *) ast; -} - -static zend_always_inline zval *zend_ast_get_zval(zend_ast *ast) { - ZEND_ASSERT(ast->kind == ZEND_AST_ZVAL); - return &((zend_ast_zval *) ast)->val; -} -static zend_always_inline zend_string *zend_ast_get_str(zend_ast *ast) { - zval *zv = zend_ast_get_zval(ast); - ZEND_ASSERT(Z_TYPE_P(zv) == IS_STRING); - return Z_STR_P(zv); -} - -static zend_always_inline zend_string *zend_ast_get_constant_name(zend_ast *ast) { - ZEND_ASSERT(ast->kind == ZEND_AST_CONSTANT); - ZEND_ASSERT(Z_TYPE(((zend_ast_zval *) ast)->val) == IS_STRING); - return Z_STR(((zend_ast_zval *) ast)->val); -} - -static zend_always_inline uint32_t zend_ast_get_num_children(zend_ast *ast) { - ZEND_ASSERT(!zend_ast_is_list(ast)); - return ast->kind >> ZEND_AST_NUM_CHILDREN_SHIFT; -} -static zend_always_inline uint32_t zend_ast_get_lineno(zend_ast *ast) { - if (ast->kind == ZEND_AST_ZVAL) { - zval *zv = zend_ast_get_zval(ast); - return Z_LINENO_P(zv); - } else { - return ast->lineno; - } -} - -static zend_always_inline zend_ast *zend_ast_create_binary_op(uint32_t opcode, zend_ast *op0, zend_ast *op1) { - return zend_ast_create_ex(ZEND_AST_BINARY_OP, opcode, op0, op1); -} -static zend_always_inline zend_ast *zend_ast_create_assign_op(uint32_t opcode, zend_ast *op0, zend_ast *op1) { - return zend_ast_create_ex(ZEND_AST_ASSIGN_OP, opcode, op0, op1); -} -static zend_always_inline zend_ast *zend_ast_create_cast(uint32_t type, zend_ast *op0) { - return zend_ast_create_ex(ZEND_AST_CAST, type, op0); -} -static zend_always_inline zend_ast *zend_ast_list_rtrim(zend_ast *ast) { - zend_ast_list *list = zend_ast_get_list(ast); - if (list->children && list->child[list->children - 1] == NULL) { - list->children--; - } - return ast; -} -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_bitset.h b/7.4.27/mac/include/php/Zend/zend_bitset.h deleted file mode 100644 index 2a227e4..0000000 --- a/7.4.27/mac/include/php/Zend/zend_bitset.h +++ /dev/null @@ -1,254 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend OPcache JIT | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef _ZEND_BITSET_H_ -#define _ZEND_BITSET_H_ - -typedef zend_ulong *zend_bitset; - -#define ZEND_BITSET_ELM_SIZE sizeof(zend_ulong) - -#if SIZEOF_ZEND_LONG == 4 -# define ZEND_BITSET_ELM_NUM(n) ((n) >> 5) -# define ZEND_BITSET_BIT_NUM(n) ((zend_ulong)(n) & Z_UL(0x1f)) -#elif SIZEOF_ZEND_LONG == 8 -# define ZEND_BITSET_ELM_NUM(n) ((n) >> 6) -# define ZEND_BITSET_BIT_NUM(n) ((zend_ulong)(n) & Z_UL(0x3f)) -#else -# define ZEND_BITSET_ELM_NUM(n) ((n) / (sizeof(zend_long) * 8)) -# define ZEND_BITSET_BIT_NUM(n) ((n) % (sizeof(zend_long) * 8)) -#endif - -#define ZEND_BITSET_ALLOCA(n, use_heap) \ - (zend_bitset)do_alloca((n) * ZEND_BITSET_ELM_SIZE, use_heap) - -/* Number of trailing zero bits (0x01 -> 0; 0x40 -> 6; 0x00 -> LEN) */ -static zend_always_inline int zend_ulong_ntz(zend_ulong num) -{ -#if (defined(__GNUC__) || __has_builtin(__builtin_ctzl)) \ - && SIZEOF_ZEND_LONG == SIZEOF_LONG && defined(PHP_HAVE_BUILTIN_CTZL) - return __builtin_ctzl(num); -#elif (defined(__GNUC__) || __has_builtin(__builtin_ctzll)) && defined(PHP_HAVE_BUILTIN_CTZLL) - return __builtin_ctzll(num); -#elif defined(_WIN32) - unsigned long index; - -#if defined(_WIN64) - if (!BitScanForward64(&index, num)) { -#else - if (!BitScanForward(&index, num)) { -#endif - /* undefined behavior */ - return SIZEOF_ZEND_LONG * 8; - } - - return (int) index; -#else - int n; - - if (num == Z_UL(0)) return SIZEOF_ZEND_LONG * 8; - - n = 1; -#if SIZEOF_ZEND_LONG == 8 - if ((num & 0xffffffff) == 0) {n += 32; num = num >> Z_UL(32);} -#endif - if ((num & 0x0000ffff) == 0) {n += 16; num = num >> 16;} - if ((num & 0x000000ff) == 0) {n += 8; num = num >> 8;} - if ((num & 0x0000000f) == 0) {n += 4; num = num >> 4;} - if ((num & 0x00000003) == 0) {n += 2; num = num >> 2;} - return n - (num & 1); -#endif -} - -/* Returns the number of zend_ulong words needed to store a bitset that is N - bits long. */ -static inline uint32_t zend_bitset_len(uint32_t n) -{ - return (n + ((sizeof(zend_long) * 8) - 1)) / (sizeof(zend_long) * 8); -} - -static inline zend_bool zend_bitset_in(zend_bitset set, uint32_t n) -{ - return ZEND_BIT_TEST(set, n); -} - -static inline void zend_bitset_incl(zend_bitset set, uint32_t n) -{ - set[ZEND_BITSET_ELM_NUM(n)] |= Z_UL(1) << ZEND_BITSET_BIT_NUM(n); -} - -static inline void zend_bitset_excl(zend_bitset set, uint32_t n) -{ - set[ZEND_BITSET_ELM_NUM(n)] &= ~(Z_UL(1) << ZEND_BITSET_BIT_NUM(n)); -} - -static inline void zend_bitset_clear(zend_bitset set, uint32_t len) -{ - memset(set, 0, len * ZEND_BITSET_ELM_SIZE); -} - -static inline int zend_bitset_empty(zend_bitset set, uint32_t len) -{ - uint32_t i; - for (i = 0; i < len; i++) { - if (set[i]) { - return 0; - } - } - return 1; -} - -static inline void zend_bitset_fill(zend_bitset set, uint32_t len) -{ - memset(set, 0xff, len * ZEND_BITSET_ELM_SIZE); -} - -static inline zend_bool zend_bitset_equal(zend_bitset set1, zend_bitset set2, uint32_t len) -{ - return memcmp(set1, set2, len * ZEND_BITSET_ELM_SIZE) == 0; -} - -static inline void zend_bitset_copy(zend_bitset set1, zend_bitset set2, uint32_t len) -{ - memcpy(set1, set2, len * ZEND_BITSET_ELM_SIZE); -} - -static inline void zend_bitset_intersection(zend_bitset set1, zend_bitset set2, uint32_t len) -{ - uint32_t i; - - for (i = 0; i < len; i++) { - set1[i] &= set2[i]; - } -} - -static inline void zend_bitset_union(zend_bitset set1, zend_bitset set2, uint32_t len) -{ - uint32_t i; - - for (i = 0; i < len; i++) { - set1[i] |= set2[i]; - } -} - -static inline void zend_bitset_difference(zend_bitset set1, zend_bitset set2, uint32_t len) -{ - uint32_t i; - - for (i = 0; i < len; i++) { - set1[i] = set1[i] & ~set2[i]; - } -} - -static inline void zend_bitset_union_with_intersection(zend_bitset set1, zend_bitset set2, zend_bitset set3, zend_bitset set4, uint32_t len) -{ - uint32_t i; - - for (i = 0; i < len; i++) { - set1[i] = set2[i] | (set3[i] & set4[i]); - } -} - -static inline void zend_bitset_union_with_difference(zend_bitset set1, zend_bitset set2, zend_bitset set3, zend_bitset set4, uint32_t len) -{ - uint32_t i; - - for (i = 0; i < len; i++) { - set1[i] = set2[i] | (set3[i] & ~set4[i]); - } -} - -static inline zend_bool zend_bitset_subset(zend_bitset set1, zend_bitset set2, uint32_t len) -{ - uint32_t i; - - for (i = 0; i < len; i++) { - if (set1[i] & ~set2[i]) { - return 0; - } - } - return 1; -} - -static inline int zend_bitset_first(zend_bitset set, uint32_t len) -{ - uint32_t i; - - for (i = 0; i < len; i++) { - if (set[i]) { - return ZEND_BITSET_ELM_SIZE * 8 * i + zend_ulong_ntz(set[i]); - } - } - return -1; /* empty set */ -} - -static inline int zend_bitset_last(zend_bitset set, uint32_t len) -{ - uint32_t i = len; - - while (i > 0) { - i--; - if (set[i]) { - int j = ZEND_BITSET_ELM_SIZE * 8 * i - 1; - zend_ulong x = set[i]; - while (x != Z_UL(0)) { - x = x >> Z_UL(1); - j++; - } - return j; - } - } - return -1; /* empty set */ -} - -#define ZEND_BITSET_FOREACH(set, len, bit) do { \ - zend_bitset _set = (set); \ - uint32_t _i, _len = (len); \ - for (_i = 0; _i < _len; _i++) { \ - zend_ulong _x = _set[_i]; \ - if (_x) { \ - (bit) = ZEND_BITSET_ELM_SIZE * 8 * _i; \ - for (; _x != 0; _x >>= Z_UL(1), (bit)++) { \ - if (!(_x & Z_UL(1))) continue; - -#define ZEND_BITSET_REVERSE_FOREACH(set, len, bit) do { \ - zend_bitset _set = (set); \ - uint32_t _i = (len); \ - zend_ulong _test = Z_UL(1) << (ZEND_BITSET_ELM_SIZE * 8 - 1); \ - while (_i-- > 0) { \ - zend_ulong _x = _set[_i]; \ - if (_x) { \ - (bit) = ZEND_BITSET_ELM_SIZE * 8 * (_i + 1) - 1; \ - for (; _x != 0; _x <<= Z_UL(1), (bit)--) { \ - if (!(_x & _test)) continue; \ - -#define ZEND_BITSET_FOREACH_END() \ - } \ - } \ - } \ -} while (0) - -static inline int zend_bitset_pop_first(zend_bitset set, uint32_t len) { - int i = zend_bitset_first(set, len); - if (i >= 0) { - zend_bitset_excl(set, i); - } - return i; -} - -#endif /* _ZEND_BITSET_H_ */ diff --git a/7.4.27/mac/include/php/Zend/zend_build.h b/7.4.27/mac/include/php/Zend/zend_build.h deleted file mode 100644 index c604fb3..0000000 --- a/7.4.27/mac/include/php/Zend/zend_build.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Stanislav Malyshev | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_BUILD_H -#define ZEND_BUILD_H - -#define ZEND_TOSTR_(x) #x -#define ZEND_TOSTR(x) ZEND_TOSTR_(x) - -#ifdef ZTS -#define ZEND_BUILD_TS ",TS" -#else -#define ZEND_BUILD_TS ",NTS" -#endif - -#if ZEND_DEBUG -#define ZEND_BUILD_DEBUG ",debug" -#else -#define ZEND_BUILD_DEBUG -#endif - -#if defined(ZEND_WIN32) && defined(PHP_COMPILER_ID) -#define ZEND_BUILD_SYSTEM "," PHP_COMPILER_ID -#else -#define ZEND_BUILD_SYSTEM -#endif - -/* for private applications */ -#define ZEND_BUILD_EXTRA - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_builtin_functions.h b/7.4.27/mac/include/php/Zend/zend_builtin_functions.h deleted file mode 100644 index cfc347e..0000000 --- a/7.4.27/mac/include/php/Zend/zend_builtin_functions.h +++ /dev/null @@ -1,29 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_BUILTIN_FUNCTIONS_H -#define ZEND_BUILTIN_FUNCTIONS_H - -int zend_startup_builtin_functions(void); - -BEGIN_EXTERN_C() -ZEND_API void zend_fetch_debug_backtrace(zval *return_value, int skip_last, int options, int limit); -END_EXTERN_C() - -#endif /* ZEND_BUILTIN_FUNCTIONS_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_closures.h b/7.4.27/mac/include/php/Zend/zend_closures.h deleted file mode 100644 index 6e27ddc..0000000 --- a/7.4.27/mac/include/php/Zend/zend_closures.h +++ /dev/null @@ -1,43 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Christian Seiler | - | Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_CLOSURES_H -#define ZEND_CLOSURES_H - -BEGIN_EXTERN_C() - -/* This macro depends on zend_closure structure layout */ -#define ZEND_CLOSURE_OBJECT(op_array) \ - ((zend_object*)((char*)(op_array) - sizeof(zend_object))) - -void zend_register_closure_ce(void); -void zend_closure_bind_var(zval *closure_zv, zend_string *var_name, zval *var); -void zend_closure_bind_var_ex(zval *closure_zv, uint32_t offset, zval *val); - -extern ZEND_API zend_class_entry *zend_ce_closure; - -ZEND_API void zend_create_closure(zval *res, zend_function *op_array, zend_class_entry *scope, zend_class_entry *called_scope, zval *this_ptr); -ZEND_API void zend_create_fake_closure(zval *res, zend_function *op_array, zend_class_entry *scope, zend_class_entry *called_scope, zval *this_ptr); -ZEND_API zend_function *zend_get_closure_invoke_method(zend_object *obj); -ZEND_API const zend_function *zend_get_closure_method_def(zval *obj); -ZEND_API zval* zend_get_closure_this_ptr(zval *obj); - -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_compile.h b/7.4.27/mac/include/php/Zend/zend_compile.h deleted file mode 100644 index c21554e..0000000 --- a/7.4.27/mac/include/php/Zend/zend_compile.h +++ /dev/null @@ -1,1108 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_COMPILE_H -#define ZEND_COMPILE_H - -#include "zend.h" -#include "zend_ast.h" - -#include - -#include "zend_llist.h" - -#define SET_UNUSED(op) op ## _type = IS_UNUSED - -#define MAKE_NOP(opline) do { \ - (opline)->op1.num = 0; \ - (opline)->op2.num = 0; \ - (opline)->result.num = 0; \ - (opline)->opcode = ZEND_NOP; \ - (opline)->op1_type = IS_UNUSED; \ - (opline)->op2_type = IS_UNUSED; \ - (opline)->result_type = IS_UNUSED; \ -} while (0) - -#define RESET_DOC_COMMENT() do { \ - if (CG(doc_comment)) { \ - zend_string_release_ex(CG(doc_comment), 0); \ - CG(doc_comment) = NULL; \ - } \ -} while (0) - -typedef struct _zend_op_array zend_op_array; -typedef struct _zend_op zend_op; - -/* On 64-bit systems less optimal, but more compact VM code leads to better - * performance. So on 32-bit systems we use absolute addresses for jump - * targets and constants, but on 64-bit systems realtive 32-bit offsets */ -#if SIZEOF_SIZE_T == 4 -# define ZEND_USE_ABS_JMP_ADDR 1 -# define ZEND_USE_ABS_CONST_ADDR 1 -#else -# define ZEND_USE_ABS_JMP_ADDR 0 -# define ZEND_USE_ABS_CONST_ADDR 0 -#endif - -typedef union _znode_op { - uint32_t constant; - uint32_t var; - uint32_t num; - uint32_t opline_num; /* Needs to be signed */ -#if ZEND_USE_ABS_JMP_ADDR - zend_op *jmp_addr; -#else - uint32_t jmp_offset; -#endif -#if ZEND_USE_ABS_CONST_ADDR - zval *zv; -#endif -} znode_op; - -typedef struct _znode { /* used only during compilation */ - zend_uchar op_type; - zend_uchar flag; - union { - znode_op op; - zval constant; /* replaced by literal/zv */ - } u; -} znode; - -/* Temporarily defined here, to avoid header ordering issues */ -typedef struct _zend_ast_znode { - zend_ast_kind kind; - zend_ast_attr attr; - uint32_t lineno; - znode node; -} zend_ast_znode; - -ZEND_API zend_ast * ZEND_FASTCALL zend_ast_create_znode(znode *node); - -static zend_always_inline znode *zend_ast_get_znode(zend_ast *ast) { - return &((zend_ast_znode *) ast)->node; -} - -typedef struct _zend_declarables { - zend_long ticks; -} zend_declarables; - -/* Compilation context that is different for each file, but shared between op arrays. */ -typedef struct _zend_file_context { - zend_declarables declarables; - - zend_string *current_namespace; - zend_bool in_namespace; - zend_bool has_bracketed_namespaces; - - HashTable *imports; - HashTable *imports_function; - HashTable *imports_const; - - HashTable seen_symbols; -} zend_file_context; - -typedef union _zend_parser_stack_elem { - zend_ast *ast; - zend_string *str; - zend_ulong num; - unsigned char *ptr; -} zend_parser_stack_elem; - -void zend_compile_top_stmt(zend_ast *ast); -void zend_compile_stmt(zend_ast *ast); -void zend_compile_expr(znode *node, zend_ast *ast); -zend_op *zend_compile_var(znode *node, zend_ast *ast, uint32_t type, int by_ref); -void zend_eval_const_expr(zend_ast **ast_ptr); -void zend_const_expr_to_zval(zval *result, zend_ast *ast); - -typedef int (*user_opcode_handler_t) (zend_execute_data *execute_data); - -struct _zend_op { - const void *handler; - znode_op op1; - znode_op op2; - znode_op result; - uint32_t extended_value; - uint32_t lineno; - zend_uchar opcode; - zend_uchar op1_type; - zend_uchar op2_type; - zend_uchar result_type; -}; - - -typedef struct _zend_brk_cont_element { - int start; - int cont; - int brk; - int parent; - zend_bool is_switch; -} zend_brk_cont_element; - -typedef struct _zend_label { - int brk_cont; - uint32_t opline_num; -} zend_label; - -typedef struct _zend_try_catch_element { - uint32_t try_op; - uint32_t catch_op; /* ketchup! */ - uint32_t finally_op; - uint32_t finally_end; -} zend_try_catch_element; - -#define ZEND_LIVE_TMPVAR 0 -#define ZEND_LIVE_LOOP 1 -#define ZEND_LIVE_SILENCE 2 -#define ZEND_LIVE_ROPE 3 -#define ZEND_LIVE_NEW 4 -#define ZEND_LIVE_MASK 7 - -typedef struct _zend_live_range { - uint32_t var; /* low bits are used for variable type (ZEND_LIVE_* macros) */ - uint32_t start; - uint32_t end; -} zend_live_range; - -/* Compilation context that is different for each op array. */ -typedef struct _zend_oparray_context { - uint32_t opcodes_size; - int vars_size; - int literals_size; - uint32_t fast_call_var; - uint32_t try_catch_offset; - int current_brk_cont; - int last_brk_cont; - zend_brk_cont_element *brk_cont_array; - HashTable *labels; -} zend_oparray_context; - -/* Class, property and method flags class|meth.|prop.|const*/ -/* | | | */ -/* Common flags | | | */ -/* ============ | | | */ -/* | | | */ -/* Visibility flags (public < protected < private) | | | */ -#define ZEND_ACC_PUBLIC (1 << 0) /* | X | X | X */ -#define ZEND_ACC_PROTECTED (1 << 1) /* | X | X | X */ -#define ZEND_ACC_PRIVATE (1 << 2) /* | X | X | X */ -/* | | | */ -/* Property or method overrides private one | | | */ -#define ZEND_ACC_CHANGED (1 << 3) /* | X | X | */ -/* | | | */ -/* Staic method or property | | | */ -#define ZEND_ACC_STATIC (1 << 4) /* | X | X | */ -/* | | | */ -/* Final class or method | | | */ -#define ZEND_ACC_FINAL (1 << 5) /* X | X | | */ -/* | | | */ -/* Abstract method | | | */ -#define ZEND_ACC_ABSTRACT (1 << 6) /* X | X | | */ -#define ZEND_ACC_EXPLICIT_ABSTRACT_CLASS (1 << 6) /* X | | | */ -/* | | | */ -/* Immutable op_array and class_entries | | | */ -/* (implemented only for lazy loading of op_arrays) | | | */ -#define ZEND_ACC_IMMUTABLE (1 << 7) /* X | X | | */ -/* | | | */ -/* Function has typed arguments / class has typed props | | | */ -#define ZEND_ACC_HAS_TYPE_HINTS (1 << 8) /* X | X | | */ -/* | | | */ -/* Top-level class or function declaration | | | */ -#define ZEND_ACC_TOP_LEVEL (1 << 9) /* X | X | | */ -/* | | | */ -/* op_array or class is preloaded | | | */ -#define ZEND_ACC_PRELOADED (1 << 10) /* X | X | | */ -/* | | | */ -/* Class Flags (unused: 24...) | | | */ -/* =========== | | | */ -/* | | | */ -/* Special class types | | | */ -#define ZEND_ACC_INTERFACE (1 << 0) /* X | | | */ -#define ZEND_ACC_TRAIT (1 << 1) /* X | | | */ -#define ZEND_ACC_ANON_CLASS (1 << 2) /* X | | | */ -/* | | | */ -/* Class linked with parent, interfacs and traits | | | */ -#define ZEND_ACC_LINKED (1 << 3) /* X | | | */ -/* | | | */ -/* class is abstarct, since it is set by any | | | */ -/* abstract method | | | */ -#define ZEND_ACC_IMPLICIT_ABSTRACT_CLASS (1 << 4) /* X | | | */ -/* | | | */ -/* Class has magic methods __get/__set/__unset/ | | | */ -/* __isset that use guards | | | */ -#define ZEND_ACC_USE_GUARDS (1 << 11) /* X | | | */ -/* | | | */ -/* Class constants updated | | | */ -#define ZEND_ACC_CONSTANTS_UPDATED (1 << 12) /* X | | | */ -/* | | | */ -/* Class extends another class | | | */ -#define ZEND_ACC_INHERITED (1 << 13) /* X | | | */ -/* | | | */ -/* Class implements interface(s) | | | */ -#define ZEND_ACC_IMPLEMENT_INTERFACES (1 << 14) /* X | | | */ -/* | | | */ -/* Class uses trait(s) | | | */ -#define ZEND_ACC_IMPLEMENT_TRAITS (1 << 15) /* X | | | */ -/* | | | */ -/* User class has methods with static variables | | | */ -#define ZEND_HAS_STATIC_IN_METHODS (1 << 16) /* X | | | */ -/* | | | */ -/* Whether all property types are resolved to CEs | | | */ -#define ZEND_ACC_PROPERTY_TYPES_RESOLVED (1 << 17) /* X | | | */ -/* | | | */ -/* Children must reuse parent get_iterator() | | | */ -#define ZEND_ACC_REUSE_GET_ITERATOR (1 << 18) /* X | | | */ -/* | | | */ -/* Parent class is resolved (CE). | | | */ -#define ZEND_ACC_RESOLVED_PARENT (1 << 19) /* X | | | */ -/* | | | */ -/* Interfaces are resolved (CEs). | | | */ -#define ZEND_ACC_RESOLVED_INTERFACES (1 << 20) /* X | | | */ -/* | | | */ -/* Class has unresolved variance obligations. | | | */ -#define ZEND_ACC_UNRESOLVED_VARIANCE (1 << 21) /* X | | | */ -/* | | | */ -/* Class is linked apart from variance obligations. | | | */ -#define ZEND_ACC_NEARLY_LINKED (1 << 22) /* X | | | */ -/* | | | */ -/* Whether this class was used in its unlinked state. | | | */ -#define ZEND_ACC_HAS_UNLINKED_USES (1 << 23) /* X | | | */ -/* | | | */ -/* Function Flags (unused: 23, 26) | | | */ -/* ============== | | | */ -/* | | | */ -/* deprecation flag | | | */ -#define ZEND_ACC_DEPRECATED (1 << 11) /* | X | | */ -/* | | | */ -/* Function returning by reference | | | */ -#define ZEND_ACC_RETURN_REFERENCE (1 << 12) /* | X | | */ -/* | | | */ -/* Function has a return type | | | */ -#define ZEND_ACC_HAS_RETURN_TYPE (1 << 13) /* | X | | */ -/* | | | */ -/* Function with variable number of arguments | | | */ -#define ZEND_ACC_VARIADIC (1 << 14) /* | X | | */ -/* | | | */ -/* op_array has finally blocks (user only) | | | */ -#define ZEND_ACC_HAS_FINALLY_BLOCK (1 << 15) /* | X | | */ -/* | | | */ -/* "main" op_array with | | | */ -/* ZEND_DECLARE_CLASS_DELAYED opcodes | | | */ -#define ZEND_ACC_EARLY_BINDING (1 << 16) /* | X | | */ -/* | | | */ -/* method flag (bc only), any method that has this | | | */ -/* flag can be used statically and non statically. | | | */ -#define ZEND_ACC_ALLOW_STATIC (1 << 17) /* | X | | */ -/* | | | */ -/* call through user function trampoline. e.g. | | | */ -/* __call, __callstatic | | | */ -#define ZEND_ACC_CALL_VIA_TRAMPOLINE (1 << 18) /* | X | | */ -/* | | | */ -/* disable inline caching | | | */ -#define ZEND_ACC_NEVER_CACHE (1 << 19) /* | X | | */ -/* | | | */ -/* Closure related | | | */ -#define ZEND_ACC_CLOSURE (1 << 20) /* | X | | */ -#define ZEND_ACC_FAKE_CLOSURE (1 << 21) /* | X | | */ -/* | | | */ -/* run_time_cache allocated on heap (user only) | | | */ -#define ZEND_ACC_HEAP_RT_CACHE (1 << 22) /* | X | | */ -/* | | | */ -/* method flag used by Closure::__invoke() (int only) | | | */ -#define ZEND_ACC_USER_ARG_INFO (1 << 22) /* | X | | */ -/* | | | */ -#define ZEND_ACC_GENERATOR (1 << 24) /* | X | | */ -/* | | | */ -/* function was processed by pass two (user only) | | | */ -#define ZEND_ACC_DONE_PASS_TWO (1 << 25) /* | X | | */ -/* | | | */ -/* internal function is allocated at arena (int only) | | | */ -#define ZEND_ACC_ARENA_ALLOCATED (1 << 25) /* | X | | */ -/* | | | */ -/* op_array is a clone of trait method | | | */ -#define ZEND_ACC_TRAIT_CLONE (1 << 27) /* | X | | */ -/* | | | */ -/* functions is a constructor | | | */ -#define ZEND_ACC_CTOR (1 << 28) /* | X | | */ -/* | | | */ -/* function is a destructor | | | */ -#define ZEND_ACC_DTOR (1 << 29) /* | X | | */ -/* | | | */ -/* closure uses $this | | | */ -#define ZEND_ACC_USES_THIS (1 << 30) /* | X | | */ -/* | | | */ -/* op_array uses strict mode types | | | */ -#define ZEND_ACC_STRICT_TYPES (1U << 31) /* | X | | */ - - -#define ZEND_ACC_PPP_MASK (ZEND_ACC_PUBLIC | ZEND_ACC_PROTECTED | ZEND_ACC_PRIVATE) - -/* call through internal function handler. e.g. Closure::invoke() */ -#define ZEND_ACC_CALL_VIA_HANDLER ZEND_ACC_CALL_VIA_TRAMPOLINE - -char *zend_visibility_string(uint32_t fn_flags); - -typedef struct _zend_property_info { - uint32_t offset; /* property offset for object properties or - property index for static properties */ - uint32_t flags; - zend_string *name; - zend_string *doc_comment; - zend_class_entry *ce; - zend_type type; -} zend_property_info; - -#define OBJ_PROP(obj, offset) \ - ((zval*)((char*)(obj) + offset)) -#define OBJ_PROP_NUM(obj, num) \ - (&(obj)->properties_table[(num)]) -#define OBJ_PROP_TO_OFFSET(num) \ - ((uint32_t)(XtOffsetOf(zend_object, properties_table) + sizeof(zval) * (num))) -#define OBJ_PROP_TO_NUM(offset) \ - ((offset - OBJ_PROP_TO_OFFSET(0)) / sizeof(zval)) - -typedef struct _zend_class_constant { - zval value; /* access flags are stored in reserved: zval.u2.access_flags */ - zend_string *doc_comment; - zend_class_entry *ce; -} zend_class_constant; - -/* arg_info for internal functions */ -typedef struct _zend_internal_arg_info { - const char *name; - zend_type type; - zend_uchar pass_by_reference; - zend_bool is_variadic; -} zend_internal_arg_info; - -/* arg_info for user functions */ -typedef struct _zend_arg_info { - zend_string *name; - zend_type type; - zend_uchar pass_by_reference; - zend_bool is_variadic; -} zend_arg_info; - -/* the following structure repeats the layout of zend_internal_arg_info, - * but its fields have different meaning. It's used as the first element of - * arg_info array to define properties of internal functions. - * It's also used for the return type. - */ -typedef struct _zend_internal_function_info { - zend_uintptr_t required_num_args; - zend_type type; - zend_bool return_reference; - zend_bool _is_variadic; -} zend_internal_function_info; - -struct _zend_op_array { - /* Common elements */ - zend_uchar type; - zend_uchar arg_flags[3]; /* bitset of arg_info.pass_by_reference */ - uint32_t fn_flags; - zend_string *function_name; - zend_class_entry *scope; - zend_function *prototype; - uint32_t num_args; - uint32_t required_num_args; - zend_arg_info *arg_info; - /* END of common elements */ - - int cache_size; /* number of run_time_cache_slots * sizeof(void*) */ - int last_var; /* number of CV variables */ - uint32_t T; /* number of temporary variables */ - uint32_t last; /* number of opcodes */ - - zend_op *opcodes; - ZEND_MAP_PTR_DEF(void **, run_time_cache); - ZEND_MAP_PTR_DEF(HashTable *, static_variables_ptr); - HashTable *static_variables; - zend_string **vars; /* names of CV variables */ - - uint32_t *refcount; - - int last_live_range; - int last_try_catch; - zend_live_range *live_range; - zend_try_catch_element *try_catch_array; - - zend_string *filename; - uint32_t line_start; - uint32_t line_end; - zend_string *doc_comment; - - int last_literal; - zval *literals; - - void *reserved[ZEND_MAX_RESERVED_RESOURCES]; -}; - - -#define ZEND_RETURN_VALUE 0 -#define ZEND_RETURN_REFERENCE 1 - -/* zend_internal_function_handler */ -typedef void (ZEND_FASTCALL *zif_handler)(INTERNAL_FUNCTION_PARAMETERS); - -typedef struct _zend_internal_function { - /* Common elements */ - zend_uchar type; - zend_uchar arg_flags[3]; /* bitset of arg_info.pass_by_reference */ - uint32_t fn_flags; - zend_string* function_name; - zend_class_entry *scope; - zend_function *prototype; - uint32_t num_args; - uint32_t required_num_args; - zend_internal_arg_info *arg_info; - /* END of common elements */ - - zif_handler handler; - struct _zend_module_entry *module; - void *reserved[ZEND_MAX_RESERVED_RESOURCES]; -} zend_internal_function; - -#define ZEND_FN_SCOPE_NAME(function) ((function) && (function)->common.scope ? ZSTR_VAL((function)->common.scope->name) : "") - -union _zend_function { - zend_uchar type; /* MUST be the first element of this struct! */ - uint32_t quick_arg_flags; - - struct { - zend_uchar type; /* never used */ - zend_uchar arg_flags[3]; /* bitset of arg_info.pass_by_reference */ - uint32_t fn_flags; - zend_string *function_name; - zend_class_entry *scope; - zend_function *prototype; - uint32_t num_args; - uint32_t required_num_args; - zend_arg_info *arg_info; - } common; - - zend_op_array op_array; - zend_internal_function internal_function; -}; - -struct _zend_execute_data { - const zend_op *opline; /* executed opline */ - zend_execute_data *call; /* current call */ - zval *return_value; - zend_function *func; /* executed function */ - zval This; /* this + call_info + num_args */ - zend_execute_data *prev_execute_data; - zend_array *symbol_table; - void **run_time_cache; /* cache op_array->run_time_cache */ -}; - -#define ZEND_CALL_HAS_THIS IS_OBJECT_EX - -/* Top 16 bits of Z_TYPE_INFO(EX(This)) are used as call_info flags */ -#define ZEND_CALL_FUNCTION (0 << 16) -#define ZEND_CALL_CODE (1 << 16) -#define ZEND_CALL_NESTED (0 << 17) -#define ZEND_CALL_TOP (1 << 17) -#define ZEND_CALL_ALLOCATED (1 << 18) -#define ZEND_CALL_FREE_EXTRA_ARGS (1 << 19) -#define ZEND_CALL_HAS_SYMBOL_TABLE (1 << 20) -#define ZEND_CALL_RELEASE_THIS (1 << 21) -#define ZEND_CALL_CLOSURE (1 << 22) -#define ZEND_CALL_FAKE_CLOSURE (1 << 23) -#define ZEND_CALL_GENERATOR (1 << 24) -#define ZEND_CALL_DYNAMIC (1 << 25) -#define ZEND_CALL_SEND_ARG_BY_REF (1u << 31) - -#define ZEND_CALL_NESTED_FUNCTION (ZEND_CALL_FUNCTION | ZEND_CALL_NESTED) -#define ZEND_CALL_NESTED_CODE (ZEND_CALL_CODE | ZEND_CALL_NESTED) -#define ZEND_CALL_TOP_FUNCTION (ZEND_CALL_TOP | ZEND_CALL_FUNCTION) -#define ZEND_CALL_TOP_CODE (ZEND_CALL_CODE | ZEND_CALL_TOP) - -#define ZEND_CALL_INFO(call) \ - Z_TYPE_INFO((call)->This) - -#define ZEND_CALL_KIND_EX(call_info) \ - (call_info & (ZEND_CALL_CODE | ZEND_CALL_TOP)) - -#define ZEND_CALL_KIND(call) \ - ZEND_CALL_KIND_EX(ZEND_CALL_INFO(call)) - -#define ZEND_ADD_CALL_FLAG_EX(call_info, flag) do { \ - call_info |= (flag); \ - } while (0) - -#define ZEND_DEL_CALL_FLAG_EX(call_info, flag) do { \ - call_info &= ~(flag); \ - } while (0) - -#define ZEND_ADD_CALL_FLAG(call, flag) do { \ - ZEND_ADD_CALL_FLAG_EX(Z_TYPE_INFO((call)->This), flag); \ - } while (0) - -#define ZEND_DEL_CALL_FLAG(call, flag) do { \ - ZEND_DEL_CALL_FLAG_EX(Z_TYPE_INFO((call)->This), flag); \ - } while (0) - -#define ZEND_CALL_NUM_ARGS(call) \ - (call)->This.u2.num_args - -#define ZEND_CALL_FRAME_SLOT \ - ((int)((ZEND_MM_ALIGNED_SIZE(sizeof(zend_execute_data)) + ZEND_MM_ALIGNED_SIZE(sizeof(zval)) - 1) / ZEND_MM_ALIGNED_SIZE(sizeof(zval)))) - -#define ZEND_CALL_VAR(call, n) \ - ((zval*)(((char*)(call)) + ((int)(n)))) - -#define ZEND_CALL_VAR_NUM(call, n) \ - (((zval*)(call)) + (ZEND_CALL_FRAME_SLOT + ((int)(n)))) - -#define ZEND_CALL_ARG(call, n) \ - ZEND_CALL_VAR_NUM(call, ((int)(n)) - 1) - -#define EX(element) ((execute_data)->element) - -#define EX_CALL_INFO() ZEND_CALL_INFO(execute_data) -#define EX_CALL_KIND() ZEND_CALL_KIND(execute_data) -#define EX_NUM_ARGS() ZEND_CALL_NUM_ARGS(execute_data) - -#define ZEND_CALL_USES_STRICT_TYPES(call) \ - (((call)->func->common.fn_flags & ZEND_ACC_STRICT_TYPES) != 0) - -#define EX_USES_STRICT_TYPES() \ - ZEND_CALL_USES_STRICT_TYPES(execute_data) - -#define ZEND_ARG_USES_STRICT_TYPES() \ - (EG(current_execute_data)->prev_execute_data && \ - EG(current_execute_data)->prev_execute_data->func && \ - ZEND_CALL_USES_STRICT_TYPES(EG(current_execute_data)->prev_execute_data)) - -#define ZEND_RET_USES_STRICT_TYPES() \ - ZEND_CALL_USES_STRICT_TYPES(EG(current_execute_data)) - -#define EX_VAR(n) ZEND_CALL_VAR(execute_data, n) -#define EX_VAR_NUM(n) ZEND_CALL_VAR_NUM(execute_data, n) - -#define EX_VAR_TO_NUM(n) ((uint32_t)(ZEND_CALL_VAR(NULL, n) - ZEND_CALL_VAR_NUM(NULL, 0))) - -#define ZEND_OPLINE_TO_OFFSET(opline, target) \ - ((char*)(target) - (char*)(opline)) - -#define ZEND_OPLINE_NUM_TO_OFFSET(op_array, opline, opline_num) \ - ((char*)&(op_array)->opcodes[opline_num] - (char*)(opline)) - -#define ZEND_OFFSET_TO_OPLINE(base, offset) \ - ((zend_op*)(((char*)(base)) + (int)offset)) - -#define ZEND_OFFSET_TO_OPLINE_NUM(op_array, base, offset) \ - (ZEND_OFFSET_TO_OPLINE(base, offset) - op_array->opcodes) - -#if ZEND_USE_ABS_JMP_ADDR - -/* run-time jump target */ -# define OP_JMP_ADDR(opline, node) \ - (node).jmp_addr - -# define ZEND_SET_OP_JMP_ADDR(opline, node, val) do { \ - (node).jmp_addr = (val); \ - } while (0) - -/* convert jump target from compile-time to run-time */ -# define ZEND_PASS_TWO_UPDATE_JMP_TARGET(op_array, opline, node) do { \ - (node).jmp_addr = (op_array)->opcodes + (node).opline_num; \ - } while (0) - -/* convert jump target back from run-time to compile-time */ -# define ZEND_PASS_TWO_UNDO_JMP_TARGET(op_array, opline, node) do { \ - (node).opline_num = (node).jmp_addr - (op_array)->opcodes; \ - } while (0) - -#else - -/* run-time jump target */ -# define OP_JMP_ADDR(opline, node) \ - ZEND_OFFSET_TO_OPLINE(opline, (node).jmp_offset) - -# define ZEND_SET_OP_JMP_ADDR(opline, node, val) do { \ - (node).jmp_offset = ZEND_OPLINE_TO_OFFSET(opline, val); \ - } while (0) - -/* convert jump target from compile-time to run-time */ -# define ZEND_PASS_TWO_UPDATE_JMP_TARGET(op_array, opline, node) do { \ - (node).jmp_offset = ZEND_OPLINE_NUM_TO_OFFSET(op_array, opline, (node).opline_num); \ - } while (0) - -/* convert jump target back from run-time to compile-time */ -# define ZEND_PASS_TWO_UNDO_JMP_TARGET(op_array, opline, node) do { \ - (node).opline_num = ZEND_OFFSET_TO_OPLINE_NUM(op_array, opline, (node).jmp_offset); \ - } while (0) - -#endif - -/* constant-time constant */ -# define CT_CONSTANT_EX(op_array, num) \ - ((op_array)->literals + (num)) - -# define CT_CONSTANT(node) \ - CT_CONSTANT_EX(CG(active_op_array), (node).constant) - -#if ZEND_USE_ABS_CONST_ADDR - -/* run-time constant */ -# define RT_CONSTANT(opline, node) \ - (node).zv - -/* convert constant from compile-time to run-time */ -# define ZEND_PASS_TWO_UPDATE_CONSTANT(op_array, opline, node) do { \ - (node).zv = CT_CONSTANT_EX(op_array, (node).constant); \ - } while (0) - -#else - -/* At run-time, constants are allocated together with op_array->opcodes - * and addressed relatively to current opline. - */ - -/* run-time constant */ -# define RT_CONSTANT(opline, node) \ - ((zval*)(((char*)(opline)) + (int32_t)(node).constant)) - -/* convert constant from compile-time to run-time */ -# define ZEND_PASS_TWO_UPDATE_CONSTANT(op_array, opline, node) do { \ - (node).constant = \ - (((char*)CT_CONSTANT_EX(op_array, (node).constant)) - \ - ((char*)opline)); \ - } while (0) - -#endif - -/* convert constant back from run-time to compile-time */ -#define ZEND_PASS_TWO_UNDO_CONSTANT(op_array, opline, node) do { \ - (node).constant = RT_CONSTANT(opline, node) - (op_array)->literals; \ - } while (0) - -#define RUN_TIME_CACHE(op_array) \ - ZEND_MAP_PTR_GET((op_array)->run_time_cache) - -#define ZEND_OP_ARRAY_EXTENSION(op_array, handle) \ - ((void**)RUN_TIME_CACHE(op_array))[handle] - -#define IS_UNUSED 0 /* Unused operand */ -#define IS_CONST (1<<0) -#define IS_TMP_VAR (1<<1) -#define IS_VAR (1<<2) -#define IS_CV (1<<3) /* Compiled variable */ - -#define ZEND_EXTRA_VALUE 1 - -#include "zend_globals.h" - -BEGIN_EXTERN_C() - -void init_compiler(void); -void shutdown_compiler(void); -void zend_init_compiler_data_structures(void); - -void zend_oparray_context_begin(zend_oparray_context *prev_context); -void zend_oparray_context_end(zend_oparray_context *prev_context); -void zend_file_context_begin(zend_file_context *prev_context); -void zend_file_context_end(zend_file_context *prev_context); - -extern ZEND_API zend_op_array *(*zend_compile_file)(zend_file_handle *file_handle, int type); -extern ZEND_API zend_op_array *(*zend_compile_string)(zval *source_string, char *filename); - -ZEND_API int ZEND_FASTCALL lex_scan(zval *zendlval, zend_parser_stack_elem *elem); -void startup_scanner(void); -void shutdown_scanner(void); - -ZEND_API zend_string *zend_set_compiled_filename(zend_string *new_compiled_filename); -ZEND_API void zend_restore_compiled_filename(zend_string *original_compiled_filename); -ZEND_API zend_string *zend_get_compiled_filename(void); -ZEND_API int zend_get_compiled_lineno(void); -ZEND_API size_t zend_get_scanned_file_offset(void); - -ZEND_API zend_string *zend_get_compiled_variable_name(const zend_op_array *op_array, uint32_t var); - -#ifdef ZTS -const char *zend_get_zendtext(void); -int zend_get_zendleng(void); -#endif - -typedef int (ZEND_FASTCALL *unary_op_type)(zval *, zval *); -typedef int (ZEND_FASTCALL *binary_op_type)(zval *, zval *, zval *); - -ZEND_API unary_op_type get_unary_op(int opcode); -ZEND_API binary_op_type get_binary_op(int opcode); - -void zend_stop_lexing(void); -void zend_emit_final_return(int return_one); - -/* Used during AST construction */ -zend_ast *zend_ast_append_str(zend_ast *left, zend_ast *right); -zend_ast *zend_negate_num_string(zend_ast *ast); -uint32_t zend_add_class_modifier(uint32_t flags, uint32_t new_flag); -uint32_t zend_add_member_modifier(uint32_t flags, uint32_t new_flag); -zend_bool zend_handle_encoding_declaration(zend_ast *ast); - -/* parser-driven code generators */ -void zend_do_free(znode *op1); - -ZEND_API int do_bind_function(zval *lcname); -ZEND_API int do_bind_class(zval *lcname, zend_string *lc_parent_name); -ZEND_API uint32_t zend_build_delayed_early_binding_list(const zend_op_array *op_array); -ZEND_API void zend_do_delayed_early_binding(zend_op_array *op_array, uint32_t first_early_binding_opline); - -void zend_do_extended_info(void); -void zend_do_extended_fcall_begin(void); -void zend_do_extended_fcall_end(void); - -void zend_verify_namespace(void); - -void zend_resolve_goto_label(zend_op_array *op_array, zend_op *opline); - -ZEND_API void function_add_ref(zend_function *function); - -#define INITIAL_OP_ARRAY_SIZE 64 - - -/* helper functions in zend_language_scanner.l */ -ZEND_API zend_op_array *compile_file(zend_file_handle *file_handle, int type); -ZEND_API zend_op_array *compile_string(zval *source_string, char *filename); -ZEND_API zend_op_array *compile_filename(int type, zval *filename); -ZEND_API int zend_execute_scripts(int type, zval *retval, int file_count, ...); -ZEND_API int open_file_for_scanning(zend_file_handle *file_handle); -ZEND_API void init_op_array(zend_op_array *op_array, zend_uchar type, int initial_ops_size); -ZEND_API void destroy_op_array(zend_op_array *op_array); -ZEND_API void zend_destroy_file_handle(zend_file_handle *file_handle); -ZEND_API void zend_cleanup_internal_class_data(zend_class_entry *ce); -ZEND_API void zend_cleanup_internal_classes(void); - -ZEND_API ZEND_COLD void zend_user_exception_handler(void); - -#define zend_try_exception_handler() do { \ - if (UNEXPECTED(EG(exception))) { \ - if (Z_TYPE(EG(user_exception_handler)) != IS_UNDEF) { \ - zend_user_exception_handler(); \ - } \ - } \ - } while (0) - -void zend_free_internal_arg_info(zend_internal_function *function); -ZEND_API void destroy_zend_function(zend_function *function); -ZEND_API void zend_function_dtor(zval *zv); -ZEND_API void destroy_zend_class(zval *zv); -void zend_class_add_ref(zval *zv); - -ZEND_API zend_string *zend_mangle_property_name(const char *src1, size_t src1_length, const char *src2, size_t src2_length, int internal); -#define zend_unmangle_property_name(mangled_property, class_name, prop_name) \ - zend_unmangle_property_name_ex(mangled_property, class_name, prop_name, NULL) -ZEND_API int zend_unmangle_property_name_ex(const zend_string *name, const char **class_name, const char **prop_name, size_t *prop_len); - -static zend_always_inline const char *zend_get_unmangled_property_name(const zend_string *mangled_prop) { - const char *class_name, *prop_name; - zend_unmangle_property_name(mangled_prop, &class_name, &prop_name); - return prop_name; -} - -#define ZEND_FUNCTION_DTOR zend_function_dtor -#define ZEND_CLASS_DTOR destroy_zend_class - -typedef zend_bool (*zend_needs_live_range_cb)(zend_op_array *op_array, zend_op *opline); -ZEND_API void zend_recalc_live_ranges( - zend_op_array *op_array, zend_needs_live_range_cb needs_live_range); - -ZEND_API int pass_two(zend_op_array *op_array); -ZEND_API zend_bool zend_is_compiling(void); -ZEND_API char *zend_make_compiled_string_description(const char *name); -ZEND_API void zend_initialize_class_data(zend_class_entry *ce, zend_bool nullify_handlers); -uint32_t zend_get_class_fetch_type(zend_string *name); -ZEND_API zend_uchar zend_get_call_op(const zend_op *init_op, zend_function *fbc); -ZEND_API int zend_is_smart_branch(zend_op *opline); - -typedef zend_bool (*zend_auto_global_callback)(zend_string *name); -typedef struct _zend_auto_global { - zend_string *name; - zend_auto_global_callback auto_global_callback; - zend_bool jit; - zend_bool armed; -} zend_auto_global; - -ZEND_API int zend_register_auto_global(zend_string *name, zend_bool jit, zend_auto_global_callback auto_global_callback); -ZEND_API void zend_activate_auto_globals(void); -ZEND_API zend_bool zend_is_auto_global(zend_string *name); -ZEND_API zend_bool zend_is_auto_global_str(char *name, size_t len); -ZEND_API size_t zend_dirname(char *path, size_t len); -ZEND_API void zend_set_function_arg_flags(zend_function *func); - -int ZEND_FASTCALL zendlex(zend_parser_stack_elem *elem); - -void zend_assert_valid_class_name(const zend_string *const_name); - -/* BEGIN: OPCODES */ - -#include "zend_vm_opcodes.h" - -/* END: OPCODES */ - -/* class fetches */ -#define ZEND_FETCH_CLASS_DEFAULT 0 -#define ZEND_FETCH_CLASS_SELF 1 -#define ZEND_FETCH_CLASS_PARENT 2 -#define ZEND_FETCH_CLASS_STATIC 3 -#define ZEND_FETCH_CLASS_AUTO 4 -#define ZEND_FETCH_CLASS_INTERFACE 5 -#define ZEND_FETCH_CLASS_TRAIT 6 -#define ZEND_FETCH_CLASS_MASK 0x0f -#define ZEND_FETCH_CLASS_NO_AUTOLOAD 0x80 -#define ZEND_FETCH_CLASS_SILENT 0x0100 -#define ZEND_FETCH_CLASS_EXCEPTION 0x0200 -#define ZEND_FETCH_CLASS_ALLOW_UNLINKED 0x0400 -#define ZEND_FETCH_CLASS_ALLOW_NEARLY_LINKED 0x0800 - -#define ZEND_PARAM_REF (1<<0) -#define ZEND_PARAM_VARIADIC (1<<1) - -#define ZEND_NAME_FQ 0 -#define ZEND_NAME_NOT_FQ 1 -#define ZEND_NAME_RELATIVE 2 - -#define ZEND_TYPE_NULLABLE (1<<8) - -#define ZEND_ARRAY_SYNTAX_LIST 1 /* list() */ -#define ZEND_ARRAY_SYNTAX_LONG 2 /* array() */ -#define ZEND_ARRAY_SYNTAX_SHORT 3 /* [] */ - -/* var status for backpatching */ -#define BP_VAR_R 0 -#define BP_VAR_W 1 -#define BP_VAR_RW 2 -#define BP_VAR_IS 3 -#define BP_VAR_FUNC_ARG 4 -#define BP_VAR_UNSET 5 - -#define ZEND_INTERNAL_FUNCTION 1 -#define ZEND_USER_FUNCTION 2 -#define ZEND_OVERLOADED_FUNCTION 3 -#define ZEND_EVAL_CODE 4 -#define ZEND_OVERLOADED_FUNCTION_TEMPORARY 5 - -/* A quick check (type == ZEND_USER_FUNCTION || type == ZEND_EVAL_CODE) */ -#define ZEND_USER_CODE(type) ((type & 1) == 0) - -#define ZEND_INTERNAL_CLASS 1 -#define ZEND_USER_CLASS 2 - -#define ZEND_EVAL (1<<0) -#define ZEND_INCLUDE (1<<1) -#define ZEND_INCLUDE_ONCE (1<<2) -#define ZEND_REQUIRE (1<<3) -#define ZEND_REQUIRE_ONCE (1<<4) - -/* global/local fetches */ -#define ZEND_FETCH_GLOBAL (1<<1) -#define ZEND_FETCH_LOCAL (1<<2) -#define ZEND_FETCH_GLOBAL_LOCK (1<<3) - -#define ZEND_FETCH_TYPE_MASK 0xe - -/* Only one of these can ever be in use */ -#define ZEND_FETCH_REF 1 -#define ZEND_FETCH_DIM_WRITE 2 -#define ZEND_FETCH_OBJ_WRITE 3 -#define ZEND_FETCH_OBJ_FLAGS 3 - -#define ZEND_ISEMPTY (1<<0) - -#define ZEND_LAST_CATCH (1<<0) - -#define ZEND_FREE_ON_RETURN (1<<0) -#define ZEND_FREE_SWITCH (1<<1) - -#define ZEND_SEND_BY_VAL 0u -#define ZEND_SEND_BY_REF 1u -#define ZEND_SEND_PREFER_REF 2u - -#define ZEND_DIM_IS (1 << 0) /* isset fetch needed for null coalesce */ -#define ZEND_DIM_ALTERNATIVE_SYNTAX (1 << 1) /* deprecated curly brace usage */ - -#define IS_CONSTANT_UNQUALIFIED 0x010 -#define IS_CONSTANT_CLASS 0x080 /* __CLASS__ in trait */ -#define IS_CONSTANT_IN_NAMESPACE 0x100 - -static zend_always_inline int zend_check_arg_send_type(const zend_function *zf, uint32_t arg_num, uint32_t mask) -{ - arg_num--; - if (UNEXPECTED(arg_num >= zf->common.num_args)) { - if (EXPECTED((zf->common.fn_flags & ZEND_ACC_VARIADIC) == 0)) { - return 0; - } - arg_num = zf->common.num_args; - } - return UNEXPECTED((zf->common.arg_info[arg_num].pass_by_reference & mask) != 0); -} - -#define ARG_MUST_BE_SENT_BY_REF(zf, arg_num) \ - zend_check_arg_send_type(zf, arg_num, ZEND_SEND_BY_REF) - -#define ARG_SHOULD_BE_SENT_BY_REF(zf, arg_num) \ - zend_check_arg_send_type(zf, arg_num, ZEND_SEND_BY_REF|ZEND_SEND_PREFER_REF) - -#define ARG_MAY_BE_SENT_BY_REF(zf, arg_num) \ - zend_check_arg_send_type(zf, arg_num, ZEND_SEND_PREFER_REF) - -/* Quick API to check first 12 arguments */ -#define MAX_ARG_FLAG_NUM 12 - -#ifdef WORDS_BIGENDIAN -# define ZEND_SET_ARG_FLAG(zf, arg_num, mask) do { \ - (zf)->quick_arg_flags |= ((mask) << ((arg_num) - 1) * 2); \ - } while (0) -# define ZEND_CHECK_ARG_FLAG(zf, arg_num, mask) \ - (((zf)->quick_arg_flags >> (((arg_num) - 1) * 2)) & (mask)) -#else -# define ZEND_SET_ARG_FLAG(zf, arg_num, mask) do { \ - (zf)->quick_arg_flags |= (((mask) << 6) << (arg_num) * 2); \ - } while (0) -# define ZEND_CHECK_ARG_FLAG(zf, arg_num, mask) \ - (((zf)->quick_arg_flags >> (((arg_num) + 3) * 2)) & (mask)) -#endif - -#define QUICK_ARG_MUST_BE_SENT_BY_REF(zf, arg_num) \ - ZEND_CHECK_ARG_FLAG(zf, arg_num, ZEND_SEND_BY_REF) - -#define QUICK_ARG_SHOULD_BE_SENT_BY_REF(zf, arg_num) \ - ZEND_CHECK_ARG_FLAG(zf, arg_num, ZEND_SEND_BY_REF|ZEND_SEND_PREFER_REF) - -#define QUICK_ARG_MAY_BE_SENT_BY_REF(zf, arg_num) \ - ZEND_CHECK_ARG_FLAG(zf, arg_num, ZEND_SEND_PREFER_REF) - -#define ZEND_RETURN_VAL 0 -#define ZEND_RETURN_REF 1 - -#define ZEND_BIND_VAL 0 -#define ZEND_BIND_REF 1 -#define ZEND_BIND_IMPLICIT 2 - -#define ZEND_RETURNS_FUNCTION (1<<0) -#define ZEND_RETURNS_VALUE (1<<1) - -#define ZEND_ARRAY_ELEMENT_REF (1<<0) -#define ZEND_ARRAY_NOT_PACKED (1<<1) -#define ZEND_ARRAY_SIZE_SHIFT 2 - -/* Attribute for ternary inside parentheses */ -#define ZEND_PARENTHESIZED_CONDITIONAL 1 - -/* For "use" AST nodes and the seen symbol table */ -#define ZEND_SYMBOL_CLASS (1<<0) -#define ZEND_SYMBOL_FUNCTION (1<<1) -#define ZEND_SYMBOL_CONST (1<<2) - -/* All increment opcodes are even (decrement are odd) */ -#define ZEND_IS_INCREMENT(opcode) (((opcode) & 1) == 0) - -#define ZEND_IS_BINARY_ASSIGN_OP_OPCODE(opcode) \ - (((opcode) >= ZEND_ADD) && ((opcode) <= ZEND_POW)) - -/* Pseudo-opcodes that are used only temporarily during compilation */ -#define ZEND_PARENTHESIZED_CONCAT 252 /* removed with PHP 8 */ -#define ZEND_GOTO 253 -#define ZEND_BRK 254 -#define ZEND_CONT 255 - -END_EXTERN_C() - -#define ZEND_CLONE_FUNC_NAME "__clone" -#define ZEND_CONSTRUCTOR_FUNC_NAME "__construct" -#define ZEND_DESTRUCTOR_FUNC_NAME "__destruct" -#define ZEND_GET_FUNC_NAME "__get" -#define ZEND_SET_FUNC_NAME "__set" -#define ZEND_UNSET_FUNC_NAME "__unset" -#define ZEND_ISSET_FUNC_NAME "__isset" -#define ZEND_CALL_FUNC_NAME "__call" -#define ZEND_CALLSTATIC_FUNC_NAME "__callstatic" -#define ZEND_TOSTRING_FUNC_NAME "__tostring" -#define ZEND_AUTOLOAD_FUNC_NAME "__autoload" -#define ZEND_INVOKE_FUNC_NAME "__invoke" -#define ZEND_DEBUGINFO_FUNC_NAME "__debuginfo" - -/* The following constants may be combined in CG(compiler_options) - * to change the default compiler behavior */ - -/* generate extended debug information */ -#define ZEND_COMPILE_EXTENDED_STMT (1<<0) -#define ZEND_COMPILE_EXTENDED_FCALL (1<<1) -#define ZEND_COMPILE_EXTENDED_INFO (ZEND_COMPILE_EXTENDED_STMT|ZEND_COMPILE_EXTENDED_FCALL) - -/* call op_array handler of extendions */ -#define ZEND_COMPILE_HANDLE_OP_ARRAY (1<<2) - -/* generate ZEND_INIT_FCALL_BY_NAME for internal functions instead of ZEND_INIT_FCALL */ -#define ZEND_COMPILE_IGNORE_INTERNAL_FUNCTIONS (1<<3) - -/* don't perform early binding for classes inherited form internal ones; - * in namespaces assume that internal class that doesn't exist at compile-time - * may apper in run-time */ -#define ZEND_COMPILE_IGNORE_INTERNAL_CLASSES (1<<4) - -/* generate ZEND_DECLARE_CLASS_DELAYED opcode to delay early binding */ -#define ZEND_COMPILE_DELAYED_BINDING (1<<5) - -/* disable constant substitution at compile-time */ -#define ZEND_COMPILE_NO_CONSTANT_SUBSTITUTION (1<<6) - -/* disable usage of builtin instruction for strlen() */ -#define ZEND_COMPILE_NO_BUILTIN_STRLEN (1<<7) - -/* disable substitution of persistent constants at compile-time */ -#define ZEND_COMPILE_NO_PERSISTENT_CONSTANT_SUBSTITUTION (1<<8) - -/* generate ZEND_INIT_FCALL_BY_NAME for userland functions instead of ZEND_INIT_FCALL */ -#define ZEND_COMPILE_IGNORE_USER_FUNCTIONS (1<<9) - -/* force ZEND_ACC_USE_GUARDS for all classes */ -#define ZEND_COMPILE_GUARDS (1<<10) - -/* disable builtin special case function calls */ -#define ZEND_COMPILE_NO_BUILTINS (1<<11) - -/* result of compilation may be stored in file cache */ -#define ZEND_COMPILE_WITH_FILE_CACHE (1<<12) - -/* ignore functions and classes declared in other files */ -#define ZEND_COMPILE_IGNORE_OTHER_FILES (1<<13) - -/* this flag is set when compiler invoked by opcache_compile_file() */ -#define ZEND_COMPILE_WITHOUT_EXECUTION (1<<14) - -/* this flag is set when compiler invoked during preloading */ -#define ZEND_COMPILE_PRELOAD (1<<15) - -/* disable jumptable optimization for switch statements */ -#define ZEND_COMPILE_NO_JUMPTABLES (1<<16) - -/* this flag is set when compiler invoked during preloading in separate process */ -#define ZEND_COMPILE_PRELOAD_IN_CHILD (1<<17) - -/* The default value for CG(compiler_options) */ -#define ZEND_COMPILE_DEFAULT ZEND_COMPILE_HANDLE_OP_ARRAY - -/* The default value for CG(compiler_options) during eval() */ -#define ZEND_COMPILE_DEFAULT_FOR_EVAL 0 - -ZEND_API zend_bool zend_binary_op_produces_numeric_string_error(uint32_t opcode, zval *op1, zval *op2); - -#endif /* ZEND_COMPILE_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_config.h b/7.4.27/mac/include/php/Zend/zend_config.h deleted file mode 100644 index 325c7b5..0000000 --- a/7.4.27/mac/include/php/Zend/zend_config.h +++ /dev/null @@ -1 +0,0 @@ -#include <../main/php_config.h> diff --git a/7.4.27/mac/include/php/Zend/zend_config.w32.h b/7.4.27/mac/include/php/Zend/zend_config.w32.h deleted file mode 100644 index 19a5165..0000000 --- a/7.4.27/mac/include/php/Zend/zend_config.w32.h +++ /dev/null @@ -1,82 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_CONFIG_W32_H -#define ZEND_CONFIG_W32_H - -#include <../main/config.w32.h> - -#define _CRTDBG_MAP_ALLOC - -#include -#include -#include - -#include - -#ifndef ZEND_INCLUDE_FULL_WINDOWS_HEADERS -#define WIN32_LEAN_AND_MEAN -#endif -#include -#include - -#include - -#define HAVE_STDIOSTR_H 1 -#define HAVE_CLASS_ISTDIOSTREAM -#define istdiostream stdiostream - -#if _MSC_VER < 1900 -#define snprintf _snprintf -#endif -#define strcasecmp(s1, s2) _stricmp(s1, s2) -#define strncasecmp(s1, s2, n) _strnicmp(s1, s2, n) -#if defined(__cplusplus) && __cplusplus >= 201103L -extern "C++" { -#include -#define zend_isnan std::isnan -#define zend_isinf std::isinf -#define zend_finite std::isfinite -} -#else -#define zend_isinf(a) ((_fpclass(a) == _FPCLASS_PINF) || (_fpclass(a) == _FPCLASS_NINF)) -#define zend_finite(x) _finite(x) -#define zend_isnan(x) _isnan(x) -#endif - -#ifndef __cplusplus -/* This will cause the compilation process to be MUCH longer, but will generate - * a much quicker PHP binary - */ -#ifdef ZEND_WIN32_FORCE_INLINE -# undef inline -# define inline __forceinline -#endif -#endif - -#ifdef LIBZEND_EXPORTS -# define ZEND_API __declspec(dllexport) -#else -# define ZEND_API __declspec(dllimport) -#endif - -#define ZEND_DLEXPORT __declspec(dllexport) -#define ZEND_DLIMPORT __declspec(dllimport) - -#endif /* ZEND_CONFIG_W32_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_constants.h b/7.4.27/mac/include/php/Zend/zend_constants.h deleted file mode 100644 index ba0c798..0000000 --- a/7.4.27/mac/include/php/Zend/zend_constants.h +++ /dev/null @@ -1,96 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_CONSTANTS_H -#define ZEND_CONSTANTS_H - -#include "zend_globals.h" - -#define CONST_CS (1<<0) /* Case Sensitive */ -#define CONST_PERSISTENT (1<<1) /* Persistent */ -#define CONST_CT_SUBST (1<<2) /* Allow compile-time substitution */ -#define CONST_NO_FILE_CACHE (1<<3) /* Can't be saved in file cache */ - -#define PHP_USER_CONSTANT 0x7fffff /* a constant defined in user space */ - -/* Flag for zend_get_constant_ex(). Must not class with ZEND_FETCH_CLASS_* flags. */ -#define ZEND_GET_CONSTANT_NO_DEPRECATION_CHECK 0x1000 - -typedef struct _zend_constant { - zval value; - zend_string *name; -} zend_constant; - -#define ZEND_CONSTANT_FLAGS(c) \ - (Z_CONSTANT_FLAGS((c)->value) & 0xff) - -#define ZEND_CONSTANT_MODULE_NUMBER(c) \ - (Z_CONSTANT_FLAGS((c)->value) >> 8) - -#define ZEND_CONSTANT_SET_FLAGS(c, _flags, _module_number) do { \ - Z_CONSTANT_FLAGS((c)->value) = \ - ((_flags) & 0xff) | ((_module_number) << 8); \ - } while (0) - -#define REGISTER_NULL_CONSTANT(name, flags) zend_register_null_constant((name), sizeof(name)-1, (flags), module_number) -#define REGISTER_BOOL_CONSTANT(name, bval, flags) zend_register_bool_constant((name), sizeof(name)-1, (bval), (flags), module_number) -#define REGISTER_LONG_CONSTANT(name, lval, flags) zend_register_long_constant((name), sizeof(name)-1, (lval), (flags), module_number) -#define REGISTER_DOUBLE_CONSTANT(name, dval, flags) zend_register_double_constant((name), sizeof(name)-1, (dval), (flags), module_number) -#define REGISTER_STRING_CONSTANT(name, str, flags) zend_register_string_constant((name), sizeof(name)-1, (str), (flags), module_number) -#define REGISTER_STRINGL_CONSTANT(name, str, len, flags) zend_register_stringl_constant((name), sizeof(name)-1, (str), (len), (flags), module_number) - -#define REGISTER_NS_NULL_CONSTANT(ns, name, flags) zend_register_null_constant(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name))-1, (flags), module_number) -#define REGISTER_NS_BOOL_CONSTANT(ns, name, bval, flags) zend_register_bool_constant(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name))-1, (bval), (flags), module_number) -#define REGISTER_NS_LONG_CONSTANT(ns, name, lval, flags) zend_register_long_constant(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name))-1, (lval), (flags), module_number) -#define REGISTER_NS_DOUBLE_CONSTANT(ns, name, dval, flags) zend_register_double_constant(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name))-1, (dval), (flags), module_number) -#define REGISTER_NS_STRING_CONSTANT(ns, name, str, flags) zend_register_string_constant(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name))-1, (str), (flags), module_number) -#define REGISTER_NS_STRINGL_CONSTANT(ns, name, str, len, flags) zend_register_stringl_constant(ZEND_NS_NAME(ns, name), sizeof(ZEND_NS_NAME(ns, name))-1, (str), (len), (flags), module_number) - -#define REGISTER_MAIN_NULL_CONSTANT(name, flags) zend_register_null_constant((name), sizeof(name)-1, (flags), 0) -#define REGISTER_MAIN_BOOL_CONSTANT(name, bval, flags) zend_register_bool_constant((name), sizeof(name)-1, (bval), (flags), 0) -#define REGISTER_MAIN_LONG_CONSTANT(name, lval, flags) zend_register_long_constant((name), sizeof(name)-1, (lval), (flags), 0) -#define REGISTER_MAIN_DOUBLE_CONSTANT(name, dval, flags) zend_register_double_constant((name), sizeof(name)-1, (dval), (flags), 0) -#define REGISTER_MAIN_STRING_CONSTANT(name, str, flags) zend_register_string_constant((name), sizeof(name)-1, (str), (flags), 0) -#define REGISTER_MAIN_STRINGL_CONSTANT(name, str, len, flags) zend_register_stringl_constant((name), sizeof(name)-1, (str), (len), (flags), 0) - -BEGIN_EXTERN_C() -void clean_module_constants(int module_number); -void free_zend_constant(zval *zv); -int zend_startup_constants(void); -int zend_shutdown_constants(void); -void zend_register_standard_constants(void); -ZEND_API int zend_verify_const_access(zend_class_constant *c, zend_class_entry *ce); -ZEND_API zval *zend_get_constant(zend_string *name); -ZEND_API zval *zend_get_constant_str(const char *name, size_t name_len); -ZEND_API zval *zend_get_constant_ex(zend_string *name, zend_class_entry *scope, uint32_t flags); -ZEND_API void zend_register_bool_constant(const char *name, size_t name_len, zend_bool bval, int flags, int module_number); -ZEND_API void zend_register_null_constant(const char *name, size_t name_len, int flags, int module_number); -ZEND_API void zend_register_long_constant(const char *name, size_t name_len, zend_long lval, int flags, int module_number); -ZEND_API void zend_register_double_constant(const char *name, size_t name_len, double dval, int flags, int module_number); -ZEND_API void zend_register_string_constant(const char *name, size_t name_len, char *strval, int flags, int module_number); -ZEND_API void zend_register_stringl_constant(const char *name, size_t name_len, char *strval, size_t strlen, int flags, int module_number); -ZEND_API int zend_register_constant(zend_constant *c); -#ifdef ZTS -void zend_copy_constants(HashTable *target, HashTable *sourc); -#endif -END_EXTERN_C() - -#define ZEND_CONSTANT_DTOR free_zend_constant - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_cpuinfo.h b/7.4.27/mac/include/php/Zend/zend_cpuinfo.h deleted file mode 100644 index c0949e3..0000000 --- a/7.4.27/mac/include/php/Zend/zend_cpuinfo.h +++ /dev/null @@ -1,209 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Xinchen Hui | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_CPU_INFO_H -#define ZEND_CPU_INFO_H - -#include "zend.h" - -#define ZEND_CPU_EBX_MASK (1<<30) -#define ZEND_CPU_EDX_MASK (1U<<31) - -typedef enum _zend_cpu_feature { - /* ECX */ - ZEND_CPU_FEATURE_SSE3 = (1<<0), - ZEND_CPU_FEATURE_PCLMULQDQ = (1<<1), - ZEND_CPU_FEATURE_DTES64 = (1<<2), - ZEND_CPU_FEATURE_MONITOR = (1<<3), - ZEND_CPU_FEATURE_DSCPL = (1<<4), - ZEND_CPU_FEATURE_VMX = (1<<5), - ZEND_CPU_FEATURE_SMX = (1<<6), - ZEND_CPU_FEATURE_EST = (1<<7), - ZEND_CPU_FEATURE_TM2 = (1<<8), - ZEND_CPU_FEATURE_SSSE3 = (1<<9), - ZEND_CPU_FEATURE_CID = (1<<10), - ZEND_CPU_FEATURE_SDBG = (1<<11), - ZEND_CPU_FEATURE_FMA = (1<<12), - ZEND_CPU_FEATURE_CX16 = (1<<13), - ZEND_CPU_FEATURE_XTPR = (1<<14), - ZEND_CPU_FEATURE_PDCM = (1<<15), - /* reserved = (1<<16),*/ - ZEND_CPU_FEATURE_PCID = (1<<17), - ZEND_CPU_FEATURE_DCA = (1<<18), - ZEND_CPU_FEATURE_SSE41 = (1<<19), - ZEND_CPU_FEATURE_SSE42 = (1<<20), - ZEND_CPU_FEATURE_X2APIC = (1<<21), - ZEND_CPU_FEATURE_MOVBE = (1<<22), - ZEND_CPU_FEATURE_POPCNT = (1<<23), - ZEND_CPU_FEATURE_TSC_DEADLINE = (1<<24), - ZEND_CPU_FEATURE_AES = (1<<25), - ZEND_CPU_FEATURE_XSAVE = (1<<26), - ZEND_CPU_FEATURE_OSXSAVE = (1<<27) , - ZEND_CPU_FEATURE_AVX = (1<<28), - ZEND_CPU_FEATURE_F16C = (1<<29), - /* intentionally don't support = (1<<30) */ - /* intentionally don't support = (1<<31) */ - - /* EBX */ - ZEND_CPU_FEATURE_AVX2 = (1<<5 | ZEND_CPU_EBX_MASK), - - /* EDX */ - ZEND_CPU_FEATURE_FPU = (1<<0 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_VME = (1<<1 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_DE = (1<<2 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_PSE = (1<<3 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_TSC = (1<<4 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_MSR = (1<<5 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_PAE = (1<<6 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_MCE = (1<<7 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_CX8 = (1<<8 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_APIC = (1<<9 | ZEND_CPU_EDX_MASK), - /* reserved = (1<<10 | ZEND_CPU_EDX_MASK),*/ - ZEND_CPU_FEATURE_SEP = (1<<11 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_MTRR = (1<<12 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_PGE = (1<<13 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_MCA = (1<<14 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_CMOV = (1<<15 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_PAT = (1<<16 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_PSE36 = (1<<17 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_PN = (1<<18 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_CLFLUSH = (1<<19 | ZEND_CPU_EDX_MASK), - /* reserved = (1<<20 | ZEND_CPU_EDX_MASK),*/ - ZEND_CPU_FEATURE_DS = (1<<21 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_ACPI = (1<<22 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_MMX = (1<<23 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_FXSR = (1<<24 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_SSE = (1<<25 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_SSE2 = (1<<26 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_SS = (1<<27 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_HT = (1<<28 | ZEND_CPU_EDX_MASK), - ZEND_CPU_FEATURE_TM = (1<<29 | ZEND_CPU_EDX_MASK) - /*intentionally don't support = (1<<30 | ZEND_CPU_EDX_MASK)*/ - /*intentionally don't support = (1<<31 | ZEND_CPU_EDX_MASK)*/ -} zend_cpu_feature; - -void zend_cpu_startup(); -ZEND_API int zend_cpu_supports(zend_cpu_feature feature); - -#ifndef __has_attribute -# define __has_attribute(x) 0 -#endif - -/* Address sanitizer is incompatible with ifunc resolvers, so exclude the - * CPU support helpers from asan. - * See also https://github.com/google/sanitizers/issues/342. */ -#if __has_attribute(no_sanitize_address) -# define ZEND_NO_SANITIZE_ADDRESS __attribute__((no_sanitize_address)) -#else -# define ZEND_NO_SANITIZE_ADDRESS -#endif - -#if PHP_HAVE_BUILTIN_CPU_SUPPORTS -/* NOTE: you should use following inline function in - * resolver functions (ifunc), as it could be called - * before all PLT symbols are resolved. in other words, - * resolver functions should not depend on any external - * functions */ -ZEND_NO_SANITIZE_ADDRESS -static zend_always_inline int zend_cpu_supports_sse2() { -#if PHP_HAVE_BUILTIN_CPU_INIT - __builtin_cpu_init(); -#endif - return __builtin_cpu_supports("sse2"); -} - -ZEND_NO_SANITIZE_ADDRESS -static zend_always_inline int zend_cpu_supports_sse3() { -#if PHP_HAVE_BUILTIN_CPU_INIT - __builtin_cpu_init(); -#endif - return __builtin_cpu_supports("sse3"); -} - -ZEND_NO_SANITIZE_ADDRESS -static zend_always_inline int zend_cpu_supports_ssse3() { -#if PHP_HAVE_BUILTIN_CPU_INIT - __builtin_cpu_init(); -#endif - return __builtin_cpu_supports("ssse3"); -} - -ZEND_NO_SANITIZE_ADDRESS -static zend_always_inline int zend_cpu_supports_sse41() { -#if PHP_HAVE_BUILTIN_CPU_INIT - __builtin_cpu_init(); -#endif - return __builtin_cpu_supports("sse4.1"); -} - -ZEND_NO_SANITIZE_ADDRESS -static zend_always_inline int zend_cpu_supports_sse42() { -#if PHP_HAVE_BUILTIN_CPU_INIT - __builtin_cpu_init(); -#endif - return __builtin_cpu_supports("sse4.2"); -} - -ZEND_NO_SANITIZE_ADDRESS -static zend_always_inline int zend_cpu_supports_avx() { -#if PHP_HAVE_BUILTIN_CPU_INIT - __builtin_cpu_init(); -#endif - return __builtin_cpu_supports("avx"); -} - -ZEND_NO_SANITIZE_ADDRESS -static zend_always_inline int zend_cpu_supports_avx2() { -#if PHP_HAVE_BUILTIN_CPU_INIT - __builtin_cpu_init(); -#endif - return __builtin_cpu_supports("avx2"); -} -#else - -static zend_always_inline int zend_cpu_supports_sse2() { - return zend_cpu_supports(ZEND_CPU_FEATURE_SSE2); -} - -static zend_always_inline int zend_cpu_supports_sse3() { - return zend_cpu_supports(ZEND_CPU_FEATURE_SSE3); -} - -static zend_always_inline int zend_cpu_supports_ssse3() { - return zend_cpu_supports(ZEND_CPU_FEATURE_SSSE3); -} - -static zend_always_inline int zend_cpu_supports_sse41() { - return zend_cpu_supports(ZEND_CPU_FEATURE_SSE41); -} - -static zend_always_inline int zend_cpu_supports_sse42() { - return zend_cpu_supports(ZEND_CPU_FEATURE_SSE42); -} - -static zend_always_inline int zend_cpu_supports_avx() { - return zend_cpu_supports(ZEND_CPU_FEATURE_AVX); -} - -static zend_always_inline int zend_cpu_supports_avx2() { - return zend_cpu_supports(ZEND_CPU_FEATURE_AVX2); -} - -#endif - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_dtrace.h b/7.4.27/mac/include/php/Zend/zend_dtrace.h deleted file mode 100644 index c4fedad..0000000 --- a/7.4.27/mac/include/php/Zend/zend_dtrace.h +++ /dev/null @@ -1,46 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: David Soria Parra | - +----------------------------------------------------------------------+ -*/ - -#ifndef _ZEND_DTRACE_H -#define _ZEND_DTRACE_H - -#ifndef ZEND_WIN32 -# include -#endif - -#ifdef __cplusplus -extern "C" { -#endif - -#ifdef HAVE_DTRACE -ZEND_API extern zend_op_array *(*zend_dtrace_compile_file)(zend_file_handle *file_handle, int type); -ZEND_API extern void (*zend_dtrace_execute)(zend_op_array *op_array); -ZEND_API extern void (*zend_dtrace_execute_internal)(zend_execute_data *execute_data, zval *return_value); - -ZEND_API zend_op_array *dtrace_compile_file(zend_file_handle *file_handle, int type); -ZEND_API void dtrace_execute_ex(zend_execute_data *execute_data); -ZEND_API void dtrace_execute_internal(zend_execute_data *execute_data, zval *return_value); -#include - -#endif /* HAVE_DTRACE */ - -#ifdef __cplusplus -} -#endif - -#endif /* _ZEND_DTRACE_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_errors.h b/7.4.27/mac/include/php/Zend/zend_errors.h deleted file mode 100644 index 441458c..0000000 --- a/7.4.27/mac/include/php/Zend/zend_errors.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_ERRORS_H -#define ZEND_ERRORS_H - -#define E_ERROR (1<<0L) -#define E_WARNING (1<<1L) -#define E_PARSE (1<<2L) -#define E_NOTICE (1<<3L) -#define E_CORE_ERROR (1<<4L) -#define E_CORE_WARNING (1<<5L) -#define E_COMPILE_ERROR (1<<6L) -#define E_COMPILE_WARNING (1<<7L) -#define E_USER_ERROR (1<<8L) -#define E_USER_WARNING (1<<9L) -#define E_USER_NOTICE (1<<10L) -#define E_STRICT (1<<11L) -#define E_RECOVERABLE_ERROR (1<<12L) -#define E_DEPRECATED (1<<13L) -#define E_USER_DEPRECATED (1<<14L) - -#define E_ALL (E_ERROR | E_WARNING | E_PARSE | E_NOTICE | E_CORE_ERROR | E_CORE_WARNING | E_COMPILE_ERROR | E_COMPILE_WARNING | E_USER_ERROR | E_USER_WARNING | E_USER_NOTICE | E_RECOVERABLE_ERROR | E_DEPRECATED | E_USER_DEPRECATED | E_STRICT) -#define E_CORE (E_CORE_ERROR | E_CORE_WARNING) - -#endif /* ZEND_ERRORS_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_exceptions.h b/7.4.27/mac/include/php/Zend/zend_exceptions.h deleted file mode 100644 index 5f31c4b..0000000 --- a/7.4.27/mac/include/php/Zend/zend_exceptions.h +++ /dev/null @@ -1,82 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Marcus Boerger | - | Sterling Hughes | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_EXCEPTIONS_H -#define ZEND_EXCEPTIONS_H - -BEGIN_EXTERN_C() - -extern ZEND_API zend_class_entry *zend_ce_throwable; -extern ZEND_API zend_class_entry *zend_ce_exception; -extern ZEND_API zend_class_entry *zend_ce_error_exception; -extern ZEND_API zend_class_entry *zend_ce_error; -extern ZEND_API zend_class_entry *zend_ce_compile_error; -extern ZEND_API zend_class_entry *zend_ce_parse_error; -extern ZEND_API zend_class_entry *zend_ce_type_error; -extern ZEND_API zend_class_entry *zend_ce_argument_count_error; -extern ZEND_API zend_class_entry *zend_ce_arithmetic_error; -extern ZEND_API zend_class_entry *zend_ce_division_by_zero_error; - -ZEND_API void zend_exception_set_previous(zend_object *exception, zend_object *add_previous); -ZEND_API void zend_exception_save(void); -ZEND_API void zend_exception_restore(void); - -ZEND_API ZEND_COLD void zend_throw_exception_internal(zval *exception); - -void zend_register_default_exception(void); - -ZEND_API zend_class_entry *zend_get_exception_base(zval *object); - -/* Deprecated - Use zend_ce_exception directly instead */ -ZEND_API zend_class_entry *zend_exception_get_default(void); - -/* Deprecated - Use zend_ce_error_exception directly instead */ -ZEND_API zend_class_entry *zend_get_error_exception(void); - -ZEND_API void zend_register_default_classes(void); - -/* exception_ce NULL, zend_ce_exception, zend_ce_error, or a derived class - * message NULL or the message of the exception */ -ZEND_API ZEND_COLD zend_object *zend_throw_exception(zend_class_entry *exception_ce, const char *message, zend_long code); -ZEND_API ZEND_COLD zend_object *zend_throw_exception_ex(zend_class_entry *exception_ce, zend_long code, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 3, 4); -ZEND_API ZEND_COLD void zend_throw_exception_object(zval *exception); -ZEND_API void zend_clear_exception(void); - -ZEND_API zend_object *zend_throw_error_exception(zend_class_entry *exception_ce, const char *message, zend_long code, int severity); - -extern ZEND_API void (*zend_throw_exception_hook)(zval *ex); - -/* show an exception using zend_error(severity,...), severity should be E_ERROR */ -ZEND_API ZEND_COLD void zend_exception_error(zend_object *exception, int severity); - -#include "zend_globals.h" - -static zend_always_inline void zend_rethrow_exception(zend_execute_data *execute_data) -{ - if (EX(opline)->opcode != ZEND_HANDLE_EXCEPTION) { - EG(opline_before_exception) = EX(opline); - EX(opline) = EG(exception_op); - } -} - -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_execute.h b/7.4.27/mac/include/php/Zend/zend_execute.h deleted file mode 100644 index cb100f5..0000000 --- a/7.4.27/mac/include/php/Zend/zend_execute.h +++ /dev/null @@ -1,435 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - | Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_EXECUTE_H -#define ZEND_EXECUTE_H - -#include "zend_compile.h" -#include "zend_hash.h" -#include "zend_operators.h" -#include "zend_variables.h" - -BEGIN_EXTERN_C() -struct _zend_fcall_info; -ZEND_API extern void (*zend_execute_ex)(zend_execute_data *execute_data); -ZEND_API extern void (*zend_execute_internal)(zend_execute_data *execute_data, zval *return_value); - -void init_executor(void); -void shutdown_executor(void); -void shutdown_destructors(void); -ZEND_API void zend_init_execute_data(zend_execute_data *execute_data, zend_op_array *op_array, zval *return_value); -ZEND_API void zend_init_func_execute_data(zend_execute_data *execute_data, zend_op_array *op_array, zval *return_value); -ZEND_API void zend_init_code_execute_data(zend_execute_data *execute_data, zend_op_array *op_array, zval *return_value); -ZEND_API void zend_execute(zend_op_array *op_array, zval *return_value); -ZEND_API void execute_ex(zend_execute_data *execute_data); -ZEND_API void execute_internal(zend_execute_data *execute_data, zval *return_value); -ZEND_API zend_class_entry *zend_lookup_class(zend_string *name); -ZEND_API zend_class_entry *zend_lookup_class_ex(zend_string *name, zend_string *lcname, uint32_t flags); -ZEND_API zend_class_entry *zend_get_called_scope(zend_execute_data *ex); -ZEND_API zend_object *zend_get_this_object(zend_execute_data *ex); -ZEND_API int zend_eval_string(char *str, zval *retval_ptr, char *string_name); -ZEND_API int zend_eval_stringl(char *str, size_t str_len, zval *retval_ptr, char *string_name); -ZEND_API int zend_eval_string_ex(char *str, zval *retval_ptr, char *string_name, int handle_exceptions); -ZEND_API int zend_eval_stringl_ex(char *str, size_t str_len, zval *retval_ptr, char *string_name, int handle_exceptions); - -/* export zend_pass_function to allow comparisons against it */ -extern ZEND_API const zend_internal_function zend_pass_function; - -ZEND_API ZEND_COLD void ZEND_FASTCALL zend_missing_arg_error(zend_execute_data *execute_data); - -ZEND_API zend_bool ZEND_FASTCALL zend_verify_ref_assignable_zval(zend_reference *ref, zval *zv, zend_bool strict); -ZEND_API zend_bool ZEND_FASTCALL zend_verify_prop_assignable_by_ref(zend_property_info *prop_info, zval *orig_val, zend_bool strict); - -ZEND_API ZEND_COLD void zend_throw_ref_type_error_zval(zend_property_info *prop, zval *zv); -ZEND_API ZEND_COLD void zend_throw_ref_type_error_type(zend_property_info *prop1, zend_property_info *prop2, zval *zv); - -#define ZEND_REF_TYPE_SOURCES(ref) \ - (ref)->sources - -#define ZEND_REF_HAS_TYPE_SOURCES(ref) \ - (ZEND_REF_TYPE_SOURCES(ref).ptr != NULL) - -#define ZEND_REF_FIRST_SOURCE(ref) \ - (ZEND_PROPERTY_INFO_SOURCE_IS_LIST((ref)->sources.list) \ - ? ZEND_PROPERTY_INFO_SOURCE_TO_LIST((ref)->sources.list)->ptr[0] \ - : (ref)->sources.ptr) - - -ZEND_API void ZEND_FASTCALL zend_ref_add_type_source(zend_property_info_source_list *source_list, zend_property_info *prop); -ZEND_API void ZEND_FASTCALL zend_ref_del_type_source(zend_property_info_source_list *source_list, zend_property_info *prop); - -ZEND_API zval* zend_assign_to_typed_ref(zval *variable_ptr, zval *value, zend_uchar value_type, zend_bool strict, zend_refcounted *ref); - -static zend_always_inline void zend_copy_to_variable(zval *variable_ptr, zval *value, zend_uchar value_type, zend_refcounted *ref) -{ - ZVAL_COPY_VALUE(variable_ptr, value); - if (ZEND_CONST_COND(value_type == IS_CONST, 0)) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(variable_ptr))) { - Z_ADDREF_P(variable_ptr); - } - } else if (value_type & (IS_CONST|IS_CV)) { - if (Z_OPT_REFCOUNTED_P(variable_ptr)) { - Z_ADDREF_P(variable_ptr); - } - } else if (ZEND_CONST_COND(value_type == IS_VAR, 1) && UNEXPECTED(ref)) { - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(variable_ptr)) { - Z_ADDREF_P(variable_ptr); - } - } -} - -static zend_always_inline zval* zend_assign_to_variable(zval *variable_ptr, zval *value, zend_uchar value_type, zend_bool strict) -{ - zend_refcounted *ref = NULL; - - if (ZEND_CONST_COND(value_type & (IS_VAR|IS_CV), 1) && Z_ISREF_P(value)) { - ref = Z_COUNTED_P(value); - value = Z_REFVAL_P(value); - } - - do { - if (UNEXPECTED(Z_REFCOUNTED_P(variable_ptr))) { - zend_refcounted *garbage; - - if (Z_ISREF_P(variable_ptr)) { - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(variable_ptr)))) { - return zend_assign_to_typed_ref(variable_ptr, value, value_type, strict, ref); - } - - variable_ptr = Z_REFVAL_P(variable_ptr); - if (EXPECTED(!Z_REFCOUNTED_P(variable_ptr))) { - break; - } - } - if (Z_TYPE_P(variable_ptr) == IS_OBJECT && - UNEXPECTED(Z_OBJ_HANDLER_P(variable_ptr, set) != NULL)) { - Z_OBJ_HANDLER_P(variable_ptr, set)(variable_ptr, value); - return variable_ptr; - } - garbage = Z_COUNTED_P(variable_ptr); - zend_copy_to_variable(variable_ptr, value, value_type, ref); - if (GC_DELREF(garbage) == 0) { - rc_dtor_func(garbage); - } else { /* we need to split */ - /* optimized version of GC_ZVAL_CHECK_POSSIBLE_ROOT(variable_ptr) */ - if (UNEXPECTED(GC_MAY_LEAK(garbage))) { - gc_possible_root(garbage); - } - } - return variable_ptr; - } - } while (0); - - zend_copy_to_variable(variable_ptr, value, value_type, ref); - return variable_ptr; -} - -ZEND_API int zval_update_constant(zval *pp); -ZEND_API int zval_update_constant_ex(zval *pp, zend_class_entry *scope); -ZEND_API ZEND_COLD int zend_use_undefined_constant(zend_string *name, zend_ast_attr attr, zval *result); - -/* dedicated Zend executor functions - do not use! */ -struct _zend_vm_stack { - zval *top; - zval *end; - zend_vm_stack prev; -}; - -#define ZEND_VM_STACK_HEADER_SLOTS \ - ((ZEND_MM_ALIGNED_SIZE(sizeof(struct _zend_vm_stack)) + ZEND_MM_ALIGNED_SIZE(sizeof(zval)) - 1) / ZEND_MM_ALIGNED_SIZE(sizeof(zval))) - -#define ZEND_VM_STACK_ELEMENTS(stack) \ - (((zval*)(stack)) + ZEND_VM_STACK_HEADER_SLOTS) - -/* - * In general in RELEASE build ZEND_ASSERT() must be zero-cost, but for some - * reason, GCC generated worse code, performing CSE on assertion code and the - * following "slow path" and moving memory read operatins from slow path into - * common header. This made a degradation for the fast path. - * The following "#if ZEND_DEBUG" eliminates it. - */ -#if ZEND_DEBUG -# define ZEND_ASSERT_VM_STACK(stack) ZEND_ASSERT(stack->top > (zval *) stack && stack->end > (zval *) stack && stack->top <= stack->end) -# define ZEND_ASSERT_VM_STACK_GLOBAL ZEND_ASSERT(EG(vm_stack_top) > (zval *) EG(vm_stack) && EG(vm_stack_end) > (zval *) EG(vm_stack) && EG(vm_stack_top) <= EG(vm_stack_end)) -#else -# define ZEND_ASSERT_VM_STACK(stack) -# define ZEND_ASSERT_VM_STACK_GLOBAL -#endif - -ZEND_API void zend_vm_stack_init(void); -ZEND_API void zend_vm_stack_init_ex(size_t page_size); -ZEND_API void zend_vm_stack_destroy(void); -ZEND_API void* zend_vm_stack_extend(size_t size); - -static zend_always_inline void zend_vm_init_call_frame(zend_execute_data *call, uint32_t call_info, zend_function *func, uint32_t num_args, void *object_or_called_scope) -{ - call->func = func; - Z_PTR(call->This) = object_or_called_scope; - ZEND_CALL_INFO(call) = call_info; - ZEND_CALL_NUM_ARGS(call) = num_args; -} - -static zend_always_inline zend_execute_data *zend_vm_stack_push_call_frame_ex(uint32_t used_stack, uint32_t call_info, zend_function *func, uint32_t num_args, void *object_or_called_scope) -{ - zend_execute_data *call = (zend_execute_data*)EG(vm_stack_top); - - ZEND_ASSERT_VM_STACK_GLOBAL; - - if (UNEXPECTED(used_stack > (size_t)(((char*)EG(vm_stack_end)) - (char*)call))) { - call = (zend_execute_data*)zend_vm_stack_extend(used_stack); - ZEND_ASSERT_VM_STACK_GLOBAL; - zend_vm_init_call_frame(call, call_info | ZEND_CALL_ALLOCATED, func, num_args, object_or_called_scope); - return call; - } else { - EG(vm_stack_top) = (zval*)((char*)call + used_stack); - zend_vm_init_call_frame(call, call_info, func, num_args, object_or_called_scope); - return call; - } -} - -static zend_always_inline uint32_t zend_vm_calc_used_stack(uint32_t num_args, zend_function *func) -{ - uint32_t used_stack = ZEND_CALL_FRAME_SLOT + num_args; - - if (EXPECTED(ZEND_USER_CODE(func->type))) { - used_stack += func->op_array.last_var + func->op_array.T - MIN(func->op_array.num_args, num_args); - } - return used_stack * sizeof(zval); -} - -static zend_always_inline zend_execute_data *zend_vm_stack_push_call_frame(uint32_t call_info, zend_function *func, uint32_t num_args, void *object_or_called_scope) -{ - uint32_t used_stack = zend_vm_calc_used_stack(num_args, func); - - return zend_vm_stack_push_call_frame_ex(used_stack, call_info, - func, num_args, object_or_called_scope); -} - -static zend_always_inline void zend_vm_stack_free_extra_args_ex(uint32_t call_info, zend_execute_data *call) -{ - if (UNEXPECTED(call_info & ZEND_CALL_FREE_EXTRA_ARGS)) { - uint32_t count = ZEND_CALL_NUM_ARGS(call) - call->func->op_array.num_args; - zval *p = ZEND_CALL_VAR_NUM(call, call->func->op_array.last_var + call->func->op_array.T); - do { - if (Z_REFCOUNTED_P(p)) { - zend_refcounted *r = Z_COUNTED_P(p); - if (!GC_DELREF(r)) { - ZVAL_NULL(p); - rc_dtor_func(r); - } else { - gc_check_possible_root(r); - } - } - p++; - } while (--count); - } -} - -static zend_always_inline void zend_vm_stack_free_extra_args(zend_execute_data *call) -{ - zend_vm_stack_free_extra_args_ex(ZEND_CALL_INFO(call), call); -} - -static zend_always_inline void zend_vm_stack_free_args(zend_execute_data *call) -{ - uint32_t num_args = ZEND_CALL_NUM_ARGS(call); - - if (EXPECTED(num_args > 0)) { - zval *p = ZEND_CALL_ARG(call, 1); - - do { - if (Z_REFCOUNTED_P(p)) { - zend_refcounted *r = Z_COUNTED_P(p); - if (!GC_DELREF(r)) { - ZVAL_NULL(p); - rc_dtor_func(r); - } - } - p++; - } while (--num_args); - } -} - -static zend_always_inline void zend_vm_stack_free_call_frame_ex(uint32_t call_info, zend_execute_data *call) -{ - ZEND_ASSERT_VM_STACK_GLOBAL; - - if (UNEXPECTED(call_info & ZEND_CALL_ALLOCATED)) { - zend_vm_stack p = EG(vm_stack); - zend_vm_stack prev = p->prev; - - ZEND_ASSERT(call == (zend_execute_data*)ZEND_VM_STACK_ELEMENTS(EG(vm_stack))); - EG(vm_stack_top) = prev->top; - EG(vm_stack_end) = prev->end; - EG(vm_stack) = prev; - efree(p); - } else { - EG(vm_stack_top) = (zval*)call; - } - - ZEND_ASSERT_VM_STACK_GLOBAL; -} - -static zend_always_inline void zend_vm_stack_free_call_frame(zend_execute_data *call) -{ - zend_vm_stack_free_call_frame_ex(ZEND_CALL_INFO(call), call); -} - -/* services */ -ZEND_API const char *get_active_class_name(const char **space); -ZEND_API const char *get_active_function_name(void); -ZEND_API const char *zend_get_executed_filename(void); -ZEND_API zend_string *zend_get_executed_filename_ex(void); -ZEND_API uint32_t zend_get_executed_lineno(void); -ZEND_API zend_class_entry *zend_get_executed_scope(void); -ZEND_API zend_bool zend_is_executing(void); - -ZEND_API void zend_set_timeout(zend_long seconds, int reset_signals); -ZEND_API void zend_unset_timeout(void); -ZEND_API ZEND_NORETURN void ZEND_FASTCALL zend_timeout(int dummy); -ZEND_API zend_class_entry *zend_fetch_class(zend_string *class_name, int fetch_type); -ZEND_API zend_class_entry *zend_fetch_class_by_name(zend_string *class_name, zend_string *lcname, int fetch_type); - -ZEND_API zend_function * ZEND_FASTCALL zend_fetch_function(zend_string *name); -ZEND_API zend_function * ZEND_FASTCALL zend_fetch_function_str(const char *name, size_t len); -ZEND_API void ZEND_FASTCALL zend_init_func_run_time_cache(zend_op_array *op_array); - -ZEND_API void zend_fetch_dimension_const(zval *result, zval *container, zval *dim, int type); - -ZEND_API zval* zend_get_compiled_variable_value(const zend_execute_data *execute_data_ptr, uint32_t var); - -#define ZEND_USER_OPCODE_CONTINUE 0 /* execute next opcode */ -#define ZEND_USER_OPCODE_RETURN 1 /* exit from executor (return from function) */ -#define ZEND_USER_OPCODE_DISPATCH 2 /* call original opcode handler */ -#define ZEND_USER_OPCODE_ENTER 3 /* enter into new op_array without recursion */ -#define ZEND_USER_OPCODE_LEAVE 4 /* return to calling op_array within the same executor */ - -#define ZEND_USER_OPCODE_DISPATCH_TO 0x100 /* call original handler of returned opcode */ - -ZEND_API int zend_set_user_opcode_handler(zend_uchar opcode, user_opcode_handler_t handler); -ZEND_API user_opcode_handler_t zend_get_user_opcode_handler(zend_uchar opcode); - -/* former zend_execute_locks.h */ -typedef zval* zend_free_op; - -ZEND_API zval *zend_get_zval_ptr(const zend_op *opline, int op_type, const znode_op *node, const zend_execute_data *execute_data, zend_free_op *should_free, int type); - -ZEND_API void zend_clean_and_cache_symbol_table(zend_array *symbol_table); -ZEND_API void zend_free_compiled_variables(zend_execute_data *execute_data); -ZEND_API void zend_cleanup_unfinished_execution(zend_execute_data *execute_data, uint32_t op_num, uint32_t catch_op_num); - -#define CACHE_ADDR(num) \ - ((void**)((char*)EX(run_time_cache) + (num))) - -#define CACHED_PTR(num) \ - ((void**)((char*)EX(run_time_cache) + (num)))[0] - -#define CACHE_PTR(num, ptr) do { \ - ((void**)((char*)EX(run_time_cache) + (num)))[0] = (ptr); \ - } while (0) - -#define CACHED_POLYMORPHIC_PTR(num, ce) \ - (EXPECTED(((void**)((char*)EX(run_time_cache) + (num)))[0] == (void*)(ce)) ? \ - ((void**)((char*)EX(run_time_cache) + (num)))[1] : \ - NULL) - -#define CACHE_POLYMORPHIC_PTR(num, ce, ptr) do { \ - void **slot = (void**)((char*)EX(run_time_cache) + (num)); \ - slot[0] = (ce); \ - slot[1] = (ptr); \ - } while (0) - -#define CACHED_PTR_EX(slot) \ - (slot)[0] - -#define CACHE_PTR_EX(slot, ptr) do { \ - (slot)[0] = (ptr); \ - } while (0) - -#define CACHED_POLYMORPHIC_PTR_EX(slot, ce) \ - (EXPECTED((slot)[0] == (ce)) ? (slot)[1] : NULL) - -#define CACHE_POLYMORPHIC_PTR_EX(slot, ce, ptr) do { \ - (slot)[0] = (ce); \ - (slot)[1] = (ptr); \ - } while (0) - -#define CACHE_SPECIAL (1<<0) - -#define IS_SPECIAL_CACHE_VAL(ptr) \ - (((uintptr_t)(ptr)) & CACHE_SPECIAL) - -#define ENCODE_SPECIAL_CACHE_NUM(num) \ - ((void*)((((uintptr_t)(num)) << 1) | CACHE_SPECIAL)) - -#define DECODE_SPECIAL_CACHE_NUM(ptr) \ - (((uintptr_t)(ptr)) >> 1) - -#define ENCODE_SPECIAL_CACHE_PTR(ptr) \ - ((void*)(((uintptr_t)(ptr)) | CACHE_SPECIAL)) - -#define DECODE_SPECIAL_CACHE_PTR(ptr) \ - ((void*)(((uintptr_t)(ptr)) & ~CACHE_SPECIAL)) - -#define SKIP_EXT_OPLINE(opline) do { \ - while (UNEXPECTED((opline)->opcode >= ZEND_EXT_STMT \ - && (opline)->opcode <= ZEND_TICKS)) { \ - (opline)--; \ - } \ - } while (0) - -#define ZEND_CLASS_HAS_TYPE_HINTS(ce) ((ce->ce_flags & ZEND_ACC_HAS_TYPE_HINTS) == ZEND_ACC_HAS_TYPE_HINTS) - -zend_bool zend_verify_property_type(zend_property_info *info, zval *property, zend_bool strict); -ZEND_COLD void zend_verify_property_type_error(zend_property_info *info, zval *property); - -#define ZEND_REF_ADD_TYPE_SOURCE(ref, source) \ - zend_ref_add_type_source(&ZEND_REF_TYPE_SOURCES(ref), source) - -#define ZEND_REF_DEL_TYPE_SOURCE(ref, source) \ - zend_ref_del_type_source(&ZEND_REF_TYPE_SOURCES(ref), source) - -#define ZEND_REF_FOREACH_TYPE_SOURCES(ref, prop) do { \ - zend_property_info_source_list *_source_list = &ZEND_REF_TYPE_SOURCES(ref); \ - zend_property_info **_prop, **_end; \ - zend_property_info_list *_list; \ - if (_source_list->ptr) { \ - if (ZEND_PROPERTY_INFO_SOURCE_IS_LIST(_source_list->list)) { \ - _list = ZEND_PROPERTY_INFO_SOURCE_TO_LIST(_source_list->list); \ - _prop = _list->ptr; \ - _end = _list->ptr + _list->num; \ - } else { \ - _prop = &_source_list->ptr; \ - _end = _prop + 1; \ - } \ - for (; _prop < _end; _prop++) { \ - prop = *_prop; \ - -#define ZEND_REF_FOREACH_TYPE_SOURCES_END() \ - } \ - } \ - } while (0) - - -END_EXTERN_C() - -#endif /* ZEND_EXECUTE_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_extensions.h b/7.4.27/mac/include/php/Zend/zend_extensions.h deleted file mode 100644 index 19cbf55..0000000 --- a/7.4.27/mac/include/php/Zend/zend_extensions.h +++ /dev/null @@ -1,156 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_EXTENSIONS_H -#define ZEND_EXTENSIONS_H - -#include "zend_compile.h" -#include "zend_build.h" - -/* -The constants below are derived from ext/opcache/ZendAccelerator.h - -You can use the following macro to check the extension API version for compatibilities: - -#define ZEND_EXTENSION_API_NO_5_0_X 220040412 -#define ZEND_EXTENSION_API_NO_5_1_X 220051025 -#define ZEND_EXTENSION_API_NO_5_2_X 220060519 -#define ZEND_EXTENSION_API_NO_5_3_X 220090626 -#define ZEND_EXTENSION_API_NO_5_4_X 220100525 -#define ZEND_EXTENSION_API_NO_5_5_X 220121212 -#define ZEND_EXTENSION_API_NO_5_6_X 220131226 -#define ZEND_EXTENSION_API_NO_7_0_X 320151012 - -#if ZEND_EXTENSION_API_NO < ZEND_EXTENSION_API_NO_5_5_X - // do something for php versions lower than 5.5.x -#endif -*/ - -/* The first number is the engine version and the rest is the date (YYYYMMDD). - * This way engine 2/3 API no. is always greater than engine 1 API no.. */ -#define ZEND_EXTENSION_API_NO 320190902 - -typedef struct _zend_extension_version_info { - int zend_extension_api_no; - char *build_id; -} zend_extension_version_info; - -#define ZEND_EXTENSION_BUILD_ID "API" ZEND_TOSTR(ZEND_EXTENSION_API_NO) ZEND_BUILD_TS ZEND_BUILD_DEBUG ZEND_BUILD_SYSTEM ZEND_BUILD_EXTRA - -typedef struct _zend_extension zend_extension; - -/* Typedef's for zend_extension function pointers */ -typedef int (*startup_func_t)(zend_extension *extension); -typedef void (*shutdown_func_t)(zend_extension *extension); -typedef void (*activate_func_t)(void); -typedef void (*deactivate_func_t)(void); - -typedef void (*message_handler_func_t)(int message, void *arg); - -typedef void (*op_array_handler_func_t)(zend_op_array *op_array); - -typedef void (*statement_handler_func_t)(zend_execute_data *frame); -typedef void (*fcall_begin_handler_func_t)(zend_execute_data *frame); -typedef void (*fcall_end_handler_func_t)(zend_execute_data *frame); - -typedef void (*op_array_ctor_func_t)(zend_op_array *op_array); -typedef void (*op_array_dtor_func_t)(zend_op_array *op_array); -typedef size_t (*op_array_persist_calc_func_t)(zend_op_array *op_array); -typedef size_t (*op_array_persist_func_t)(zend_op_array *op_array, void *mem); - -struct _zend_extension { - char *name; - char *version; - char *author; - char *URL; - char *copyright; - - startup_func_t startup; - shutdown_func_t shutdown; - activate_func_t activate; - deactivate_func_t deactivate; - - message_handler_func_t message_handler; - - op_array_handler_func_t op_array_handler; - - statement_handler_func_t statement_handler; - fcall_begin_handler_func_t fcall_begin_handler; - fcall_end_handler_func_t fcall_end_handler; - - op_array_ctor_func_t op_array_ctor; - op_array_dtor_func_t op_array_dtor; - - int (*api_no_check)(int api_no); - int (*build_id_check)(const char* build_id); - op_array_persist_calc_func_t op_array_persist_calc; - op_array_persist_func_t op_array_persist; - void *reserved5; - void *reserved6; - void *reserved7; - void *reserved8; - - DL_HANDLE handle; - int resource_number; -}; - -BEGIN_EXTERN_C() -extern ZEND_API int zend_op_array_extension_handles; - -ZEND_API int zend_get_resource_handle(zend_extension *extension); -ZEND_API int zend_get_op_array_extension_handle(void); -ZEND_API void zend_extension_dispatch_message(int message, void *arg); -END_EXTERN_C() - -#define ZEND_EXTMSG_NEW_EXTENSION 1 - - -#define ZEND_EXTENSION() \ - ZEND_EXT_API zend_extension_version_info extension_version_info = { ZEND_EXTENSION_API_NO, ZEND_EXTENSION_BUILD_ID } - -#define STANDARD_ZEND_EXTENSION_PROPERTIES NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, -1 -#define COMPAT_ZEND_EXTENSION_PROPERTIES NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, -1 -#define BUILD_COMPAT_ZEND_EXTENSION_PROPERTIES NULL, NULL, NULL, NULL, NULL, NULL, NULL, -1 - - -ZEND_API extern zend_llist zend_extensions; -ZEND_API extern uint32_t zend_extension_flags; - -#define ZEND_EXTENSIONS_HAVE_OP_ARRAY_CTOR (1<<0) -#define ZEND_EXTENSIONS_HAVE_OP_ARRAY_DTOR (1<<1) -#define ZEND_EXTENSIONS_HAVE_OP_ARRAY_HANDLER (1<<2) -#define ZEND_EXTENSIONS_HAVE_OP_ARRAY_PERSIST_CALC (1<<3) -#define ZEND_EXTENSIONS_HAVE_OP_ARRAY_PERSIST (1<<4) - -void zend_extension_dtor(zend_extension *extension); -ZEND_API void zend_append_version_info(const zend_extension *extension); -int zend_startup_extensions_mechanism(void); -int zend_startup_extensions(void); -void zend_shutdown_extensions(void); - -BEGIN_EXTERN_C() -ZEND_API int zend_load_extension(const char *path); -ZEND_API int zend_load_extension_handle(DL_HANDLE handle, const char *path); -ZEND_API int zend_register_extension(zend_extension *new_extension, DL_HANDLE handle); -ZEND_API zend_extension *zend_get_extension(const char *extension_name); -ZEND_API size_t zend_extensions_op_array_persist_calc(zend_op_array *op_array); -ZEND_API size_t zend_extensions_op_array_persist(zend_op_array *op_array, void *mem); -END_EXTERN_C() - -#endif /* ZEND_EXTENSIONS_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_float.h b/7.4.27/mac/include/php/Zend/zend_float.h deleted file mode 100644 index c8e9112..0000000 --- a/7.4.27/mac/include/php/Zend/zend_float.h +++ /dev/null @@ -1,415 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Christian Seiler | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_FLOAT_H -#define ZEND_FLOAT_H - -BEGIN_EXTERN_C() - -/* - Define functions for FP initialization and de-initialization. -*/ -extern ZEND_API void zend_init_fpu(void); -extern ZEND_API void zend_shutdown_fpu(void); -extern ZEND_API void zend_ensure_fpu_mode(void); - -END_EXTERN_C() - -/* Copy of the contents of xpfpa.h (which is under public domain) - See http://wiki.php.net/rfc/rounding for details. - - Cross Platform Floating Point Arithmetics - - This header file defines several platform-dependent macros that ensure - equal and deterministic floating point behaviour across several platforms, - compilers and architectures. - - The current macros are currently only used on x86 and x86_64 architectures, - on every other architecture, these macros expand to NOPs. This assumes that - other architectures do not have an internal precision and the operhand types - define the computational precision of floating point operations. This - assumption may be false, in that case, the author is interested in further - details on the other platform. - - For further details, please visit: - http://www.christian-seiler.de/projekte/fpmath/ - - Version: 20090317 */ - -/* - Implementation notes: - - x86_64: - - Since all x86_64 compilers use SSE by default, we do not define these - macros there. We ignore the compiler option -mfpmath=i387, because there is - no reason to use it on x86_64. - - General: - - It would be nice if one could detect whether SSE if used for math via some - funky compiler defines and if so, make the macros go to NOPs. Any ideas - on how to do that? - - MS Visual C: - - Since MSVC users typically don't use autoconf or CMake, we will detect - MSVC via compile time define. -*/ - -/* MSVC detection (MSVC people usually don't use autoconf) */ -#if defined(_MSC_VER) && !defined(_WIN64) -# define HAVE__CONTROLFP_S -#endif /* _MSC_VER */ - -#if defined(HAVE__CONTROLFP_S) && !defined(__x86_64__) - -/* float.h defines _controlfp_s */ -# include - -# define XPFPA_HAVE_CW 1 -# define XPFPA_CW_DATATYPE \ - unsigned int - -# define XPFPA_STORE_CW(vptr) do { \ - _controlfp_s((unsigned int *)(vptr), 0, 0); \ - } while (0) - -# define XPFPA_RESTORE_CW(vptr) do { \ - unsigned int _xpfpa_fpu_cw; \ - _controlfp_s(&_xpfpa_fpu_cw, *((unsigned int *)(vptr)), _MCW_PC); \ - } while (0) - -# define XPFPA_DECLARE \ - unsigned int _xpfpa_fpu_oldcw, _xpfpa_fpu_cw; - -# define XPFPA_SWITCH_DOUBLE() do { \ - _controlfp_s(&_xpfpa_fpu_cw, 0, 0); \ - _xpfpa_fpu_oldcw = _xpfpa_fpu_cw; \ - _controlfp_s(&_xpfpa_fpu_cw, _PC_53, _MCW_PC); \ - } while (0) -# define XPFPA_SWITCH_SINGLE() do { \ - _controlfp_s(&_xpfpa_fpu_cw, 0, 0); \ - _xpfpa_fpu_oldcw = _xpfpa_fpu_cw; \ - _controlfp_s(&_xpfpa_fpu_cw, _PC_24, _MCW_PC); \ - } while (0) -/* NOTE: This only sets internal precision. MSVC does NOT support double- - extended precision! */ -# define XPFPA_SWITCH_DOUBLE_EXTENDED() do { \ - _controlfp_s(&_xpfpa_fpu_cw, 0, 0); \ - _xpfpa_fpu_oldcw = _xpfpa_fpu_cw; \ - _controlfp_s(&_xpfpa_fpu_cw, _PC_64, _MCW_PC); \ - } while (0) -# define XPFPA_RESTORE() \ - _controlfp_s(&_xpfpa_fpu_cw, _xpfpa_fpu_oldcw, _MCW_PC) -/* We do NOT use the volatile return trick since _controlfp_s is a function - call and thus FP registers are saved in memory anyway. However, we do use - a variable to ensure that the expression passed into val will be evaluated - *before* switching back contexts. */ -# define XPFPA_RETURN_DOUBLE(val) \ - do { \ - double _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) -# define XPFPA_RETURN_SINGLE(val) \ - do { \ - float _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) -/* This won't work, but we add a macro for it anyway. */ -# define XPFPA_RETURN_DOUBLE_EXTENDED(val) \ - do { \ - long double _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) - -#elif defined(HAVE__CONTROLFP) && !defined(__x86_64__) - -/* float.h defines _controlfp */ -# include - -# define XPFPA_DECLARE \ - unsigned int _xpfpa_fpu_oldcw; - -# define XPFPA_HAVE_CW 1 -# define XPFPA_CW_DATATYPE \ - unsigned int - -# define XPFPA_STORE_CW(vptr) do { \ - *((unsigned int *)(vptr)) = _controlfp(0, 0); \ - } while (0) - -# define XPFPA_RESTORE_CW(vptr) do { \ - _controlfp(*((unsigned int *)(vptr)), _MCW_PC); \ - } while (0) - -# define XPFPA_SWITCH_DOUBLE() do { \ - _xpfpa_fpu_oldcw = _controlfp(0, 0); \ - _controlfp(_PC_53, _MCW_PC); \ - } while (0) -# define XPFPA_SWITCH_SINGLE() do { \ - _xpfpa_fpu_oldcw = _controlfp(0, 0); \ - _controlfp(_PC_24, _MCW_PC); \ - } while (0) -/* NOTE: This will only work as expected on MinGW. */ -# define XPFPA_SWITCH_DOUBLE_EXTENDED() do { \ - _xpfpa_fpu_oldcw = _controlfp(0, 0); \ - _controlfp(_PC_64, _MCW_PC); \ - } while (0) -# define XPFPA_RESTORE() \ - _controlfp(_xpfpa_fpu_oldcw, _MCW_PC) -/* We do NOT use the volatile return trick since _controlfp is a function - call and thus FP registers are saved in memory anyway. However, we do use - a variable to ensure that the expression passed into val will be evaluated - *before* switching back contexts. */ -# define XPFPA_RETURN_DOUBLE(val) \ - do { \ - double _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) -# define XPFPA_RETURN_SINGLE(val) \ - do { \ - float _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) -/* This will only work on MinGW */ -# define XPFPA_RETURN_DOUBLE_EXTENDED(val) \ - do { \ - long double _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) - -#elif defined(HAVE__FPU_SETCW) && !defined(__x86_64__) /* glibc systems */ - -/* fpu_control.h defines _FPU_[GS]ETCW */ -# include - -# define XPFPA_DECLARE \ - fpu_control_t _xpfpa_fpu_oldcw, _xpfpa_fpu_cw; - -# define XPFPA_HAVE_CW 1 -# define XPFPA_CW_DATATYPE \ - fpu_control_t - -# define XPFPA_STORE_CW(vptr) do { \ - _FPU_GETCW((*((fpu_control_t *)(vptr)))); \ - } while (0) - -# define XPFPA_RESTORE_CW(vptr) do { \ - _FPU_SETCW((*((fpu_control_t *)(vptr)))); \ - } while (0) - -# define XPFPA_SWITCH_DOUBLE() do { \ - _FPU_GETCW(_xpfpa_fpu_oldcw); \ - _xpfpa_fpu_cw = (_xpfpa_fpu_oldcw & ~_FPU_EXTENDED & ~_FPU_SINGLE) | _FPU_DOUBLE; \ - _FPU_SETCW(_xpfpa_fpu_cw); \ - } while (0) -# define XPFPA_SWITCH_SINGLE() do { \ - _FPU_GETCW(_xpfpa_fpu_oldcw); \ - _xpfpa_fpu_cw = (_xpfpa_fpu_oldcw & ~_FPU_EXTENDED & ~_FPU_DOUBLE) | _FPU_SINGLE; \ - _FPU_SETCW(_xpfpa_fpu_cw); \ - } while (0) -# define XPFPA_SWITCH_DOUBLE_EXTENDED() do { \ - _FPU_GETCW(_xpfpa_fpu_oldcw); \ - _xpfpa_fpu_cw = (_xpfpa_fpu_oldcw & ~_FPU_SINGLE & ~_FPU_DOUBLE) | _FPU_EXTENDED; \ - _FPU_SETCW(_xpfpa_fpu_cw); \ - } while (0) -# define XPFPA_RESTORE() \ - _FPU_SETCW(_xpfpa_fpu_oldcw) -/* We use a temporary volatile variable (in a new block) in order to ensure - that the optimizer does not mis-optimize the instructions. Also, a volatile - variable ensures truncation to correct precision. */ -# define XPFPA_RETURN_DOUBLE(val) \ - do { \ - volatile double _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) -# define XPFPA_RETURN_SINGLE(val) \ - do { \ - volatile float _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) -# define XPFPA_RETURN_DOUBLE_EXTENDED(val) \ - do { \ - volatile long double _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) - -#elif defined(HAVE_FPSETPREC) && !defined(__x86_64__) /* FreeBSD */ - -/* fpu_control.h defines _FPU_[GS]ETCW */ -# include - -# define XPFPA_DECLARE \ - fp_prec_t _xpfpa_fpu_oldprec; - -# define XPFPA_HAVE_CW 1 -# define XPFPA_CW_DATATYPE \ - fp_prec_t - -# define XPFPA_STORE_CW(vptr) do { \ - *((fp_prec_t *)(vptr)) = fpgetprec(); \ - } while (0) - -# define XPFPA_RESTORE_CW(vptr) do { \ - fpsetprec(*((fp_prec_t *)(vptr))); \ - } while (0) - -# define XPFPA_SWITCH_DOUBLE() do { \ - _xpfpa_fpu_oldprec = fpgetprec(); \ - fpsetprec(FP_PD); \ - } while (0) -# define XPFPA_SWITCH_SINGLE() do { \ - _xpfpa_fpu_oldprec = fpgetprec(); \ - fpsetprec(FP_PS); \ - } while (0) -# define XPFPA_SWITCH_DOUBLE_EXTENDED() do { \ - _xpfpa_fpu_oldprec = fpgetprec(); \ - fpsetprec(FP_PE); \ - } while (0) -# define XPFPA_RESTORE() \ - fpsetprec(_xpfpa_fpu_oldprec) -/* We use a temporary volatile variable (in a new block) in order to ensure - that the optimizer does not mis-optimize the instructions. Also, a volatile - variable ensures truncation to correct precision. */ -# define XPFPA_RETURN_DOUBLE(val) \ - do { \ - volatile double _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) -# define XPFPA_RETURN_SINGLE(val) \ - do { \ - volatile float _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) -# define XPFPA_RETURN_DOUBLE_EXTENDED(val) \ - do { \ - volatile long double _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) - -#elif defined(HAVE_FPU_INLINE_ASM_X86) && !defined(__x86_64__) - -/* - Custom x86 inline assembler implementation. - - This implementation does not use predefined wrappers of the OS / compiler - but rather uses x86/x87 inline assembler directly. Basic instructions: - - fnstcw - Store the FPU control word in a variable - fldcw - Load the FPU control word from a variable - - Bits (only bits 8 and 9 are relevant, bits 0 to 7 are for other things): - 0x0yy: Single precision - 0x1yy: Reserved - 0x2yy: Double precision - 0x3yy: Double-extended precision - - We use an unsigned int for the datatype. glibc sources add __mode__ (__HI__) - attribute to it (HI stands for half-integer according to docs). It is unclear - what the does exactly and how portable it is. - - The assembly syntax works with GNU CC, Intel CC and Sun CC. -*/ - -# define XPFPA_DECLARE \ - unsigned int _xpfpa_fpu_oldcw, _xpfpa_fpu_cw; - -# define XPFPA_HAVE_CW 1 -# define XPFPA_CW_DATATYPE \ - unsigned int - -# define XPFPA_STORE_CW(vptr) do { \ - __asm__ __volatile__ ("fnstcw %0" : "=m" (*((unsigned int *)(vptr)))); \ - } while (0) - -# define XPFPA_RESTORE_CW(vptr) do { \ - __asm__ __volatile__ ("fldcw %0" : : "m" (*((unsigned int *)(vptr)))); \ - } while (0) - -# define XPFPA_SWITCH_DOUBLE() do { \ - __asm__ __volatile__ ("fnstcw %0" : "=m" (*&_xpfpa_fpu_oldcw)); \ - _xpfpa_fpu_cw = (_xpfpa_fpu_oldcw & ~0x100) | 0x200; \ - __asm__ __volatile__ ("fldcw %0" : : "m" (*&_xpfpa_fpu_cw)); \ - } while (0) -# define XPFPA_SWITCH_SINGLE() do { \ - __asm__ __volatile__ ("fnstcw %0" : "=m" (*&_xpfpa_fpu_oldcw)); \ - _xpfpa_fpu_cw = (_xpfpa_fpu_oldcw & ~0x300); \ - __asm__ __volatile__ ("fldcw %0" : : "m" (*&_xpfpa_fpu_cw)); \ - } while (0) -# define XPFPA_SWITCH_DOUBLE_EXTENDED() do { \ - __asm__ __volatile__ ("fnstcw %0" : "=m" (*&_xpfpa_fpu_oldcw)); \ - _xpfpa_fpu_cw = _xpfpa_fpu_oldcw | 0x300; \ - __asm__ __volatile__ ("fldcw %0" : : "m" (*&_xpfpa_fpu_cw)); \ - } while (0) -# define XPFPA_RESTORE() \ - __asm__ __volatile__ ("fldcw %0" : : "m" (*&_xpfpa_fpu_oldcw)) -/* We use a temporary volatile variable (in a new block) in order to ensure - that the optimizer does not mis-optimize the instructions. Also, a volatile - variable ensures truncation to correct precision. */ -# define XPFPA_RETURN_DOUBLE(val) \ - do { \ - volatile double _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) -# define XPFPA_RETURN_SINGLE(val) \ - do { \ - volatile float _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) -# define XPFPA_RETURN_DOUBLE_EXTENDED(val) \ - do { \ - volatile long double _xpfpa_result = (val); \ - XPFPA_RESTORE(); \ - return _xpfpa_result; \ - } while (0) - -#else /* FPU CONTROL */ - -/* - This is either not an x87 FPU or the inline assembly syntax was not - recognized. In any case, default to NOPs for the macros and hope the - generated code will behave as planned. -*/ -# define XPFPA_DECLARE /* NOP */ -# define XPFPA_HAVE_CW 0 -# define XPFPA_CW_DATATYPE unsigned int -# define XPFPA_STORE_CW(variable) /* NOP */ -# define XPFPA_RESTORE_CW(variable) /* NOP */ -# define XPFPA_SWITCH_DOUBLE() /* NOP */ -# define XPFPA_SWITCH_SINGLE() /* NOP */ -# define XPFPA_SWITCH_DOUBLE_EXTENDED() /* NOP */ -# define XPFPA_RESTORE() /* NOP */ -# define XPFPA_RETURN_DOUBLE(val) return (val) -# define XPFPA_RETURN_SINGLE(val) return (val) -# define XPFPA_RETURN_DOUBLE_EXTENDED(val) return (val) - -#endif /* FPU CONTROL */ - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_gc.h b/7.4.27/mac/include/php/Zend/zend_gc.h deleted file mode 100644 index d7b4e1a..0000000 --- a/7.4.27/mac/include/php/Zend/zend_gc.h +++ /dev/null @@ -1,87 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: David Wang | - | Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_GC_H -#define ZEND_GC_H - -BEGIN_EXTERN_C() - -typedef struct _zend_gc_status { - uint32_t runs; - uint32_t collected; - uint32_t threshold; - uint32_t num_roots; -} zend_gc_status; - -ZEND_API extern int (*gc_collect_cycles)(void); - -ZEND_API void ZEND_FASTCALL gc_possible_root(zend_refcounted *ref); -ZEND_API void ZEND_FASTCALL gc_remove_from_buffer(zend_refcounted *ref); - -/* enable/disable automatic start of GC collection */ -ZEND_API zend_bool gc_enable(zend_bool enable); -ZEND_API zend_bool gc_enabled(void); - -/* enable/disable possible root additions */ -ZEND_API zend_bool gc_protect(zend_bool protect); -ZEND_API zend_bool gc_protected(void); - -/* The default implementation of the gc_collect_cycles callback. */ -ZEND_API int zend_gc_collect_cycles(void); - -ZEND_API void zend_gc_get_status(zend_gc_status *status); - -void gc_globals_ctor(void); -void gc_globals_dtor(void); -void gc_reset(void); - -#ifdef ZTS -size_t zend_gc_globals_size(void); -#endif - -END_EXTERN_C() - -#define GC_REMOVE_FROM_BUFFER(p) do { \ - zend_refcounted *_p = (zend_refcounted*)(p); \ - if (GC_TYPE_INFO(_p) & GC_INFO_MASK) { \ - gc_remove_from_buffer(_p); \ - } \ - } while (0) - -#define GC_MAY_LEAK(ref) \ - ((GC_TYPE_INFO(ref) & \ - (GC_INFO_MASK | (GC_COLLECTABLE << GC_FLAGS_SHIFT))) == \ - (GC_COLLECTABLE << GC_FLAGS_SHIFT)) - -static zend_always_inline void gc_check_possible_root(zend_refcounted *ref) -{ - if (EXPECTED(GC_TYPE_INFO(ref) == IS_REFERENCE)) { - zval *zv = &((zend_reference*)ref)->val; - - if (!Z_COLLECTABLE_P(zv)) { - return; - } - ref = Z_COUNTED_P(zv); - } - if (UNEXPECTED(GC_MAY_LEAK(ref))) { - gc_possible_root(ref); - } -} - -#endif /* ZEND_GC_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_generators.h b/7.4.27/mac/include/php/Zend/zend_generators.h deleted file mode 100644 index abccf3a..0000000 --- a/7.4.27/mac/include/php/Zend/zend_generators.h +++ /dev/null @@ -1,136 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Nikita Popov | - | Bob Weinand | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_GENERATORS_H -#define ZEND_GENERATORS_H - -BEGIN_EXTERN_C() - -extern ZEND_API zend_class_entry *zend_ce_generator; -extern ZEND_API zend_class_entry *zend_ce_ClosedGeneratorException; - -typedef struct _zend_generator_node zend_generator_node; -typedef struct _zend_generator zend_generator; - -/* The concept of `yield from` exposes problems when accessed at different levels of the chain of delegated generators. We need to be able to reference the currently executed Generator in all cases and still being able to access the return values of finished Generators. - * The solution to this problem is a doubly-linked tree, which all Generators referenced in maintain a reference to. It should be impossible to avoid walking the tree in all cases. This way, we only need tree walks from leaf to root in case where some part of the `yield from` chain is passed to another `yield from`. (Update of leaf node pointer and list of multi-children nodes needed when leaf gets a child in direct path from leaf to root node.) But only in that case, which should be a fairly rare case (which is then possible, but not totally cheap). - * The root of the tree is then the currently executed Generator. The subnodes of the tree (all except the root node) are all Generators which do `yield from`. Each node of the tree knows a pointer to one leaf descendant node. Each node with multiple children needs a list of all leaf descendant nodes paired with pointers to their respective child node. (The stack is determined by leaf node pointers) Nodes with only one child just don't need a list, there it is enough to just have a pointer to the child node. Further, leaf nodes store a pointer to the root node. - * That way, when we advance any generator, we just need to look up a leaf node (which all have a reference to a root node). Then we can see at the root node whether current Generator is finished. If it isn't, all is fine and we can just continue. If the Generator finished, there will be two cases. Either it is a simple node with just one child, then go down to child node. Or it has multiple children and we now will remove the current leaf node from the list of nodes (unnecessary, is microoptimization) and go down to the child node whose reference was paired with current leaf node. Child node is then removed its parent reference and becomes new top node. Or the current node references the Generator we're currently executing, then we can continue from the YIELD_FROM opcode. When a node referenced as root node in a leaf node has a parent, then we go the way up until we find a root node without parent. - * In case we go into a new `yield from` level, a node is created on top of current root and becomes the new root. Leaf node needs to be updated with new root node then. - * When a Generator referenced by a node of the tree is added to `yield from`, that node now gets a list of children (we need to walk the descendants of that node and nodes of the tree of the other Generator down to the first multi-children node and copy all the leaf node pointers from there). In case there was no multi-children node (linear tree), we just add a pair (pointer to leaf node, pointer to child node), with the child node being in a direct path from leaf to this node. - */ - -struct _zend_generator_node { - zend_generator *parent; /* NULL for root */ - uint32_t children; - union { - HashTable *ht; /* if multiple children */ - struct { /* if one child */ - zend_generator *leaf; - zend_generator *child; - } single; - } child; - union { - zend_generator *leaf; /* if > 0 children */ - zend_generator *root; /* if 0 children */ - } ptr; -}; - -struct _zend_generator { - zend_object std; - - zend_object_iterator *iterator; - - /* The suspended execution context. */ - zend_execute_data *execute_data; - - /* Frozen call stack for "yield" used in context of other calls */ - zend_execute_data *frozen_call_stack; - - /* Current value */ - zval value; - /* Current key */ - zval key; - /* Return value */ - zval retval; - /* Variable to put sent value into */ - zval *send_target; - /* Largest used integer key for auto-incrementing keys */ - zend_long largest_used_integer_key; - - /* Values specified by "yield from" to yield from this generator. - * This is only used for arrays or non-generator Traversables. - * This zval also uses the u2 structure in the same way as - * by-value foreach. */ - zval values; - - /* Node of waiting generators when multiple "yield from" expressions - * are nested. */ - zend_generator_node node; - - /* Fake execute_data for stacktraces */ - zend_execute_data execute_fake; - - /* ZEND_GENERATOR_* flags */ - zend_uchar flags; - - zval *gc_buffer; - uint32_t gc_buffer_size; -}; - -static const zend_uchar ZEND_GENERATOR_CURRENTLY_RUNNING = 0x1; -static const zend_uchar ZEND_GENERATOR_FORCED_CLOSE = 0x2; -static const zend_uchar ZEND_GENERATOR_AT_FIRST_YIELD = 0x4; -static const zend_uchar ZEND_GENERATOR_DO_INIT = 0x8; - -void zend_register_generator_ce(void); -ZEND_API void zend_generator_close(zend_generator *generator, zend_bool finished_execution); -ZEND_API void zend_generator_resume(zend_generator *generator); - -ZEND_API void zend_generator_restore_call_stack(zend_generator *generator); -ZEND_API zend_execute_data* zend_generator_freeze_call_stack(zend_execute_data *execute_data); - -void zend_generator_yield_from(zend_generator *generator, zend_generator *from); -ZEND_API zend_execute_data *zend_generator_check_placeholder_frame(zend_execute_data *ptr); - -ZEND_API zend_generator *zend_generator_update_current(zend_generator *generator, zend_generator *leaf); -static zend_always_inline zend_generator *zend_generator_get_current(zend_generator *generator) -{ - zend_generator *leaf; - zend_generator *root; - - if (EXPECTED(generator->node.parent == NULL)) { - /* we're not in yield from mode */ - return generator; - } - - leaf = generator->node.children ? generator->node.ptr.leaf : generator; - root = leaf->node.ptr.root; - - if (EXPECTED(root->execute_data && root->node.parent == NULL)) { - /* generator still running */ - return root; - } - - return zend_generator_update_current(generator, leaf); -} - -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_globals.h b/7.4.27/mac/include/php/Zend/zend_globals.h deleted file mode 100644 index 2e9fff4..0000000 --- a/7.4.27/mac/include/php/Zend/zend_globals.h +++ /dev/null @@ -1,315 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_GLOBALS_H -#define ZEND_GLOBALS_H - - -#include - -#include "zend_globals_macros.h" - -#include "zend_stack.h" -#include "zend_ptr_stack.h" -#include "zend_hash.h" -#include "zend_llist.h" -#include "zend_objects.h" -#include "zend_objects_API.h" -#include "zend_modules.h" -#include "zend_float.h" -#include "zend_multibyte.h" -#include "zend_multiply.h" -#include "zend_arena.h" - -/* Define ZTS if you want a thread-safe Zend */ -/*#undef ZTS*/ - -#ifdef ZTS - -BEGIN_EXTERN_C() -ZEND_API extern int compiler_globals_id; -ZEND_API extern int executor_globals_id; -ZEND_API extern size_t compiler_globals_offset; -ZEND_API extern size_t executor_globals_offset; -END_EXTERN_C() - -#endif - -#define SYMTABLE_CACHE_SIZE 32 - - -#include "zend_compile.h" - -/* excpt.h on Digital Unix 4.0 defines function_table */ -#undef function_table - -typedef struct _zend_vm_stack *zend_vm_stack; -typedef struct _zend_ini_entry zend_ini_entry; - - -struct _zend_compiler_globals { - zend_stack loop_var_stack; - - zend_class_entry *active_class_entry; - - zend_string *compiled_filename; - - int zend_lineno; - - zend_op_array *active_op_array; - - HashTable *function_table; /* function symbol table */ - HashTable *class_table; /* class table */ - - HashTable filenames_table; - - HashTable *auto_globals; - - zend_bool parse_error; - zend_bool in_compilation; - zend_bool short_tags; - - zend_bool unclean_shutdown; - - zend_bool ini_parser_unbuffered_errors; - - zend_llist open_files; - - struct _zend_ini_parser_param *ini_parser_param; - - zend_bool skip_shebang; - zend_bool increment_lineno; - - zend_string *doc_comment; - uint32_t extra_fn_flags; - - uint32_t compiler_options; /* set of ZEND_COMPILE_* constants */ - - zend_oparray_context context; - zend_file_context file_context; - - zend_arena *arena; - - HashTable interned_strings; - - const zend_encoding **script_encoding_list; - size_t script_encoding_list_size; - zend_bool multibyte; - zend_bool detect_unicode; - zend_bool encoding_declared; - - zend_ast *ast; - zend_arena *ast_arena; - - zend_stack delayed_oplines_stack; - HashTable *memoized_exprs; - int memoize_mode; - - void *map_ptr_base; - size_t map_ptr_size; - size_t map_ptr_last; - - HashTable *delayed_variance_obligations; - HashTable *delayed_autoloads; - - uint32_t rtd_key_counter; -}; - - -struct _zend_executor_globals { - zval uninitialized_zval; - zval error_zval; - - /* symbol table cache */ - zend_array *symtable_cache[SYMTABLE_CACHE_SIZE]; - /* Pointer to one past the end of the symtable_cache */ - zend_array **symtable_cache_limit; - /* Pointer to first unused symtable_cache slot */ - zend_array **symtable_cache_ptr; - - zend_array symbol_table; /* main symbol table */ - - HashTable included_files; /* files already included */ - - JMP_BUF *bailout; - - int error_reporting; - int exit_status; - - HashTable *function_table; /* function symbol table */ - HashTable *class_table; /* class table */ - HashTable *zend_constants; /* constants table */ - - zval *vm_stack_top; - zval *vm_stack_end; - zend_vm_stack vm_stack; - size_t vm_stack_page_size; - - struct _zend_execute_data *current_execute_data; - zend_class_entry *fake_scope; /* used to avoid checks accessing properties */ - - zend_long precision; - - int ticks_count; - - uint32_t persistent_constants_count; - uint32_t persistent_functions_count; - uint32_t persistent_classes_count; - - HashTable *in_autoload; - zend_function *autoload_func; - zend_bool full_tables_cleanup; - - /* for extended information support */ - zend_bool no_extensions; - - zend_bool vm_interrupt; - zend_bool timed_out; - zend_long hard_timeout; - -#ifdef ZEND_WIN32 - OSVERSIONINFOEX windows_version_info; -#endif - - HashTable regular_list; - HashTable persistent_list; - - int user_error_handler_error_reporting; - zval user_error_handler; - zval user_exception_handler; - zend_stack user_error_handlers_error_reporting; - zend_stack user_error_handlers; - zend_stack user_exception_handlers; - - zend_error_handling_t error_handling; - zend_class_entry *exception_class; - - /* timeout support */ - zend_long timeout_seconds; - - int lambda_count; - - HashTable *ini_directives; - HashTable *modified_ini_directives; - zend_ini_entry *error_reporting_ini_entry; - - zend_objects_store objects_store; - zend_object *exception, *prev_exception; - const zend_op *opline_before_exception; - zend_op exception_op[3]; - - struct _zend_module_entry *current_module; - - zend_bool active; - zend_uchar flags; - - zend_long assertions; - - uint32_t ht_iterators_count; /* number of allocatd slots */ - uint32_t ht_iterators_used; /* number of used slots */ - HashTableIterator *ht_iterators; - HashTableIterator ht_iterators_slots[16]; - - void *saved_fpu_cw_ptr; -#if XPFPA_HAVE_CW - XPFPA_CW_DATATYPE saved_fpu_cw; -#endif - - zend_function trampoline; - zend_op call_trampoline_op; - - zend_bool each_deprecation_thrown; - - HashTable weakrefs; - - zend_bool exception_ignore_args; - - void *reserved[ZEND_MAX_RESERVED_RESOURCES]; -}; - -#define EG_FLAGS_INITIAL (0) -#define EG_FLAGS_IN_SHUTDOWN (1<<0) -#define EG_FLAGS_OBJECT_STORE_NO_REUSE (1<<1) -#define EG_FLAGS_IN_RESOURCE_SHUTDOWN (1<<2) - -struct _zend_ini_scanner_globals { - zend_file_handle *yy_in; - zend_file_handle *yy_out; - - unsigned int yy_leng; - unsigned char *yy_start; - unsigned char *yy_text; - unsigned char *yy_cursor; - unsigned char *yy_marker; - unsigned char *yy_limit; - int yy_state; - zend_stack state_stack; - - char *filename; - int lineno; - - /* Modes are: ZEND_INI_SCANNER_NORMAL, ZEND_INI_SCANNER_RAW, ZEND_INI_SCANNER_TYPED */ - int scanner_mode; -}; - -typedef enum { - ON_TOKEN, - ON_FEEDBACK, - ON_STOP -} zend_php_scanner_event; - -struct _zend_php_scanner_globals { - zend_file_handle *yy_in; - zend_file_handle *yy_out; - - unsigned int yy_leng; - unsigned char *yy_start; - unsigned char *yy_text; - unsigned char *yy_cursor; - unsigned char *yy_marker; - unsigned char *yy_limit; - int yy_state; - zend_stack state_stack; - zend_ptr_stack heredoc_label_stack; - zend_bool heredoc_scan_ahead; - int heredoc_indentation; - zend_bool heredoc_indentation_uses_spaces; - - /* original (unfiltered) script */ - unsigned char *script_org; - size_t script_org_size; - - /* filtered script */ - unsigned char *script_filtered; - size_t script_filtered_size; - - /* input/output filters */ - zend_encoding_filter input_filter; - zend_encoding_filter output_filter; - const zend_encoding *script_encoding; - - /* initial string length after scanning to first variable */ - int scanned_string_len; - - /* hooks */ - void (*on_event)(zend_php_scanner_event event, int token, int line, void *context); - void *on_event_context; -}; - -#endif /* ZEND_GLOBALS_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_globals_macros.h b/7.4.27/mac/include/php/Zend/zend_globals_macros.h deleted file mode 100644 index 59b3dac..0000000 --- a/7.4.27/mac/include/php/Zend/zend_globals_macros.h +++ /dev/null @@ -1,71 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_GLOBALS_MACROS_H -#define ZEND_GLOBALS_MACROS_H - -typedef struct _zend_compiler_globals zend_compiler_globals; -typedef struct _zend_executor_globals zend_executor_globals; -typedef struct _zend_php_scanner_globals zend_php_scanner_globals; -typedef struct _zend_ini_scanner_globals zend_ini_scanner_globals; - -BEGIN_EXTERN_C() - -/* Compiler */ -#ifdef ZTS -# define CG(v) ZEND_TSRMG_FAST(compiler_globals_offset, zend_compiler_globals *, v) -#else -# define CG(v) (compiler_globals.v) -extern ZEND_API struct _zend_compiler_globals compiler_globals; -#endif -ZEND_API int zendparse(void); - - -/* Executor */ -#ifdef ZTS -# define EG(v) ZEND_TSRMG_FAST(executor_globals_offset, zend_executor_globals *, v) -#else -# define EG(v) (executor_globals.v) -extern ZEND_API zend_executor_globals executor_globals; -#endif - -/* Language Scanner */ -#ifdef ZTS -# define LANG_SCNG(v) ZEND_TSRMG_FAST(language_scanner_globals_offset, zend_php_scanner_globals *, v) -extern ZEND_API ts_rsrc_id language_scanner_globals_id; -extern ZEND_API size_t language_scanner_globals_offset; -#else -# define LANG_SCNG(v) (language_scanner_globals.v) -extern ZEND_API zend_php_scanner_globals language_scanner_globals; -#endif - - -/* INI Scanner */ -#ifdef ZTS -# define INI_SCNG(v) ZEND_TSRMG_FAST(ini_scanner_globals_offset, zend_ini_scanner_globals *, v) -extern ZEND_API ts_rsrc_id ini_scanner_globals_id; -extern ZEND_API size_t ini_scanner_globals_offset; -#else -# define INI_SCNG(v) (ini_scanner_globals.v) -extern ZEND_API zend_ini_scanner_globals ini_scanner_globals; -#endif - -END_EXTERN_C() - -#endif /* ZEND_GLOBALS_MACROS_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_hash.h b/7.4.27/mac/include/php/Zend/zend_hash.h deleted file mode 100644 index f1e2d34..0000000 --- a/7.4.27/mac/include/php/Zend/zend_hash.h +++ /dev/null @@ -1,1192 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - | Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_HASH_H -#define ZEND_HASH_H - -#include "zend.h" - -#define HASH_KEY_IS_STRING 1 -#define HASH_KEY_IS_LONG 2 -#define HASH_KEY_NON_EXISTENT 3 - -#define HASH_UPDATE (1<<0) -#define HASH_ADD (1<<1) -#define HASH_UPDATE_INDIRECT (1<<2) -#define HASH_ADD_NEW (1<<3) -#define HASH_ADD_NEXT (1<<4) - -#define HASH_FLAG_CONSISTENCY ((1<<0) | (1<<1)) -#define HASH_FLAG_PACKED (1<<2) -#define HASH_FLAG_UNINITIALIZED (1<<3) -#define HASH_FLAG_STATIC_KEYS (1<<4) /* long and interned strings */ -#define HASH_FLAG_HAS_EMPTY_IND (1<<5) -#define HASH_FLAG_ALLOW_COW_VIOLATION (1<<6) - -/* Only the low byte are real flags */ -#define HASH_FLAG_MASK 0xff - -#define HT_FLAGS(ht) (ht)->u.flags - -#define HT_INVALIDATE(ht) do { \ - HT_FLAGS(ht) = HASH_FLAG_UNINITIALIZED; \ - } while (0) - -#define HT_IS_INITIALIZED(ht) \ - ((HT_FLAGS(ht) & HASH_FLAG_UNINITIALIZED) == 0) - -#define HT_IS_PACKED(ht) \ - ((HT_FLAGS(ht) & HASH_FLAG_PACKED) != 0) - -#define HT_IS_WITHOUT_HOLES(ht) \ - ((ht)->nNumUsed == (ht)->nNumOfElements) - -#define HT_HAS_STATIC_KEYS_ONLY(ht) \ - ((HT_FLAGS(ht) & (HASH_FLAG_PACKED|HASH_FLAG_STATIC_KEYS)) != 0) - -#if ZEND_DEBUG -# define HT_ALLOW_COW_VIOLATION(ht) HT_FLAGS(ht) |= HASH_FLAG_ALLOW_COW_VIOLATION -#else -# define HT_ALLOW_COW_VIOLATION(ht) -#endif - -#define HT_ITERATORS_COUNT(ht) (ht)->u.v.nIteratorsCount -#define HT_ITERATORS_OVERFLOW(ht) (HT_ITERATORS_COUNT(ht) == 0xff) -#define HT_HAS_ITERATORS(ht) (HT_ITERATORS_COUNT(ht) != 0) - -#define HT_SET_ITERATORS_COUNT(ht, iters) \ - do { HT_ITERATORS_COUNT(ht) = (iters); } while (0) -#define HT_INC_ITERATORS_COUNT(ht) \ - HT_SET_ITERATORS_COUNT(ht, HT_ITERATORS_COUNT(ht) + 1) -#define HT_DEC_ITERATORS_COUNT(ht) \ - HT_SET_ITERATORS_COUNT(ht, HT_ITERATORS_COUNT(ht) - 1) - -extern ZEND_API const HashTable zend_empty_array; - -#define ZVAL_EMPTY_ARRAY(z) do { \ - zval *__z = (z); \ - Z_ARR_P(__z) = (zend_array*)&zend_empty_array; \ - Z_TYPE_INFO_P(__z) = IS_ARRAY; \ - } while (0) - - -typedef struct _zend_hash_key { - zend_ulong h; - zend_string *key; -} zend_hash_key; - -typedef zend_bool (*merge_checker_func_t)(HashTable *target_ht, zval *source_data, zend_hash_key *hash_key, void *pParam); - -BEGIN_EXTERN_C() - -/* startup/shutdown */ -ZEND_API void ZEND_FASTCALL _zend_hash_init(HashTable *ht, uint32_t nSize, dtor_func_t pDestructor, zend_bool persistent); -ZEND_API void ZEND_FASTCALL zend_hash_destroy(HashTable *ht); -ZEND_API void ZEND_FASTCALL zend_hash_clean(HashTable *ht); - -#define zend_hash_init(ht, nSize, pHashFunction, pDestructor, persistent) \ - _zend_hash_init((ht), (nSize), (pDestructor), (persistent)) -#define zend_hash_init_ex(ht, nSize, pHashFunction, pDestructor, persistent, bApplyProtection) \ - _zend_hash_init((ht), (nSize), (pDestructor), (persistent)) - -ZEND_API void ZEND_FASTCALL zend_hash_real_init(HashTable *ht, zend_bool packed); -ZEND_API void ZEND_FASTCALL zend_hash_real_init_packed(HashTable *ht); -ZEND_API void ZEND_FASTCALL zend_hash_real_init_mixed(HashTable *ht); -ZEND_API void ZEND_FASTCALL zend_hash_packed_to_hash(HashTable *ht); -ZEND_API void ZEND_FASTCALL zend_hash_to_packed(HashTable *ht); -ZEND_API void ZEND_FASTCALL zend_hash_extend(HashTable *ht, uint32_t nSize, zend_bool packed); -ZEND_API void ZEND_FASTCALL zend_hash_discard(HashTable *ht, uint32_t nNumUsed); - -/* additions/updates/changes */ -ZEND_API zval* ZEND_FASTCALL zend_hash_add_or_update(HashTable *ht, zend_string *key, zval *pData, uint32_t flag); -ZEND_API zval* ZEND_FASTCALL zend_hash_update(HashTable *ht, zend_string *key,zval *pData); -ZEND_API zval* ZEND_FASTCALL zend_hash_update_ind(HashTable *ht, zend_string *key,zval *pData); -ZEND_API zval* ZEND_FASTCALL zend_hash_add(HashTable *ht, zend_string *key,zval *pData); -ZEND_API zval* ZEND_FASTCALL zend_hash_add_new(HashTable *ht, zend_string *key,zval *pData); - -ZEND_API zval* ZEND_FASTCALL zend_hash_str_add_or_update(HashTable *ht, const char *key, size_t len, zval *pData, uint32_t flag); -ZEND_API zval* ZEND_FASTCALL zend_hash_str_update(HashTable *ht, const char *key, size_t len, zval *pData); -ZEND_API zval* ZEND_FASTCALL zend_hash_str_update_ind(HashTable *ht, const char *key, size_t len, zval *pData); -ZEND_API zval* ZEND_FASTCALL zend_hash_str_add(HashTable *ht, const char *key, size_t len, zval *pData); -ZEND_API zval* ZEND_FASTCALL zend_hash_str_add_new(HashTable *ht, const char *key, size_t len, zval *pData); - -ZEND_API zval* ZEND_FASTCALL zend_hash_index_add_or_update(HashTable *ht, zend_ulong h, zval *pData, uint32_t flag); -ZEND_API zval* ZEND_FASTCALL zend_hash_index_add(HashTable *ht, zend_ulong h, zval *pData); -ZEND_API zval* ZEND_FASTCALL zend_hash_index_add_new(HashTable *ht, zend_ulong h, zval *pData); -ZEND_API zval* ZEND_FASTCALL zend_hash_index_update(HashTable *ht, zend_ulong h, zval *pData); -ZEND_API zval* ZEND_FASTCALL zend_hash_next_index_insert(HashTable *ht, zval *pData); -ZEND_API zval* ZEND_FASTCALL zend_hash_next_index_insert_new(HashTable *ht, zval *pData); - -ZEND_API zval* ZEND_FASTCALL zend_hash_index_add_empty_element(HashTable *ht, zend_ulong h); -ZEND_API zval* ZEND_FASTCALL zend_hash_add_empty_element(HashTable *ht, zend_string *key); -ZEND_API zval* ZEND_FASTCALL zend_hash_str_add_empty_element(HashTable *ht, const char *key, size_t len); - -ZEND_API zval* ZEND_FASTCALL zend_hash_set_bucket_key(HashTable *ht, Bucket *p, zend_string *key); - -#define ZEND_HASH_APPLY_KEEP 0 -#define ZEND_HASH_APPLY_REMOVE 1<<0 -#define ZEND_HASH_APPLY_STOP 1<<1 - -typedef int (*apply_func_t)(zval *pDest); -typedef int (*apply_func_arg_t)(zval *pDest, void *argument); -typedef int (*apply_func_args_t)(zval *pDest, int num_args, va_list args, zend_hash_key *hash_key); - -ZEND_API void ZEND_FASTCALL zend_hash_graceful_destroy(HashTable *ht); -ZEND_API void ZEND_FASTCALL zend_hash_graceful_reverse_destroy(HashTable *ht); -ZEND_API void ZEND_FASTCALL zend_hash_apply(HashTable *ht, apply_func_t apply_func); -ZEND_API void ZEND_FASTCALL zend_hash_apply_with_argument(HashTable *ht, apply_func_arg_t apply_func, void *); -ZEND_API void zend_hash_apply_with_arguments(HashTable *ht, apply_func_args_t apply_func, int, ...); - -/* This function should be used with special care (in other words, - * it should usually not be used). When used with the ZEND_HASH_APPLY_STOP - * return value, it assumes things about the order of the elements in the hash. - * Also, it does not provide the same kind of reentrancy protection that - * the standard apply functions do. - */ -ZEND_API void ZEND_FASTCALL zend_hash_reverse_apply(HashTable *ht, apply_func_t apply_func); - - -/* Deletes */ -ZEND_API int ZEND_FASTCALL zend_hash_del(HashTable *ht, zend_string *key); -ZEND_API int ZEND_FASTCALL zend_hash_del_ind(HashTable *ht, zend_string *key); -ZEND_API int ZEND_FASTCALL zend_hash_str_del(HashTable *ht, const char *key, size_t len); -ZEND_API int ZEND_FASTCALL zend_hash_str_del_ind(HashTable *ht, const char *key, size_t len); -ZEND_API int ZEND_FASTCALL zend_hash_index_del(HashTable *ht, zend_ulong h); -ZEND_API void ZEND_FASTCALL zend_hash_del_bucket(HashTable *ht, Bucket *p); - -/* Data retrieval */ -ZEND_API zval* ZEND_FASTCALL zend_hash_find(const HashTable *ht, zend_string *key); -ZEND_API zval* ZEND_FASTCALL zend_hash_str_find(const HashTable *ht, const char *key, size_t len); -ZEND_API zval* ZEND_FASTCALL zend_hash_index_find(const HashTable *ht, zend_ulong h); -ZEND_API zval* ZEND_FASTCALL _zend_hash_index_find(const HashTable *ht, zend_ulong h); - -/* The same as zend_hash_find(), but hash value of the key must be already calculated */ -ZEND_API zval* ZEND_FASTCALL _zend_hash_find_known_hash(const HashTable *ht, zend_string *key); - -static zend_always_inline zval *zend_hash_find_ex(const HashTable *ht, zend_string *key, zend_bool known_hash) -{ - if (known_hash) { - return _zend_hash_find_known_hash(ht, key); - } else { - return zend_hash_find(ht, key); - } -} - -#define ZEND_HASH_INDEX_FIND(_ht, _h, _ret, _not_found) do { \ - if (EXPECTED(HT_FLAGS(_ht) & HASH_FLAG_PACKED)) { \ - if (EXPECTED((zend_ulong)(_h) < (zend_ulong)(_ht)->nNumUsed)) { \ - _ret = &_ht->arData[_h].val; \ - if (UNEXPECTED(Z_TYPE_P(_ret) == IS_UNDEF)) { \ - goto _not_found; \ - } \ - } else { \ - goto _not_found; \ - } \ - } else { \ - _ret = _zend_hash_index_find(_ht, _h); \ - if (UNEXPECTED(_ret == NULL)) { \ - goto _not_found; \ - } \ - } \ - } while (0) - - -/* Misc */ -static zend_always_inline zend_bool zend_hash_exists(const HashTable *ht, zend_string *key) -{ - return zend_hash_find(ht, key) != NULL; -} - -static zend_always_inline zend_bool zend_hash_str_exists(const HashTable *ht, const char *str, size_t len) -{ - return zend_hash_str_find(ht, str, len) != NULL; -} - -static zend_always_inline zend_bool zend_hash_index_exists(const HashTable *ht, zend_ulong h) -{ - return zend_hash_index_find(ht, h) != NULL; -} - -/* traversing */ -ZEND_API HashPosition ZEND_FASTCALL zend_hash_get_current_pos(const HashTable *ht); - -#define zend_hash_has_more_elements_ex(ht, pos) \ - (zend_hash_get_current_key_type_ex(ht, pos) == HASH_KEY_NON_EXISTENT ? FAILURE : SUCCESS) -ZEND_API int ZEND_FASTCALL zend_hash_move_forward_ex(HashTable *ht, HashPosition *pos); -ZEND_API int ZEND_FASTCALL zend_hash_move_backwards_ex(HashTable *ht, HashPosition *pos); -ZEND_API int ZEND_FASTCALL zend_hash_get_current_key_ex(const HashTable *ht, zend_string **str_index, zend_ulong *num_index, HashPosition *pos); -ZEND_API void ZEND_FASTCALL zend_hash_get_current_key_zval_ex(const HashTable *ht, zval *key, HashPosition *pos); -ZEND_API int ZEND_FASTCALL zend_hash_get_current_key_type_ex(HashTable *ht, HashPosition *pos); -ZEND_API zval* ZEND_FASTCALL zend_hash_get_current_data_ex(HashTable *ht, HashPosition *pos); -ZEND_API void ZEND_FASTCALL zend_hash_internal_pointer_reset_ex(HashTable *ht, HashPosition *pos); -ZEND_API void ZEND_FASTCALL zend_hash_internal_pointer_end_ex(HashTable *ht, HashPosition *pos); - -#define zend_hash_has_more_elements(ht) \ - zend_hash_has_more_elements_ex(ht, &(ht)->nInternalPointer) -#define zend_hash_move_forward(ht) \ - zend_hash_move_forward_ex(ht, &(ht)->nInternalPointer) -#define zend_hash_move_backwards(ht) \ - zend_hash_move_backwards_ex(ht, &(ht)->nInternalPointer) -#define zend_hash_get_current_key(ht, str_index, num_index) \ - zend_hash_get_current_key_ex(ht, str_index, num_index, &(ht)->nInternalPointer) -#define zend_hash_get_current_key_zval(ht, key) \ - zend_hash_get_current_key_zval_ex(ht, key, &(ht)->nInternalPointer) -#define zend_hash_get_current_key_type(ht) \ - zend_hash_get_current_key_type_ex(ht, &(ht)->nInternalPointer) -#define zend_hash_get_current_data(ht) \ - zend_hash_get_current_data_ex(ht, &(ht)->nInternalPointer) -#define zend_hash_internal_pointer_reset(ht) \ - zend_hash_internal_pointer_reset_ex(ht, &(ht)->nInternalPointer) -#define zend_hash_internal_pointer_end(ht) \ - zend_hash_internal_pointer_end_ex(ht, &(ht)->nInternalPointer) - -/* Copying, merging and sorting */ -ZEND_API void ZEND_FASTCALL zend_hash_copy(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor); -ZEND_API void ZEND_FASTCALL zend_hash_merge(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, zend_bool overwrite); -ZEND_API void ZEND_FASTCALL zend_hash_merge_ex(HashTable *target, HashTable *source, copy_ctor_func_t pCopyConstructor, merge_checker_func_t pMergeSource, void *pParam); -ZEND_API void zend_hash_bucket_swap(Bucket *p, Bucket *q); -ZEND_API void zend_hash_bucket_renum_swap(Bucket *p, Bucket *q); -ZEND_API void zend_hash_bucket_packed_swap(Bucket *p, Bucket *q); -ZEND_API int zend_hash_compare(HashTable *ht1, HashTable *ht2, compare_func_t compar, zend_bool ordered); -ZEND_API int ZEND_FASTCALL zend_hash_sort_ex(HashTable *ht, sort_func_t sort_func, compare_func_t compare_func, zend_bool renumber); -ZEND_API zval* ZEND_FASTCALL zend_hash_minmax(const HashTable *ht, compare_func_t compar, uint32_t flag); - -#define zend_hash_sort(ht, compare_func, renumber) \ - zend_hash_sort_ex(ht, zend_sort, compare_func, renumber) - -#define zend_hash_num_elements(ht) \ - (ht)->nNumOfElements - -#define zend_hash_next_free_element(ht) \ - (ht)->nNextFreeElement - -ZEND_API int ZEND_FASTCALL zend_hash_rehash(HashTable *ht); - -#if !ZEND_DEBUG && defined(HAVE_BUILTIN_CONSTANT_P) -# define zend_new_array(size) \ - (__builtin_constant_p(size) ? \ - ((((uint32_t)(size)) <= HT_MIN_SIZE) ? \ - _zend_new_array_0() \ - : \ - _zend_new_array((size)) \ - ) \ - : \ - _zend_new_array((size)) \ - ) -#else -# define zend_new_array(size) \ - _zend_new_array(size) -#endif - -ZEND_API HashTable* ZEND_FASTCALL _zend_new_array_0(void); -ZEND_API HashTable* ZEND_FASTCALL _zend_new_array(uint32_t size); -ZEND_API HashTable* ZEND_FASTCALL zend_new_pair(zval *val1, zval *val2); -ZEND_API uint32_t zend_array_count(HashTable *ht); -ZEND_API HashTable* ZEND_FASTCALL zend_array_dup(HashTable *source); -ZEND_API void ZEND_FASTCALL zend_array_destroy(HashTable *ht); -ZEND_API void ZEND_FASTCALL zend_symtable_clean(HashTable *ht); -ZEND_API HashTable* ZEND_FASTCALL zend_symtable_to_proptable(HashTable *ht); -ZEND_API HashTable* ZEND_FASTCALL zend_proptable_to_symtable(HashTable *ht, zend_bool always_duplicate); - -ZEND_API int ZEND_FASTCALL _zend_handle_numeric_str_ex(const char *key, size_t length, zend_ulong *idx); - -ZEND_API uint32_t ZEND_FASTCALL zend_hash_iterator_add(HashTable *ht, HashPosition pos); -ZEND_API HashPosition ZEND_FASTCALL zend_hash_iterator_pos(uint32_t idx, HashTable *ht); -ZEND_API HashPosition ZEND_FASTCALL zend_hash_iterator_pos_ex(uint32_t idx, zval *array); -ZEND_API void ZEND_FASTCALL zend_hash_iterator_del(uint32_t idx); -ZEND_API HashPosition ZEND_FASTCALL zend_hash_iterators_lower_pos(HashTable *ht, HashPosition start); -ZEND_API void ZEND_FASTCALL _zend_hash_iterators_update(HashTable *ht, HashPosition from, HashPosition to); -ZEND_API void ZEND_FASTCALL zend_hash_iterators_advance(HashTable *ht, HashPosition step); - -static zend_always_inline void zend_hash_iterators_update(HashTable *ht, HashPosition from, HashPosition to) -{ - if (UNEXPECTED(HT_HAS_ITERATORS(ht))) { - _zend_hash_iterators_update(ht, from, to); - } -} - - -END_EXTERN_C() - -#define ZEND_INIT_SYMTABLE(ht) \ - ZEND_INIT_SYMTABLE_EX(ht, 8, 0) - -#define ZEND_INIT_SYMTABLE_EX(ht, n, persistent) \ - zend_hash_init(ht, n, NULL, ZVAL_PTR_DTOR, persistent) - -static zend_always_inline int _zend_handle_numeric_str(const char *key, size_t length, zend_ulong *idx) -{ - const char *tmp = key; - - if (EXPECTED(*tmp > '9')) { - return 0; - } else if (*tmp < '0') { - if (*tmp != '-') { - return 0; - } - tmp++; - if (*tmp > '9' || *tmp < '0') { - return 0; - } - } - return _zend_handle_numeric_str_ex(key, length, idx); -} - -#define ZEND_HANDLE_NUMERIC_STR(key, length, idx) \ - _zend_handle_numeric_str(key, length, &idx) - -#define ZEND_HANDLE_NUMERIC(key, idx) \ - ZEND_HANDLE_NUMERIC_STR(ZSTR_VAL(key), ZSTR_LEN(key), idx) - - -static zend_always_inline zval *zend_hash_find_ind(const HashTable *ht, zend_string *key) -{ - zval *zv; - - zv = zend_hash_find(ht, key); - return (zv && Z_TYPE_P(zv) == IS_INDIRECT) ? - ((Z_TYPE_P(Z_INDIRECT_P(zv)) != IS_UNDEF) ? Z_INDIRECT_P(zv) : NULL) : zv; -} - - -static zend_always_inline zval *zend_hash_find_ex_ind(const HashTable *ht, zend_string *key, zend_bool known_hash) -{ - zval *zv; - - zv = zend_hash_find_ex(ht, key, known_hash); - return (zv && Z_TYPE_P(zv) == IS_INDIRECT) ? - ((Z_TYPE_P(Z_INDIRECT_P(zv)) != IS_UNDEF) ? Z_INDIRECT_P(zv) : NULL) : zv; -} - - -static zend_always_inline int zend_hash_exists_ind(const HashTable *ht, zend_string *key) -{ - zval *zv; - - zv = zend_hash_find(ht, key); - return zv && (Z_TYPE_P(zv) != IS_INDIRECT || - Z_TYPE_P(Z_INDIRECT_P(zv)) != IS_UNDEF); -} - - -static zend_always_inline zval *zend_hash_str_find_ind(const HashTable *ht, const char *str, size_t len) -{ - zval *zv; - - zv = zend_hash_str_find(ht, str, len); - return (zv && Z_TYPE_P(zv) == IS_INDIRECT) ? - ((Z_TYPE_P(Z_INDIRECT_P(zv)) != IS_UNDEF) ? Z_INDIRECT_P(zv) : NULL) : zv; -} - - -static zend_always_inline int zend_hash_str_exists_ind(const HashTable *ht, const char *str, size_t len) -{ - zval *zv; - - zv = zend_hash_str_find(ht, str, len); - return zv && (Z_TYPE_P(zv) != IS_INDIRECT || - Z_TYPE_P(Z_INDIRECT_P(zv)) != IS_UNDEF); -} - -static zend_always_inline zval *zend_symtable_add_new(HashTable *ht, zend_string *key, zval *pData) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC(key, idx)) { - return zend_hash_index_add_new(ht, idx, pData); - } else { - return zend_hash_add_new(ht, key, pData); - } -} - -static zend_always_inline zval *zend_symtable_update(HashTable *ht, zend_string *key, zval *pData) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC(key, idx)) { - return zend_hash_index_update(ht, idx, pData); - } else { - return zend_hash_update(ht, key, pData); - } -} - - -static zend_always_inline zval *zend_symtable_update_ind(HashTable *ht, zend_string *key, zval *pData) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC(key, idx)) { - return zend_hash_index_update(ht, idx, pData); - } else { - return zend_hash_update_ind(ht, key, pData); - } -} - - -static zend_always_inline int zend_symtable_del(HashTable *ht, zend_string *key) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC(key, idx)) { - return zend_hash_index_del(ht, idx); - } else { - return zend_hash_del(ht, key); - } -} - - -static zend_always_inline int zend_symtable_del_ind(HashTable *ht, zend_string *key) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC(key, idx)) { - return zend_hash_index_del(ht, idx); - } else { - return zend_hash_del_ind(ht, key); - } -} - - -static zend_always_inline zval *zend_symtable_find(const HashTable *ht, zend_string *key) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC(key, idx)) { - return zend_hash_index_find(ht, idx); - } else { - return zend_hash_find(ht, key); - } -} - - -static zend_always_inline zval *zend_symtable_find_ind(const HashTable *ht, zend_string *key) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC(key, idx)) { - return zend_hash_index_find(ht, idx); - } else { - return zend_hash_find_ind(ht, key); - } -} - - -static zend_always_inline int zend_symtable_exists(HashTable *ht, zend_string *key) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC(key, idx)) { - return zend_hash_index_exists(ht, idx); - } else { - return zend_hash_exists(ht, key); - } -} - - -static zend_always_inline int zend_symtable_exists_ind(HashTable *ht, zend_string *key) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC(key, idx)) { - return zend_hash_index_exists(ht, idx); - } else { - return zend_hash_exists_ind(ht, key); - } -} - - -static zend_always_inline zval *zend_symtable_str_update(HashTable *ht, const char *str, size_t len, zval *pData) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC_STR(str, len, idx)) { - return zend_hash_index_update(ht, idx, pData); - } else { - return zend_hash_str_update(ht, str, len, pData); - } -} - - -static zend_always_inline zval *zend_symtable_str_update_ind(HashTable *ht, const char *str, size_t len, zval *pData) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC_STR(str, len, idx)) { - return zend_hash_index_update(ht, idx, pData); - } else { - return zend_hash_str_update_ind(ht, str, len, pData); - } -} - - -static zend_always_inline int zend_symtable_str_del(HashTable *ht, const char *str, size_t len) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC_STR(str, len, idx)) { - return zend_hash_index_del(ht, idx); - } else { - return zend_hash_str_del(ht, str, len); - } -} - - -static zend_always_inline int zend_symtable_str_del_ind(HashTable *ht, const char *str, size_t len) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC_STR(str, len, idx)) { - return zend_hash_index_del(ht, idx); - } else { - return zend_hash_str_del_ind(ht, str, len); - } -} - - -static zend_always_inline zval *zend_symtable_str_find(HashTable *ht, const char *str, size_t len) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC_STR(str, len, idx)) { - return zend_hash_index_find(ht, idx); - } else { - return zend_hash_str_find(ht, str, len); - } -} - - -static zend_always_inline int zend_symtable_str_exists(HashTable *ht, const char *str, size_t len) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC_STR(str, len, idx)) { - return zend_hash_index_exists(ht, idx); - } else { - return zend_hash_str_exists(ht, str, len); - } -} - -static zend_always_inline void *zend_hash_add_ptr(HashTable *ht, zend_string *key, void *pData) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, pData); - zv = zend_hash_add(ht, key, &tmp); - if (zv) { - ZEND_ASSUME(Z_PTR_P(zv)); - return Z_PTR_P(zv); - } else { - return NULL; - } -} - -static zend_always_inline void *zend_hash_add_new_ptr(HashTable *ht, zend_string *key, void *pData) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, pData); - zv = zend_hash_add_new(ht, key, &tmp); - if (zv) { - ZEND_ASSUME(Z_PTR_P(zv)); - return Z_PTR_P(zv); - } else { - return NULL; - } -} - -static zend_always_inline void *zend_hash_str_add_ptr(HashTable *ht, const char *str, size_t len, void *pData) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, pData); - zv = zend_hash_str_add(ht, str, len, &tmp); - if (zv) { - ZEND_ASSUME(Z_PTR_P(zv)); - return Z_PTR_P(zv); - } else { - return NULL; - } -} - -static zend_always_inline void *zend_hash_str_add_new_ptr(HashTable *ht, const char *str, size_t len, void *pData) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, pData); - zv = zend_hash_str_add_new(ht, str, len, &tmp); - if (zv) { - ZEND_ASSUME(Z_PTR_P(zv)); - return Z_PTR_P(zv); - } else { - return NULL; - } -} - -static zend_always_inline void *zend_hash_update_ptr(HashTable *ht, zend_string *key, void *pData) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, pData); - zv = zend_hash_update(ht, key, &tmp); - ZEND_ASSUME(Z_PTR_P(zv)); - return Z_PTR_P(zv); -} - -static zend_always_inline void *zend_hash_str_update_ptr(HashTable *ht, const char *str, size_t len, void *pData) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, pData); - zv = zend_hash_str_update(ht, str, len, &tmp); - ZEND_ASSUME(Z_PTR_P(zv)); - return Z_PTR_P(zv); -} - -static zend_always_inline void *zend_hash_add_mem(HashTable *ht, zend_string *key, void *pData, size_t size) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, NULL); - if ((zv = zend_hash_add(ht, key, &tmp))) { - Z_PTR_P(zv) = pemalloc(size, GC_FLAGS(ht) & IS_ARRAY_PERSISTENT); - memcpy(Z_PTR_P(zv), pData, size); - return Z_PTR_P(zv); - } - return NULL; -} - -static zend_always_inline void *zend_hash_add_new_mem(HashTable *ht, zend_string *key, void *pData, size_t size) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, NULL); - if ((zv = zend_hash_add_new(ht, key, &tmp))) { - Z_PTR_P(zv) = pemalloc(size, GC_FLAGS(ht) & IS_ARRAY_PERSISTENT); - memcpy(Z_PTR_P(zv), pData, size); - return Z_PTR_P(zv); - } - return NULL; -} - -static zend_always_inline void *zend_hash_str_add_mem(HashTable *ht, const char *str, size_t len, void *pData, size_t size) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, NULL); - if ((zv = zend_hash_str_add(ht, str, len, &tmp))) { - Z_PTR_P(zv) = pemalloc(size, GC_FLAGS(ht) & IS_ARRAY_PERSISTENT); - memcpy(Z_PTR_P(zv), pData, size); - return Z_PTR_P(zv); - } - return NULL; -} - -static zend_always_inline void *zend_hash_str_add_new_mem(HashTable *ht, const char *str, size_t len, void *pData, size_t size) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, NULL); - if ((zv = zend_hash_str_add_new(ht, str, len, &tmp))) { - Z_PTR_P(zv) = pemalloc(size, GC_FLAGS(ht) & IS_ARRAY_PERSISTENT); - memcpy(Z_PTR_P(zv), pData, size); - return Z_PTR_P(zv); - } - return NULL; -} - -static zend_always_inline void *zend_hash_update_mem(HashTable *ht, zend_string *key, void *pData, size_t size) -{ - void *p; - - p = pemalloc(size, GC_FLAGS(ht) & IS_ARRAY_PERSISTENT); - memcpy(p, pData, size); - return zend_hash_update_ptr(ht, key, p); -} - -static zend_always_inline void *zend_hash_str_update_mem(HashTable *ht, const char *str, size_t len, void *pData, size_t size) -{ - void *p; - - p = pemalloc(size, GC_FLAGS(ht) & IS_ARRAY_PERSISTENT); - memcpy(p, pData, size); - return zend_hash_str_update_ptr(ht, str, len, p); -} - -static zend_always_inline void *zend_hash_index_add_ptr(HashTable *ht, zend_ulong h, void *pData) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, pData); - zv = zend_hash_index_add(ht, h, &tmp); - return zv ? Z_PTR_P(zv) : NULL; -} - -static zend_always_inline void *zend_hash_index_add_new_ptr(HashTable *ht, zend_ulong h, void *pData) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, pData); - zv = zend_hash_index_add_new(ht, h, &tmp); - return zv ? Z_PTR_P(zv) : NULL; -} - -static zend_always_inline void *zend_hash_index_update_ptr(HashTable *ht, zend_ulong h, void *pData) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, pData); - zv = zend_hash_index_update(ht, h, &tmp); - ZEND_ASSUME(Z_PTR_P(zv)); - return Z_PTR_P(zv); -} - -static zend_always_inline void *zend_hash_index_add_mem(HashTable *ht, zend_ulong h, void *pData, size_t size) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, NULL); - if ((zv = zend_hash_index_add(ht, h, &tmp))) { - Z_PTR_P(zv) = pemalloc(size, GC_FLAGS(ht) & IS_ARRAY_PERSISTENT); - memcpy(Z_PTR_P(zv), pData, size); - return Z_PTR_P(zv); - } - return NULL; -} - -static zend_always_inline void *zend_hash_next_index_insert_ptr(HashTable *ht, void *pData) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, pData); - zv = zend_hash_next_index_insert(ht, &tmp); - if (zv) { - ZEND_ASSUME(Z_PTR_P(zv)); - return Z_PTR_P(zv); - } else { - return NULL; - } -} - -static zend_always_inline void *zend_hash_index_update_mem(HashTable *ht, zend_ulong h, void *pData, size_t size) -{ - void *p; - - p = pemalloc(size, GC_FLAGS(ht) & IS_ARRAY_PERSISTENT); - memcpy(p, pData, size); - return zend_hash_index_update_ptr(ht, h, p); -} - -static zend_always_inline void *zend_hash_next_index_insert_mem(HashTable *ht, void *pData, size_t size) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, NULL); - if ((zv = zend_hash_next_index_insert(ht, &tmp))) { - Z_PTR_P(zv) = pemalloc(size, GC_FLAGS(ht) & IS_ARRAY_PERSISTENT); - memcpy(Z_PTR_P(zv), pData, size); - return Z_PTR_P(zv); - } - return NULL; -} - -static zend_always_inline void *zend_hash_find_ptr(const HashTable *ht, zend_string *key) -{ - zval *zv; - - zv = zend_hash_find(ht, key); - if (zv) { - ZEND_ASSUME(Z_PTR_P(zv)); - return Z_PTR_P(zv); - } else { - return NULL; - } -} - -static zend_always_inline void *zend_hash_find_ex_ptr(const HashTable *ht, zend_string *key, zend_bool known_hash) -{ - zval *zv; - - zv = zend_hash_find_ex(ht, key, known_hash); - if (zv) { - ZEND_ASSUME(Z_PTR_P(zv)); - return Z_PTR_P(zv); - } else { - return NULL; - } -} - -static zend_always_inline void *zend_hash_str_find_ptr(const HashTable *ht, const char *str, size_t len) -{ - zval *zv; - - zv = zend_hash_str_find(ht, str, len); - if (zv) { - ZEND_ASSUME(Z_PTR_P(zv)); - return Z_PTR_P(zv); - } else { - return NULL; - } -} - -static zend_always_inline void *zend_hash_index_find_ptr(const HashTable *ht, zend_ulong h) -{ - zval *zv; - - zv = zend_hash_index_find(ht, h); - if (zv) { - ZEND_ASSUME(Z_PTR_P(zv)); - return Z_PTR_P(zv); - } else { - return NULL; - } -} - -static zend_always_inline zval *zend_hash_index_find_deref(HashTable *ht, zend_ulong h) -{ - zval *zv = zend_hash_index_find(ht, h); - if (zv) { - ZVAL_DEREF(zv); - } - return zv; -} - -static zend_always_inline zval *zend_hash_find_deref(HashTable *ht, zend_string *str) -{ - zval *zv = zend_hash_find(ht, str); - if (zv) { - ZVAL_DEREF(zv); - } - return zv; -} - -static zend_always_inline zval *zend_hash_str_find_deref(HashTable *ht, const char *str, size_t len) -{ - zval *zv = zend_hash_str_find(ht, str, len); - if (zv) { - ZVAL_DEREF(zv); - } - return zv; -} - -static zend_always_inline void *zend_symtable_str_find_ptr(HashTable *ht, const char *str, size_t len) -{ - zend_ulong idx; - - if (ZEND_HANDLE_NUMERIC_STR(str, len, idx)) { - return zend_hash_index_find_ptr(ht, idx); - } else { - return zend_hash_str_find_ptr(ht, str, len); - } -} - -static zend_always_inline void *zend_hash_get_current_data_ptr_ex(HashTable *ht, HashPosition *pos) -{ - zval *zv; - - zv = zend_hash_get_current_data_ex(ht, pos); - if (zv) { - ZEND_ASSUME(Z_PTR_P(zv)); - return Z_PTR_P(zv); - } else { - return NULL; - } -} - -#define zend_hash_get_current_data_ptr(ht) \ - zend_hash_get_current_data_ptr_ex(ht, &(ht)->nInternalPointer) - -#define ZEND_HASH_FOREACH(_ht, indirect) do { \ - HashTable *__ht = (_ht); \ - Bucket *_p = __ht->arData; \ - Bucket *_end = _p + __ht->nNumUsed; \ - for (; _p != _end; _p++) { \ - zval *_z = &_p->val; \ - if (indirect && Z_TYPE_P(_z) == IS_INDIRECT) { \ - _z = Z_INDIRECT_P(_z); \ - } \ - if (UNEXPECTED(Z_TYPE_P(_z) == IS_UNDEF)) continue; - -#define ZEND_HASH_REVERSE_FOREACH(_ht, indirect) do { \ - HashTable *__ht = (_ht); \ - uint32_t _idx = __ht->nNumUsed; \ - Bucket *_p = __ht->arData + _idx; \ - zval *_z; \ - for (_idx = __ht->nNumUsed; _idx > 0; _idx--) { \ - _p--; \ - _z = &_p->val; \ - if (indirect && Z_TYPE_P(_z) == IS_INDIRECT) { \ - _z = Z_INDIRECT_P(_z); \ - } \ - if (UNEXPECTED(Z_TYPE_P(_z) == IS_UNDEF)) continue; - -#define ZEND_HASH_FOREACH_END() \ - } \ - } while (0) - -#define ZEND_HASH_FOREACH_END_DEL() \ - __ht->nNumOfElements--; \ - do { \ - uint32_t j = HT_IDX_TO_HASH(_idx - 1); \ - uint32_t nIndex = _p->h | __ht->nTableMask; \ - uint32_t i = HT_HASH(__ht, nIndex); \ - if (UNEXPECTED(j != i)) { \ - Bucket *prev = HT_HASH_TO_BUCKET(__ht, i); \ - while (Z_NEXT(prev->val) != j) { \ - i = Z_NEXT(prev->val); \ - prev = HT_HASH_TO_BUCKET(__ht, i); \ - } \ - Z_NEXT(prev->val) = Z_NEXT(_p->val); \ - } else { \ - HT_HASH(__ht, nIndex) = Z_NEXT(_p->val); \ - } \ - } while (0); \ - } \ - __ht->nNumUsed = _idx; \ - } while (0) - -#define ZEND_HASH_FOREACH_BUCKET(ht, _bucket) \ - ZEND_HASH_FOREACH(ht, 0); \ - _bucket = _p; - -#define ZEND_HASH_FOREACH_VAL(ht, _val) \ - ZEND_HASH_FOREACH(ht, 0); \ - _val = _z; - -#define ZEND_HASH_FOREACH_VAL_IND(ht, _val) \ - ZEND_HASH_FOREACH(ht, 1); \ - _val = _z; - -#define ZEND_HASH_FOREACH_PTR(ht, _ptr) \ - ZEND_HASH_FOREACH(ht, 0); \ - _ptr = Z_PTR_P(_z); - -#define ZEND_HASH_FOREACH_NUM_KEY(ht, _h) \ - ZEND_HASH_FOREACH(ht, 0); \ - _h = _p->h; - -#define ZEND_HASH_FOREACH_STR_KEY(ht, _key) \ - ZEND_HASH_FOREACH(ht, 0); \ - _key = _p->key; - -#define ZEND_HASH_FOREACH_KEY(ht, _h, _key) \ - ZEND_HASH_FOREACH(ht, 0); \ - _h = _p->h; \ - _key = _p->key; - -#define ZEND_HASH_FOREACH_NUM_KEY_VAL(ht, _h, _val) \ - ZEND_HASH_FOREACH(ht, 0); \ - _h = _p->h; \ - _val = _z; - -#define ZEND_HASH_FOREACH_STR_KEY_VAL(ht, _key, _val) \ - ZEND_HASH_FOREACH(ht, 0); \ - _key = _p->key; \ - _val = _z; - -#define ZEND_HASH_FOREACH_KEY_VAL(ht, _h, _key, _val) \ - ZEND_HASH_FOREACH(ht, 0); \ - _h = _p->h; \ - _key = _p->key; \ - _val = _z; - -#define ZEND_HASH_FOREACH_STR_KEY_VAL_IND(ht, _key, _val) \ - ZEND_HASH_FOREACH(ht, 1); \ - _key = _p->key; \ - _val = _z; - -#define ZEND_HASH_FOREACH_KEY_VAL_IND(ht, _h, _key, _val) \ - ZEND_HASH_FOREACH(ht, 1); \ - _h = _p->h; \ - _key = _p->key; \ - _val = _z; - -#define ZEND_HASH_FOREACH_NUM_KEY_PTR(ht, _h, _ptr) \ - ZEND_HASH_FOREACH(ht, 0); \ - _h = _p->h; \ - _ptr = Z_PTR_P(_z); - -#define ZEND_HASH_FOREACH_STR_KEY_PTR(ht, _key, _ptr) \ - ZEND_HASH_FOREACH(ht, 0); \ - _key = _p->key; \ - _ptr = Z_PTR_P(_z); - -#define ZEND_HASH_FOREACH_KEY_PTR(ht, _h, _key, _ptr) \ - ZEND_HASH_FOREACH(ht, 0); \ - _h = _p->h; \ - _key = _p->key; \ - _ptr = Z_PTR_P(_z); - -#define ZEND_HASH_REVERSE_FOREACH_BUCKET(ht, _bucket) \ - ZEND_HASH_REVERSE_FOREACH(ht, 0); \ - _bucket = _p; - -#define ZEND_HASH_REVERSE_FOREACH_VAL(ht, _val) \ - ZEND_HASH_REVERSE_FOREACH(ht, 0); \ - _val = _z; - -#define ZEND_HASH_REVERSE_FOREACH_PTR(ht, _ptr) \ - ZEND_HASH_REVERSE_FOREACH(ht, 0); \ - _ptr = Z_PTR_P(_z); - -#define ZEND_HASH_REVERSE_FOREACH_VAL_IND(ht, _val) \ - ZEND_HASH_REVERSE_FOREACH(ht, 1); \ - _val = _z; - -#define ZEND_HASH_REVERSE_FOREACH_STR_KEY_VAL(ht, _key, _val) \ - ZEND_HASH_REVERSE_FOREACH(ht, 0); \ - _key = _p->key; \ - _val = _z; - -#define ZEND_HASH_REVERSE_FOREACH_KEY_VAL(ht, _h, _key, _val) \ - ZEND_HASH_REVERSE_FOREACH(ht, 0); \ - _h = _p->h; \ - _key = _p->key; \ - _val = _z; - -#define ZEND_HASH_REVERSE_FOREACH_KEY_VAL_IND(ht, _h, _key, _val) \ - ZEND_HASH_REVERSE_FOREACH(ht, 1); \ - _h = _p->h; \ - _key = _p->key; \ - _val = _z; - -/* The following macros are useful to insert a sequence of new elements - * of packed array. They may be used instead of series of - * zend_hash_next_index_insert_new() - * (HashTable must have enough free buckets). - */ -#define ZEND_HASH_FILL_PACKED(ht) do { \ - HashTable *__fill_ht = (ht); \ - Bucket *__fill_bkt = __fill_ht->arData + __fill_ht->nNumUsed; \ - uint32_t __fill_idx = __fill_ht->nNumUsed; \ - ZEND_ASSERT(HT_FLAGS(__fill_ht) & HASH_FLAG_PACKED); - -#define ZEND_HASH_FILL_SET(_val) \ - ZVAL_COPY_VALUE(&__fill_bkt->val, _val) - -#define ZEND_HASH_FILL_SET_NULL() \ - ZVAL_NULL(&__fill_bkt->val) - -#define ZEND_HASH_FILL_SET_LONG(_val) \ - ZVAL_LONG(&__fill_bkt->val, _val) - -#define ZEND_HASH_FILL_SET_DOUBLE(_val) \ - ZVAL_DOUBLE(&__fill_bkt->val, _val) - -#define ZEND_HASH_FILL_SET_STR(_val) \ - ZVAL_STR(&__fill_bkt->val, _val) - -#define ZEND_HASH_FILL_SET_STR_COPY(_val) \ - ZVAL_STR_COPY(&__fill_bkt->val, _val) - -#define ZEND_HASH_FILL_SET_INTERNED_STR(_val) \ - ZVAL_INTERNED_STR(&__fill_bkt->val, _val) - -#define ZEND_HASH_FILL_NEXT() do {\ - __fill_bkt->h = (__fill_idx); \ - __fill_bkt->key = NULL; \ - __fill_bkt++; \ - __fill_idx++; \ - } while (0) - -#define ZEND_HASH_FILL_ADD(_val) do { \ - ZEND_HASH_FILL_SET(_val); \ - ZEND_HASH_FILL_NEXT(); \ - } while (0) - -#define ZEND_HASH_FILL_END() \ - __fill_ht->nNumUsed = __fill_idx; \ - __fill_ht->nNumOfElements = __fill_idx; \ - __fill_ht->nNextFreeElement = __fill_idx; \ - __fill_ht->nInternalPointer = 0; \ - } while (0) - -static zend_always_inline zval *_zend_hash_append_ex(HashTable *ht, zend_string *key, zval *zv, int interned) -{ - uint32_t idx = ht->nNumUsed++; - uint32_t nIndex; - Bucket *p = ht->arData + idx; - - ZVAL_COPY_VALUE(&p->val, zv); - if (!interned && !ZSTR_IS_INTERNED(key)) { - HT_FLAGS(ht) &= ~HASH_FLAG_STATIC_KEYS; - zend_string_addref(key); - zend_string_hash_val(key); - } - p->key = key; - p->h = ZSTR_H(key); - nIndex = (uint32_t)p->h | ht->nTableMask; - Z_NEXT(p->val) = HT_HASH(ht, nIndex); - HT_HASH(ht, nIndex) = HT_IDX_TO_HASH(idx); - ht->nNumOfElements++; - return &p->val; -} - -static zend_always_inline zval *_zend_hash_append(HashTable *ht, zend_string *key, zval *zv) -{ - return _zend_hash_append_ex(ht, key, zv, 0); -} - -static zend_always_inline zval *_zend_hash_append_ptr_ex(HashTable *ht, zend_string *key, void *ptr, int interned) -{ - uint32_t idx = ht->nNumUsed++; - uint32_t nIndex; - Bucket *p = ht->arData + idx; - - ZVAL_PTR(&p->val, ptr); - if (!interned && !ZSTR_IS_INTERNED(key)) { - HT_FLAGS(ht) &= ~HASH_FLAG_STATIC_KEYS; - zend_string_addref(key); - zend_string_hash_val(key); - } - p->key = key; - p->h = ZSTR_H(key); - nIndex = (uint32_t)p->h | ht->nTableMask; - Z_NEXT(p->val) = HT_HASH(ht, nIndex); - HT_HASH(ht, nIndex) = HT_IDX_TO_HASH(idx); - ht->nNumOfElements++; - return &p->val; -} - -static zend_always_inline zval *_zend_hash_append_ptr(HashTable *ht, zend_string *key, void *ptr) -{ - return _zend_hash_append_ptr_ex(ht, key, ptr, 0); -} - -static zend_always_inline void _zend_hash_append_ind(HashTable *ht, zend_string *key, zval *ptr) -{ - uint32_t idx = ht->nNumUsed++; - uint32_t nIndex; - Bucket *p = ht->arData + idx; - - ZVAL_INDIRECT(&p->val, ptr); - if (!ZSTR_IS_INTERNED(key)) { - HT_FLAGS(ht) &= ~HASH_FLAG_STATIC_KEYS; - zend_string_addref(key); - zend_string_hash_val(key); - } - p->key = key; - p->h = ZSTR_H(key); - nIndex = (uint32_t)p->h | ht->nTableMask; - Z_NEXT(p->val) = HT_HASH(ht, nIndex); - HT_HASH(ht, nIndex) = HT_IDX_TO_HASH(idx); - ht->nNumOfElements++; -} - -#endif /* ZEND_HASH_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_highlight.h b/7.4.27/mac/include/php/Zend/zend_highlight.h deleted file mode 100644 index 92a4dbc..0000000 --- a/7.4.27/mac/include/php/Zend/zend_highlight.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_HIGHLIGHT_H -#define ZEND_HIGHLIGHT_H - -#define HL_COMMENT_COLOR "#FF8000" /* orange */ -#define HL_DEFAULT_COLOR "#0000BB" /* blue */ -#define HL_HTML_COLOR "#000000" /* black */ -#define HL_STRING_COLOR "#DD0000" /* red */ -#define HL_KEYWORD_COLOR "#007700" /* green */ - - -typedef struct _zend_syntax_highlighter_ini { - char *highlight_html; - char *highlight_comment; - char *highlight_default; - char *highlight_string; - char *highlight_keyword; -} zend_syntax_highlighter_ini; - - -BEGIN_EXTERN_C() -ZEND_API void zend_highlight(zend_syntax_highlighter_ini *syntax_highlighter_ini); -ZEND_API void zend_strip(void); -ZEND_API int highlight_file(char *filename, zend_syntax_highlighter_ini *syntax_highlighter_ini); -ZEND_API int highlight_string(zval *str, zend_syntax_highlighter_ini *syntax_highlighter_ini, char *str_name); -ZEND_API void zend_html_putc(char c); -ZEND_API void zend_html_puts(const char *s, size_t len); -END_EXTERN_C() - -extern zend_syntax_highlighter_ini syntax_highlighter_ini; - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_inheritance.h b/7.4.27/mac/include/php/Zend/zend_inheritance.h deleted file mode 100644 index c4e9e10..0000000 --- a/7.4.27/mac/include/php/Zend/zend_inheritance.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_INHERITANCE_H -#define ZEND_INHERITANCE_H - -#include "zend.h" - -BEGIN_EXTERN_C() - -ZEND_API void zend_do_implement_interface(zend_class_entry *ce, zend_class_entry *iface); -ZEND_API void zend_do_inheritance_ex(zend_class_entry *ce, zend_class_entry *parent_ce, zend_bool checked); - -#define zend_do_inheritance(ce, parent_ce) \ - zend_do_inheritance_ex(ce, parent_ce, 0) - -ZEND_API int zend_do_link_class(zend_class_entry *ce, zend_string *lc_parent_name); - -void zend_verify_abstract_class(zend_class_entry *ce); -void zend_check_deprecated_constructor(const zend_class_entry *ce); -void zend_build_properties_info_table(zend_class_entry *ce); -zend_bool zend_try_early_bind(zend_class_entry *ce, zend_class_entry *parent_ce, zend_string *lcname, zval *delayed_early_binding); - -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_ini.h b/7.4.27/mac/include/php/Zend/zend_ini.h deleted file mode 100644 index 5964448..0000000 --- a/7.4.27/mac/include/php/Zend/zend_ini.h +++ /dev/null @@ -1,197 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_INI_H -#define ZEND_INI_H - -#define ZEND_INI_USER (1<<0) -#define ZEND_INI_PERDIR (1<<1) -#define ZEND_INI_SYSTEM (1<<2) - -#define ZEND_INI_ALL (ZEND_INI_USER|ZEND_INI_PERDIR|ZEND_INI_SYSTEM) - -#define ZEND_INI_MH(name) int name(zend_ini_entry *entry, zend_string *new_value, void *mh_arg1, void *mh_arg2, void *mh_arg3, int stage) -#define ZEND_INI_DISP(name) ZEND_COLD void name(zend_ini_entry *ini_entry, int type) - -typedef struct _zend_ini_entry_def { - const char *name; - ZEND_INI_MH((*on_modify)); - void *mh_arg1; - void *mh_arg2; - void *mh_arg3; - const char *value; - void (*displayer)(zend_ini_entry *ini_entry, int type); - - uint32_t value_length; - uint16_t name_length; - uint8_t modifiable; -} zend_ini_entry_def; - -struct _zend_ini_entry { - zend_string *name; - ZEND_INI_MH((*on_modify)); - void *mh_arg1; - void *mh_arg2; - void *mh_arg3; - zend_string *value; - zend_string *orig_value; - void (*displayer)(zend_ini_entry *ini_entry, int type); - - int module_number; - - uint8_t modifiable; - uint8_t orig_modifiable; - uint8_t modified; - -}; - -BEGIN_EXTERN_C() -ZEND_API int zend_ini_startup(void); -ZEND_API int zend_ini_shutdown(void); -ZEND_API int zend_ini_global_shutdown(void); -ZEND_API int zend_ini_deactivate(void); -ZEND_API void zend_ini_dtor(HashTable *ini_directives); - -ZEND_API int zend_copy_ini_directives(void); - -ZEND_API void zend_ini_sort_entries(void); - -ZEND_API int zend_register_ini_entries(const zend_ini_entry_def *ini_entry, int module_number); -ZEND_API void zend_unregister_ini_entries(int module_number); -ZEND_API void zend_ini_refresh_caches(int stage); -ZEND_API int zend_alter_ini_entry(zend_string *name, zend_string *new_value, int modify_type, int stage); -ZEND_API int zend_alter_ini_entry_ex(zend_string *name, zend_string *new_value, int modify_type, int stage, int force_change); -ZEND_API int zend_alter_ini_entry_chars(zend_string *name, const char *value, size_t value_length, int modify_type, int stage); -ZEND_API int zend_alter_ini_entry_chars_ex(zend_string *name, const char *value, size_t value_length, int modify_type, int stage, int force_change); -ZEND_API int zend_restore_ini_entry(zend_string *name, int stage); -ZEND_API void display_ini_entries(zend_module_entry *module); - -ZEND_API zend_long zend_ini_long(char *name, size_t name_length, int orig); -ZEND_API double zend_ini_double(char *name, size_t name_length, int orig); -ZEND_API char *zend_ini_string(char *name, size_t name_length, int orig); -ZEND_API char *zend_ini_string_ex(char *name, size_t name_length, int orig, zend_bool *exists); -ZEND_API zend_string *zend_ini_get_value(zend_string *name); -ZEND_API zend_bool zend_ini_parse_bool(zend_string *str); - -ZEND_API int zend_ini_register_displayer(char *name, uint32_t name_length, void (*displayer)(zend_ini_entry *ini_entry, int type)); - -ZEND_API ZEND_INI_DISP(zend_ini_boolean_displayer_cb); -ZEND_API ZEND_INI_DISP(zend_ini_color_displayer_cb); -ZEND_API ZEND_INI_DISP(display_link_numbers); -END_EXTERN_C() - -#define ZEND_INI_BEGIN() static const zend_ini_entry_def ini_entries[] = { -#define ZEND_INI_END() { NULL, NULL, NULL, NULL, NULL, NULL, NULL, 0, 0, 0} }; - -#define ZEND_INI_ENTRY3_EX(name, default_value, modifiable, on_modify, arg1, arg2, arg3, displayer) \ - { name, on_modify, arg1, arg2, arg3, default_value, displayer, sizeof(default_value)-1, sizeof(name)-1, modifiable }, - -#define ZEND_INI_ENTRY3(name, default_value, modifiable, on_modify, arg1, arg2, arg3) \ - ZEND_INI_ENTRY3_EX(name, default_value, modifiable, on_modify, arg1, arg2, arg3, NULL) - -#define ZEND_INI_ENTRY2_EX(name, default_value, modifiable, on_modify, arg1, arg2, displayer) \ - ZEND_INI_ENTRY3_EX(name, default_value, modifiable, on_modify, arg1, arg2, NULL, displayer) - -#define ZEND_INI_ENTRY2(name, default_value, modifiable, on_modify, arg1, arg2) \ - ZEND_INI_ENTRY2_EX(name, default_value, modifiable, on_modify, arg1, arg2, NULL) - -#define ZEND_INI_ENTRY1_EX(name, default_value, modifiable, on_modify, arg1, displayer) \ - ZEND_INI_ENTRY3_EX(name, default_value, modifiable, on_modify, arg1, NULL, NULL, displayer) - -#define ZEND_INI_ENTRY1(name, default_value, modifiable, on_modify, arg1) \ - ZEND_INI_ENTRY1_EX(name, default_value, modifiable, on_modify, arg1, NULL) - -#define ZEND_INI_ENTRY_EX(name, default_value, modifiable, on_modify, displayer) \ - ZEND_INI_ENTRY3_EX(name, default_value, modifiable, on_modify, NULL, NULL, NULL, displayer) - -#define ZEND_INI_ENTRY(name, default_value, modifiable, on_modify) \ - ZEND_INI_ENTRY_EX(name, default_value, modifiable, on_modify, NULL) - -#ifdef ZTS -#define STD_ZEND_INI_ENTRY(name, default_value, modifiable, on_modify, property_name, struct_type, struct_ptr) \ - ZEND_INI_ENTRY2(name, default_value, modifiable, on_modify, (void *) XtOffsetOf(struct_type, property_name), (void *) &struct_ptr##_id) -#define STD_ZEND_INI_ENTRY_EX(name, default_value, modifiable, on_modify, property_name, struct_type, struct_ptr, displayer) \ - ZEND_INI_ENTRY2_EX(name, default_value, modifiable, on_modify, (void *) XtOffsetOf(struct_type, property_name), (void *) &struct_ptr##_id, displayer) -#define STD_ZEND_INI_BOOLEAN(name, default_value, modifiable, on_modify, property_name, struct_type, struct_ptr) \ - ZEND_INI_ENTRY3_EX(name, default_value, modifiable, on_modify, (void *) XtOffsetOf(struct_type, property_name), (void *) &struct_ptr##_id, NULL, zend_ini_boolean_displayer_cb) -#else -#define STD_ZEND_INI_ENTRY(name, default_value, modifiable, on_modify, property_name, struct_type, struct_ptr) \ - ZEND_INI_ENTRY2(name, default_value, modifiable, on_modify, (void *) XtOffsetOf(struct_type, property_name), (void *) &struct_ptr) -#define STD_ZEND_INI_ENTRY_EX(name, default_value, modifiable, on_modify, property_name, struct_type, struct_ptr, displayer) \ - ZEND_INI_ENTRY2_EX(name, default_value, modifiable, on_modify, (void *) XtOffsetOf(struct_type, property_name), (void *) &struct_ptr, displayer) -#define STD_ZEND_INI_BOOLEAN(name, default_value, modifiable, on_modify, property_name, struct_type, struct_ptr) \ - ZEND_INI_ENTRY3_EX(name, default_value, modifiable, on_modify, (void *) XtOffsetOf(struct_type, property_name), (void *) &struct_ptr, NULL, zend_ini_boolean_displayer_cb) -#endif - -#define INI_INT(name) zend_ini_long((name), sizeof(name)-1, 0) -#define INI_FLT(name) zend_ini_double((name), sizeof(name)-1, 0) -#define INI_STR(name) zend_ini_string_ex((name), sizeof(name)-1, 0, NULL) -#define INI_BOOL(name) ((zend_bool) INI_INT(name)) - -#define INI_ORIG_INT(name) zend_ini_long((name), sizeof(name)-1, 1) -#define INI_ORIG_FLT(name) zend_ini_double((name), sizeof(name)-1, 1) -#define INI_ORIG_STR(name) zend_ini_string((name), sizeof(name)-1, 1) -#define INI_ORIG_BOOL(name) ((zend_bool) INI_ORIG_INT(name)) - -#define REGISTER_INI_ENTRIES() zend_register_ini_entries(ini_entries, module_number) -#define UNREGISTER_INI_ENTRIES() zend_unregister_ini_entries(module_number) -#define DISPLAY_INI_ENTRIES() display_ini_entries(zend_module) - -#define REGISTER_INI_DISPLAYER(name, displayer) zend_ini_register_displayer((name), sizeof(name)-1, displayer) -#define REGISTER_INI_BOOLEAN(name) REGISTER_INI_DISPLAYER(name, zend_ini_boolean_displayer_cb) - -/* Standard message handlers */ -BEGIN_EXTERN_C() -ZEND_API ZEND_INI_MH(OnUpdateBool); -ZEND_API ZEND_INI_MH(OnUpdateLong); -ZEND_API ZEND_INI_MH(OnUpdateLongGEZero); -ZEND_API ZEND_INI_MH(OnUpdateReal); -ZEND_API ZEND_INI_MH(OnUpdateString); -ZEND_API ZEND_INI_MH(OnUpdateStringUnempty); -END_EXTERN_C() - -#define ZEND_INI_DISPLAY_ORIG 1 -#define ZEND_INI_DISPLAY_ACTIVE 2 - -#define ZEND_INI_STAGE_STARTUP (1<<0) -#define ZEND_INI_STAGE_SHUTDOWN (1<<1) -#define ZEND_INI_STAGE_ACTIVATE (1<<2) -#define ZEND_INI_STAGE_DEACTIVATE (1<<3) -#define ZEND_INI_STAGE_RUNTIME (1<<4) -#define ZEND_INI_STAGE_HTACCESS (1<<5) - -#define ZEND_INI_STAGE_IN_REQUEST (ZEND_INI_STAGE_ACTIVATE|ZEND_INI_STAGE_DEACTIVATE|ZEND_INI_STAGE_RUNTIME|ZEND_INI_STAGE_HTACCESS) - -/* INI parsing engine */ -typedef void (*zend_ini_parser_cb_t)(zval *arg1, zval *arg2, zval *arg3, int callback_type, void *arg); -BEGIN_EXTERN_C() -ZEND_API int zend_parse_ini_file(zend_file_handle *fh, zend_bool unbuffered_errors, int scanner_mode, zend_ini_parser_cb_t ini_parser_cb, void *arg); -ZEND_API int zend_parse_ini_string(char *str, zend_bool unbuffered_errors, int scanner_mode, zend_ini_parser_cb_t ini_parser_cb, void *arg); -END_EXTERN_C() - -/* INI entries */ -#define ZEND_INI_PARSER_ENTRY 1 /* Normal entry: foo = bar */ -#define ZEND_INI_PARSER_SECTION 2 /* Section: [foobar] */ -#define ZEND_INI_PARSER_POP_ENTRY 3 /* Offset entry: foo[] = bar */ - -typedef struct _zend_ini_parser_param { - zend_ini_parser_cb_t ini_parser_cb; - void *arg; -} zend_ini_parser_param; - -#endif /* ZEND_INI_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_ini_parser.h b/7.4.27/mac/include/php/Zend/zend_ini_parser.h deleted file mode 100644 index 30a4e20..0000000 --- a/7.4.27/mac/include/php/Zend/zend_ini_parser.h +++ /dev/null @@ -1,78 +0,0 @@ -/* A Bison parser, made by GNU Bison 3.0.2. */ - -/* Bison interface for Yacc-like parsers in C - - Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* As a special exception, you may create a larger work that contains - part or all of the Bison parser skeleton and distribute that work - under terms of your choice, so long as that work isn't itself a - parser generator using the skeleton or a modified version thereof - as a parser skeleton. Alternatively, if you modify or redistribute - the parser skeleton itself, you may (at your option) remove this - special exception, which will cause the skeleton and the resulting - Bison output files to be licensed under the GNU General Public - License without this special exception. - - This special exception was added by the Free Software Foundation in - version 2.2 of Bison. */ - -#ifndef YY_INI_ZEND_ZEND_INI_PARSER_H_INCLUDED -# define YY_INI_ZEND_ZEND_INI_PARSER_H_INCLUDED -/* Debug traces. */ -#ifndef YYDEBUG -# define YYDEBUG 0 -#endif -#if YYDEBUG -extern int ini_debug; -#endif - -/* Token type. */ -#ifndef YYTOKENTYPE -# define YYTOKENTYPE - enum yytokentype - { - END = 0, - TC_SECTION = 258, - TC_RAW = 259, - TC_CONSTANT = 260, - TC_NUMBER = 261, - TC_STRING = 262, - TC_WHITESPACE = 263, - TC_LABEL = 264, - TC_OFFSET = 265, - TC_DOLLAR_CURLY = 266, - TC_VARNAME = 267, - TC_QUOTED_STRING = 268, - BOOL_TRUE = 269, - BOOL_FALSE = 270, - NULL_NULL = 271, - END_OF_LINE = 272 - }; -#endif - -/* Value type. */ -#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED -typedef int YYSTYPE; -# define YYSTYPE_IS_TRIVIAL 1 -# define YYSTYPE_IS_DECLARED 1 -#endif - - - -int ini_parse (void); - -#endif /* !YY_INI_ZEND_ZEND_INI_PARSER_H_INCLUDED */ diff --git a/7.4.27/mac/include/php/Zend/zend_ini_scanner.h b/7.4.27/mac/include/php/Zend/zend_ini_scanner.h deleted file mode 100644 index ddb9247..0000000 --- a/7.4.27/mac/include/php/Zend/zend_ini_scanner.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef _ZEND_INI_SCANNER_H -#define _ZEND_INI_SCANNER_H - -/* Scanner modes */ -#define ZEND_INI_SCANNER_NORMAL 0 /* Normal mode. [DEFAULT] */ -#define ZEND_INI_SCANNER_RAW 1 /* Raw mode. Option values are not parsed */ -#define ZEND_INI_SCANNER_TYPED 2 /* Typed mode. */ - -BEGIN_EXTERN_C() -ZEND_COLD int zend_ini_scanner_get_lineno(void); -ZEND_COLD char *zend_ini_scanner_get_filename(void); -int zend_ini_open_file_for_scanning(zend_file_handle *fh, int scanner_mode); -int zend_ini_prepare_string_for_scanning(char *str, int scanner_mode); -int ini_lex(zval *ini_lval); -void shutdown_ini_scanner(void); -END_EXTERN_C() - -#endif /* _ZEND_INI_SCANNER_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_ini_scanner_defs.h b/7.4.27/mac/include/php/Zend/zend_ini_scanner_defs.h deleted file mode 100644 index 9fe627c..0000000 --- a/7.4.27/mac/include/php/Zend/zend_ini_scanner_defs.h +++ /dev/null @@ -1,12 +0,0 @@ -/* Generated by re2c 0.13.5 */ - -enum YYCONDTYPE { - yycINITIAL, - yycST_OFFSET, - yycST_SECTION_VALUE, - yycST_VALUE, - yycST_SECTION_RAW, - yycST_DOUBLE_QUOTES, - yycST_VARNAME, - yycST_RAW, -}; diff --git a/7.4.27/mac/include/php/Zend/zend_interfaces.h b/7.4.27/mac/include/php/Zend/zend_interfaces.h deleted file mode 100644 index 44770a1..0000000 --- a/7.4.27/mac/include/php/Zend/zend_interfaces.h +++ /dev/null @@ -1,82 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Marcus Boerger | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_INTERFACES_H -#define ZEND_INTERFACES_H - -#include "zend.h" -#include "zend_API.h" - -BEGIN_EXTERN_C() - -extern ZEND_API zend_class_entry *zend_ce_traversable; -extern ZEND_API zend_class_entry *zend_ce_aggregate; -extern ZEND_API zend_class_entry *zend_ce_iterator; -extern ZEND_API zend_class_entry *zend_ce_arrayaccess; -extern ZEND_API zend_class_entry *zend_ce_serializable; -extern ZEND_API zend_class_entry *zend_ce_countable; - -typedef struct _zend_user_iterator { - zend_object_iterator it; - zend_class_entry *ce; - zval value; -} zend_user_iterator; - -ZEND_API zval* zend_call_method(zval *object_pp, zend_class_entry *obj_ce, zend_function **fn_proxy, const char *function_name, size_t function_name_len, zval *retval, int param_count, zval* arg1, zval* arg2); - -#define zend_call_method_with_0_params(obj, obj_ce, fn_proxy, function_name, retval) \ - zend_call_method(obj, obj_ce, fn_proxy, function_name, sizeof(function_name)-1, retval, 0, NULL, NULL) - -#define zend_call_method_with_1_params(obj, obj_ce, fn_proxy, function_name, retval, arg1) \ - zend_call_method(obj, obj_ce, fn_proxy, function_name, sizeof(function_name)-1, retval, 1, arg1, NULL) - -#define zend_call_method_with_2_params(obj, obj_ce, fn_proxy, function_name, retval, arg1, arg2) \ - zend_call_method(obj, obj_ce, fn_proxy, function_name, sizeof(function_name)-1, retval, 2, arg1, arg2) - -#define REGISTER_MAGIC_INTERFACE(class_name, class_name_str) \ - {\ - zend_class_entry ce;\ - INIT_CLASS_ENTRY(ce, # class_name_str, zend_funcs_ ## class_name) \ - zend_ce_ ## class_name = zend_register_internal_interface(&ce);\ - zend_ce_ ## class_name->interface_gets_implemented = zend_implement_ ## class_name;\ - } - -#define REGISTER_MAGIC_IMPLEMENT(class_name, interface_name) \ - zend_class_implements(zend_ce_ ## class_name, 1, zend_ce_ ## interface_name) - -ZEND_API void zend_user_it_rewind(zend_object_iterator *_iter); -ZEND_API int zend_user_it_valid(zend_object_iterator *_iter); -ZEND_API void zend_user_it_get_current_key(zend_object_iterator *_iter, zval *key); -ZEND_API zval *zend_user_it_get_current_data(zend_object_iterator *_iter); -ZEND_API void zend_user_it_move_forward(zend_object_iterator *_iter); -ZEND_API void zend_user_it_invalidate_current(zend_object_iterator *_iter); - -ZEND_API void zend_user_it_new_iterator(zend_class_entry *ce, zval *object, zval *iterator); -ZEND_API zend_object_iterator *zend_user_it_get_new_iterator(zend_class_entry *ce, zval *object, int by_ref); - -ZEND_API void zend_register_interfaces(void); - -ZEND_API int zend_user_serialize(zval *object, unsigned char **buffer, size_t *buf_len, zend_serialize_data *data); -ZEND_API int zend_user_unserialize(zval *object, zend_class_entry *ce, const unsigned char *buf, size_t buf_len, zend_unserialize_data *data); - -ZEND_API int zend_class_serialize_deny(zval *object, unsigned char **buffer, size_t *buf_len, zend_serialize_data *data); -ZEND_API int zend_class_unserialize_deny(zval *object, zend_class_entry *ce, const unsigned char *buf, size_t buf_len, zend_unserialize_data *data); - -END_EXTERN_C() - -#endif /* ZEND_INTERFACES_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_istdiostream.h b/7.4.27/mac/include/php/Zend/zend_istdiostream.h deleted file mode 100644 index 74470d2..0000000 --- a/7.4.27/mac/include/php/Zend/zend_istdiostream.h +++ /dev/null @@ -1,34 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef _ZEND_STDIOSTREAM -#define _ZEND_STDIOSTREAM - -#if defined(ZTS) && !defined(HAVE_CLASS_ISTDIOSTREAM) -class istdiostream : public istream -{ -private: - stdiobuf _file; -public: - istdiostream (FILE* __f) : istream(), _file(__f) { init(&_file); } - stdiobuf* rdbuf()/* const */ { return &_file; } -}; -#endif - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_iterators.h b/7.4.27/mac/include/php/Zend/zend_iterators.h deleted file mode 100644 index 941b260..0000000 --- a/7.4.27/mac/include/php/Zend/zend_iterators.h +++ /dev/null @@ -1,80 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Wez Furlong | - | Marcus Boerger | - +----------------------------------------------------------------------+ -*/ - -/* These iterators were designed to operate within the foreach() - * structures provided by the engine, but could be extended for use - * with other iterative engine opcodes. - * These methods have similar semantics to the zend_hash API functions - * with similar names. - * */ - -typedef struct _zend_object_iterator zend_object_iterator; - -typedef struct _zend_object_iterator_funcs { - /* release all resources associated with this iterator instance */ - void (*dtor)(zend_object_iterator *iter); - - /* check for end of iteration (FAILURE or SUCCESS if data is valid) */ - int (*valid)(zend_object_iterator *iter); - - /* fetch the item data for the current element */ - zval *(*get_current_data)(zend_object_iterator *iter); - - /* fetch the key for the current element (optional, may be NULL). The key - * should be written into the provided zval* using the ZVAL_* macros. If - * this handler is not provided auto-incrementing integer keys will be - * used. */ - void (*get_current_key)(zend_object_iterator *iter, zval *key); - - /* step forwards to next element */ - void (*move_forward)(zend_object_iterator *iter); - - /* rewind to start of data (optional, may be NULL) */ - void (*rewind)(zend_object_iterator *iter); - - /* invalidate current value/key (optional, may be NULL) */ - void (*invalidate_current)(zend_object_iterator *iter); -} zend_object_iterator_funcs; - -struct _zend_object_iterator { - zend_object std; - zval data; - const zend_object_iterator_funcs *funcs; - zend_ulong index; /* private to fe_reset/fe_fetch opcodes */ -}; - -typedef struct _zend_class_iterator_funcs { - zend_function *zf_new_iterator; - zend_function *zf_valid; - zend_function *zf_current; - zend_function *zf_key; - zend_function *zf_next; - zend_function *zf_rewind; -} zend_class_iterator_funcs; - -BEGIN_EXTERN_C() -/* given a zval, returns stuff that can be used to iterate it. */ -ZEND_API zend_object_iterator* zend_iterator_unwrap(zval *array_ptr); - -/* given an iterator, wrap it up as a zval for use by the engine opcodes */ -ZEND_API void zend_iterator_init(zend_object_iterator *iter); -ZEND_API void zend_iterator_dtor(zend_object_iterator *iter); - -ZEND_API void zend_register_iterator_wrapper(void); -END_EXTERN_C() diff --git a/7.4.27/mac/include/php/Zend/zend_language_parser.h b/7.4.27/mac/include/php/Zend/zend_language_parser.h deleted file mode 100644 index e3fd0d4..0000000 --- a/7.4.27/mac/include/php/Zend/zend_language_parser.h +++ /dev/null @@ -1,203 +0,0 @@ -/* A Bison parser, made by GNU Bison 3.0.2. */ - -/* Bison interface for Yacc-like parsers in C - - Copyright (C) 1984, 1989-1990, 2000-2013 Free Software Foundation, Inc. - - This program is free software: you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation, either version 3 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program. If not, see . */ - -/* As a special exception, you may create a larger work that contains - part or all of the Bison parser skeleton and distribute that work - under terms of your choice, so long as that work isn't itself a - parser generator using the skeleton or a modified version thereof - as a parser skeleton. Alternatively, if you modify or redistribute - the parser skeleton itself, you may (at your option) remove this - special exception, which will cause the skeleton and the resulting - Bison output files to be licensed under the GNU General Public - License without this special exception. - - This special exception was added by the Free Software Foundation in - version 2.2 of Bison. */ - -#ifndef YY_ZEND_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED -# define YY_ZEND_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED -/* Debug traces. */ -#ifndef YYDEBUG -# define YYDEBUG 0 -#endif -#if YYDEBUG -extern int zenddebug; -#endif -/* "%code requires" blocks. */ - - - - - -/* Token type. */ -#include "zend.h" -#ifndef YYTOKENTYPE -# define YYTOKENTYPE - enum yytokentype - { - END = 0, - PREC_ARROW_FUNCTION = 258, - T_INCLUDE = 259, - T_INCLUDE_ONCE = 260, - T_REQUIRE = 261, - T_REQUIRE_ONCE = 262, - T_LOGICAL_OR = 263, - T_LOGICAL_XOR = 264, - T_LOGICAL_AND = 265, - T_PRINT = 266, - T_YIELD = 267, - T_DOUBLE_ARROW = 268, - T_YIELD_FROM = 269, - T_PLUS_EQUAL = 270, - T_MINUS_EQUAL = 271, - T_MUL_EQUAL = 272, - T_DIV_EQUAL = 273, - T_CONCAT_EQUAL = 274, - T_MOD_EQUAL = 275, - T_AND_EQUAL = 276, - T_OR_EQUAL = 277, - T_XOR_EQUAL = 278, - T_SL_EQUAL = 279, - T_SR_EQUAL = 280, - T_POW_EQUAL = 281, - T_COALESCE_EQUAL = 282, - T_COALESCE = 283, - T_BOOLEAN_OR = 284, - T_BOOLEAN_AND = 285, - T_IS_EQUAL = 286, - T_IS_NOT_EQUAL = 287, - T_IS_IDENTICAL = 288, - T_IS_NOT_IDENTICAL = 289, - T_SPACESHIP = 290, - T_IS_SMALLER_OR_EQUAL = 291, - T_IS_GREATER_OR_EQUAL = 292, - T_SL = 293, - T_SR = 294, - T_INSTANCEOF = 295, - T_INT_CAST = 296, - T_DOUBLE_CAST = 297, - T_STRING_CAST = 298, - T_ARRAY_CAST = 299, - T_OBJECT_CAST = 300, - T_BOOL_CAST = 301, - T_UNSET_CAST = 302, - T_POW = 303, - T_NEW = 304, - T_CLONE = 305, - T_NOELSE = 306, - T_ELSEIF = 307, - T_ELSE = 308, - T_LNUMBER = 309, - T_DNUMBER = 310, - T_STRING = 311, - T_VARIABLE = 312, - T_INLINE_HTML = 313, - T_ENCAPSED_AND_WHITESPACE = 314, - T_CONSTANT_ENCAPSED_STRING = 315, - T_STRING_VARNAME = 316, - T_NUM_STRING = 317, - T_EVAL = 318, - T_INC = 319, - T_DEC = 320, - T_EXIT = 321, - T_IF = 322, - T_ENDIF = 323, - T_ECHO = 324, - T_DO = 325, - T_WHILE = 326, - T_ENDWHILE = 327, - T_FOR = 328, - T_ENDFOR = 329, - T_FOREACH = 330, - T_ENDFOREACH = 331, - T_DECLARE = 332, - T_ENDDECLARE = 333, - T_AS = 334, - T_SWITCH = 335, - T_ENDSWITCH = 336, - T_CASE = 337, - T_DEFAULT = 338, - T_BREAK = 339, - T_CONTINUE = 340, - T_GOTO = 341, - T_FUNCTION = 342, - T_FN = 343, - T_CONST = 344, - T_RETURN = 345, - T_TRY = 346, - T_CATCH = 347, - T_FINALLY = 348, - T_THROW = 349, - T_USE = 350, - T_INSTEADOF = 351, - T_GLOBAL = 352, - T_STATIC = 353, - T_ABSTRACT = 354, - T_FINAL = 355, - T_PRIVATE = 356, - T_PROTECTED = 357, - T_PUBLIC = 358, - T_VAR = 359, - T_UNSET = 360, - T_ISSET = 361, - T_EMPTY = 362, - T_HALT_COMPILER = 363, - T_CLASS = 364, - T_TRAIT = 365, - T_INTERFACE = 366, - T_EXTENDS = 367, - T_IMPLEMENTS = 368, - T_OBJECT_OPERATOR = 369, - T_LIST = 370, - T_ARRAY = 371, - T_CALLABLE = 372, - T_LINE = 373, - T_FILE = 374, - T_DIR = 375, - T_CLASS_C = 376, - T_TRAIT_C = 377, - T_METHOD_C = 378, - T_FUNC_C = 379, - T_COMMENT = 380, - T_DOC_COMMENT = 381, - T_OPEN_TAG = 382, - T_OPEN_TAG_WITH_ECHO = 383, - T_CLOSE_TAG = 384, - T_WHITESPACE = 385, - T_START_HEREDOC = 386, - T_END_HEREDOC = 387, - T_DOLLAR_OPEN_CURLY_BRACES = 388, - T_CURLY_OPEN = 389, - T_PAAMAYIM_NEKUDOTAYIM = 390, - T_NAMESPACE = 391, - T_NS_C = 392, - T_NS_SEPARATOR = 393, - T_ELLIPSIS = 394, - T_BAD_CHARACTER = 395, - T_ERROR = 396 - }; -#endif - -/* Value type. */ - - - -ZEND_API int zendparse (void); - -#endif /* !YY_ZEND_ZEND_ZEND_LANGUAGE_PARSER_H_INCLUDED */ diff --git a/7.4.27/mac/include/php/Zend/zend_language_scanner.h b/7.4.27/mac/include/php/Zend/zend_language_scanner.h deleted file mode 100644 index 3640b9a..0000000 --- a/7.4.27/mac/include/php/Zend/zend_language_scanner.h +++ /dev/null @@ -1,76 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_SCANNER_H -#define ZEND_SCANNER_H - -typedef struct _zend_lex_state { - unsigned int yy_leng; - unsigned char *yy_start; - unsigned char *yy_text; - unsigned char *yy_cursor; - unsigned char *yy_marker; - unsigned char *yy_limit; - int yy_state; - zend_stack state_stack; - zend_ptr_stack heredoc_label_stack; - - zend_file_handle *in; - uint32_t lineno; - zend_string *filename; - - /* original (unfiltered) script */ - unsigned char *script_org; - size_t script_org_size; - - /* filtered script */ - unsigned char *script_filtered; - size_t script_filtered_size; - - /* input/output filters */ - zend_encoding_filter input_filter; - zend_encoding_filter output_filter; - const zend_encoding *script_encoding; - - /* hooks */ - void (*on_event)(zend_php_scanner_event event, int token, int line, void *context); - void *on_event_context; - - zend_ast *ast; - zend_arena *ast_arena; -} zend_lex_state; - -typedef struct _zend_heredoc_label { - char *label; - int length; - int indentation; - zend_bool indentation_uses_spaces; -} zend_heredoc_label; - -BEGIN_EXTERN_C() -ZEND_API void zend_save_lexical_state(zend_lex_state *lex_state); -ZEND_API void zend_restore_lexical_state(zend_lex_state *lex_state); -ZEND_API int zend_prepare_string_for_scanning(zval *str, char *filename); -ZEND_API void zend_multibyte_yyinput_again(zend_encoding_filter old_input_filter, const zend_encoding *old_encoding); -ZEND_API int zend_multibyte_set_filter(const zend_encoding *onetime_encoding); -ZEND_API void zend_lex_tstring(zval *zv); - -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_language_scanner_defs.h b/7.4.27/mac/include/php/Zend/zend_language_scanner_defs.h deleted file mode 100644 index 912b2e5..0000000 --- a/7.4.27/mac/include/php/Zend/zend_language_scanner_defs.h +++ /dev/null @@ -1,16 +0,0 @@ -/* Generated by re2c 0.14.3 */ -#line 3 "Zend/zend_language_scanner_defs.h" - -enum YYCONDTYPE { - yycST_IN_SCRIPTING, - yycST_LOOKING_FOR_PROPERTY, - yycST_BACKQUOTE, - yycST_DOUBLE_QUOTES, - yycST_HEREDOC, - yycST_LOOKING_FOR_VARNAME, - yycST_VAR_OFFSET, - yycSHEBANG, - yycINITIAL, - yycST_END_HEREDOC, - yycST_NOWDOC, -}; diff --git a/7.4.27/mac/include/php/Zend/zend_list.h b/7.4.27/mac/include/php/Zend/zend_list.h deleted file mode 100644 index b9a1d5e..0000000 --- a/7.4.27/mac/include/php/Zend/zend_list.h +++ /dev/null @@ -1,76 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_LIST_H -#define ZEND_LIST_H - -#include "zend_hash.h" -#include "zend_globals.h" - -BEGIN_EXTERN_C() - -typedef void (*rsrc_dtor_func_t)(zend_resource *res); -#define ZEND_RSRC_DTOR_FUNC(name) void name(zend_resource *res) - -typedef struct _zend_rsrc_list_dtors_entry { - rsrc_dtor_func_t list_dtor_ex; - rsrc_dtor_func_t plist_dtor_ex; - - const char *type_name; - - int module_number; - int resource_id; -} zend_rsrc_list_dtors_entry; - - -ZEND_API int zend_register_list_destructors_ex(rsrc_dtor_func_t ld, rsrc_dtor_func_t pld, const char *type_name, int module_number); - -void list_entry_destructor(zval *ptr); -void plist_entry_destructor(zval *ptr); - -void zend_clean_module_rsrc_dtors(int module_number); -ZEND_API int zend_init_rsrc_list(void); /* Exported for phar hack */ -int zend_init_rsrc_plist(void); -void zend_close_rsrc_list(HashTable *ht); -void zend_destroy_rsrc_list(HashTable *ht); -int zend_init_rsrc_list_dtors(void); -void zend_destroy_rsrc_list_dtors(void); - -ZEND_API zval* ZEND_FASTCALL zend_list_insert(void *ptr, int type); -ZEND_API int ZEND_FASTCALL zend_list_free(zend_resource *res); -ZEND_API int ZEND_FASTCALL zend_list_delete(zend_resource *res); -ZEND_API int ZEND_FASTCALL zend_list_close(zend_resource *res); - -ZEND_API zend_resource *zend_register_resource(void *rsrc_pointer, int rsrc_type); -ZEND_API void *zend_fetch_resource(zend_resource *res, const char *resource_type_name, int resource_type); -ZEND_API void *zend_fetch_resource2(zend_resource *res, const char *resource_type_name, int resource_type, int resource_type2); -ZEND_API void *zend_fetch_resource_ex(zval *res, const char *resource_type_name, int resource_type); -ZEND_API void *zend_fetch_resource2_ex(zval *res, const char *resource_type_name, int resource_type, int resource_type2); - -ZEND_API const char *zend_rsrc_list_get_rsrc_type(zend_resource *res); -ZEND_API int zend_fetch_list_dtor_id(const char *type_name); - -ZEND_API zend_resource* zend_register_persistent_resource(const char *key, size_t key_len, void *rsrc_pointer, int rsrc_type); -ZEND_API zend_resource* zend_register_persistent_resource_ex(zend_string *key, void *rsrc_pointer, int rsrc_type); - -extern ZEND_API int le_index_ptr; /* list entry type for index pointers */ - -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_llist.h b/7.4.27/mac/include/php/Zend/zend_llist.h deleted file mode 100644 index b9155ce..0000000 --- a/7.4.27/mac/include/php/Zend/zend_llist.h +++ /dev/null @@ -1,76 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_LLIST_H -#define ZEND_LLIST_H - -typedef struct _zend_llist_element { - struct _zend_llist_element *next; - struct _zend_llist_element *prev; - char data[1]; /* Needs to always be last in the struct */ -} zend_llist_element; - -typedef void (*llist_dtor_func_t)(void *); -typedef int (*llist_compare_func_t)(const zend_llist_element **, const zend_llist_element **); -typedef void (*llist_apply_with_args_func_t)(void *data, int num_args, va_list args); -typedef void (*llist_apply_with_arg_func_t)(void *data, void *arg); -typedef void (*llist_apply_func_t)(void *); - -typedef struct _zend_llist { - zend_llist_element *head; - zend_llist_element *tail; - size_t count; - size_t size; - llist_dtor_func_t dtor; - unsigned char persistent; - zend_llist_element *traverse_ptr; -} zend_llist; - -typedef zend_llist_element* zend_llist_position; - -BEGIN_EXTERN_C() -ZEND_API void zend_llist_init(zend_llist *l, size_t size, llist_dtor_func_t dtor, unsigned char persistent); -ZEND_API void zend_llist_add_element(zend_llist *l, void *element); -ZEND_API void zend_llist_prepend_element(zend_llist *l, void *element); -ZEND_API void zend_llist_del_element(zend_llist *l, void *element, int (*compare)(void *element1, void *element2)); -ZEND_API void zend_llist_destroy(zend_llist *l); -ZEND_API void zend_llist_clean(zend_llist *l); -ZEND_API void zend_llist_remove_tail(zend_llist *l); -ZEND_API void zend_llist_copy(zend_llist *dst, zend_llist *src); -ZEND_API void zend_llist_apply(zend_llist *l, llist_apply_func_t func); -ZEND_API void zend_llist_apply_with_del(zend_llist *l, int (*func)(void *data)); -ZEND_API void zend_llist_apply_with_argument(zend_llist *l, llist_apply_with_arg_func_t func, void *arg); -ZEND_API void zend_llist_apply_with_arguments(zend_llist *l, llist_apply_with_args_func_t func, int num_args, ...); -ZEND_API size_t zend_llist_count(zend_llist *l); -ZEND_API void zend_llist_sort(zend_llist *l, llist_compare_func_t comp_func); - -/* traversal */ -ZEND_API void *zend_llist_get_first_ex(zend_llist *l, zend_llist_position *pos); -ZEND_API void *zend_llist_get_last_ex(zend_llist *l, zend_llist_position *pos); -ZEND_API void *zend_llist_get_next_ex(zend_llist *l, zend_llist_position *pos); -ZEND_API void *zend_llist_get_prev_ex(zend_llist *l, zend_llist_position *pos); - -#define zend_llist_get_first(l) zend_llist_get_first_ex(l, NULL) -#define zend_llist_get_last(l) zend_llist_get_last_ex(l, NULL) -#define zend_llist_get_next(l) zend_llist_get_next_ex(l, NULL) -#define zend_llist_get_prev(l) zend_llist_get_prev_ex(l, NULL) - -END_EXTERN_C() - -#endif /* ZEND_LLIST_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_long.h b/7.4.27/mac/include/php/Zend/zend_long.h deleted file mode 100644 index 3b651e6..0000000 --- a/7.4.27/mac/include/php/Zend/zend_long.h +++ /dev/null @@ -1,129 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Anatol Belski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_LONG_H -#define ZEND_LONG_H - -#include "main/php_stdint.h" - -/* This is the heart of the whole int64 enablement in zval. */ -#if defined(__x86_64__) || defined(__LP64__) || defined(_LP64) || defined(_WIN64) -# define ZEND_ENABLE_ZVAL_LONG64 1 -#endif - -/* Integer types. */ -#ifdef ZEND_ENABLE_ZVAL_LONG64 -typedef int64_t zend_long; -typedef uint64_t zend_ulong; -typedef int64_t zend_off_t; -# define ZEND_LONG_MAX INT64_MAX -# define ZEND_LONG_MIN INT64_MIN -# define ZEND_ULONG_MAX UINT64_MAX -# define Z_L(i) INT64_C(i) -# define Z_UL(i) UINT64_C(i) -# define SIZEOF_ZEND_LONG 8 -#else -typedef int32_t zend_long; -typedef uint32_t zend_ulong; -typedef int32_t zend_off_t; -# define ZEND_LONG_MAX INT32_MAX -# define ZEND_LONG_MIN INT32_MIN -# define ZEND_ULONG_MAX UINT32_MAX -# define Z_L(i) INT32_C(i) -# define Z_UL(i) UINT32_C(i) -# define SIZEOF_ZEND_LONG 4 -#endif - - -/* Conversion macros. */ -#define ZEND_LTOA_BUF_LEN 65 - -#ifdef ZEND_ENABLE_ZVAL_LONG64 -# define ZEND_LONG_FMT "%" PRId64 -# define ZEND_ULONG_FMT "%" PRIu64 -# define ZEND_XLONG_FMT "%" PRIx64 -# define ZEND_LONG_FMT_SPEC PRId64 -# define ZEND_ULONG_FMT_SPEC PRIu64 -# ifdef ZEND_WIN32 -# define ZEND_LTOA(i, s, len) _i64toa_s((i), (s), (len), 10) -# define ZEND_ATOL(i, s) i = _atoi64((s)) -# define ZEND_STRTOL(s0, s1, base) _strtoi64((s0), (s1), (base)) -# define ZEND_STRTOUL(s0, s1, base) _strtoui64((s0), (s1), (base)) -# define ZEND_STRTOL_PTR _strtoi64 -# define ZEND_STRTOUL_PTR _strtoui64 -# define ZEND_ABS _abs64 -# else -# define ZEND_LTOA(i, s, len) \ - do { \ - int st = snprintf((s), (len), ZEND_LONG_FMT, (i)); \ - (s)[st] = '\0'; \ - } while (0) -# define ZEND_ATOL(i, s) (i) = atoll((s)) -# define ZEND_STRTOL(s0, s1, base) strtoll((s0), (s1), (base)) -# define ZEND_STRTOUL(s0, s1, base) strtoull((s0), (s1), (base)) -# define ZEND_STRTOL_PTR strtoll -# define ZEND_STRTOUL_PTR strtoull -# define ZEND_ABS imaxabs -# endif -#else -# define ZEND_STRTOL(s0, s1, base) strtol((s0), (s1), (base)) -# define ZEND_STRTOUL(s0, s1, base) strtoul((s0), (s1), (base)) -# define ZEND_LONG_FMT "%" PRId32 -# define ZEND_ULONG_FMT "%" PRIu32 -# define ZEND_XLONG_FMT "%" PRIx32 -# define ZEND_LONG_FMT_SPEC PRId32 -# define ZEND_ULONG_FMT_SPEC PRIu32 -# ifdef ZEND_WIN32 -# define ZEND_LTOA(i, s, len) _ltoa_s((i), (s), (len), 10) -# define ZEND_ATOL(i, s) i = atol((s)) -# else -# define ZEND_LTOA(i, s, len) \ - do { \ - int st = snprintf((s), (len), ZEND_LONG_FMT, (i)); \ - (s)[st] = '\0'; \ - } while (0) -# define ZEND_ATOL(i, s) (i) = atol((s)) -# endif -# define ZEND_STRTOL_PTR strtol -# define ZEND_STRTOUL_PTR strtoul -# define ZEND_ABS abs -#endif - -#if SIZEOF_ZEND_LONG == 4 -# define MAX_LENGTH_OF_LONG 11 -# define LONG_MIN_DIGITS "2147483648" -#elif SIZEOF_ZEND_LONG == 8 -# define MAX_LENGTH_OF_LONG 20 -# define LONG_MIN_DIGITS "9223372036854775808" -#else -# error "Unknown SIZEOF_ZEND_LONG" -#endif - -static const char long_min_digits[] = LONG_MIN_DIGITS; - -#ifdef _WIN64 -# define ZEND_ADDR_FMT "0x%016I64x" -#elif SIZEOF_SIZE_T == 4 -# define ZEND_ADDR_FMT "0x%08zx" -#elif SIZEOF_SIZE_T == 8 -# define ZEND_ADDR_FMT "0x%016zx" -#else -# error "Unknown SIZEOF_SIZE_T" -#endif - -#endif /* ZEND_LONG_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_map_ptr.h b/7.4.27/mac/include/php/Zend/zend_map_ptr.h deleted file mode 100644 index 5c88ce0..0000000 --- a/7.4.27/mac/include/php/Zend/zend_map_ptr.h +++ /dev/null @@ -1,85 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_MAP_PTR_H -#define ZEND_MAP_PTR_H - -#include "zend_portability.h" - -#define ZEND_MAP_PTR_KIND_PTR 0 -#define ZEND_MAP_PTR_KIND_PTR_OR_OFFSET 1 - -//#if defined(ZTS) || defined(TSRM_WIN32) -# define ZEND_MAP_PTR_KIND ZEND_MAP_PTR_KIND_PTR_OR_OFFSET -//#else -//# define ZEND_MAP_PTR_KIND ZEND_MAP_PTR_KIND_PTR -//#endif - -#if ZEND_MAP_PTR_KIND == ZEND_MAP_PTR_KIND_PTR -# define ZEND_MAP_PTR(ptr) \ - ptr ## __ptr -# define ZEND_MAP_PTR_DEF(type, name) \ - type * ZEND_MAP_PTR(name) -# define ZEND_MAP_PTR_GET(ptr) \ - (*(ZEND_MAP_PTR(ptr))) -# define ZEND_MAP_PTR_SET(ptr, val) do { \ - (*(ZEND_MAP_PTR(ptr))) = (val); \ - } while (0) -# define ZEND_MAP_PTR_INIT(ptr, val) do { \ - ZEND_MAP_PTR(ptr) = (val); \ - } while (0) -# define ZEND_MAP_PTR_NEW(ptr) do { \ - ZEND_MAP_PTR(ptr) = zend_map_ptr_new(); \ - } while (0) -#elif ZEND_MAP_PTR_KIND == ZEND_MAP_PTR_KIND_PTR_OR_OFFSET -# define ZEND_MAP_PTR(ptr) \ - ptr ## __ptr -# define ZEND_MAP_PTR_DEF(type, name) \ - type * ZEND_MAP_PTR(name) -# define ZEND_MAP_PTR_IS_OFFSET(ptr) \ - (((uintptr_t)ZEND_MAP_PTR(ptr)) & 1L) -# define ZEND_MAP_PTR_OFFSET2PTR(ptr) \ - ((void**)((char*)CG(map_ptr_base) + (uintptr_t)ZEND_MAP_PTR(ptr) - 1)) -# define ZEND_MAP_PTR_PTR2OFFSET(ptr) \ - ((void*)((uintptr_t)(((char*)(ptr)) - ((char*)CG(map_ptr_base))) | 1L)) -# define ZEND_MAP_PTR_GET(ptr) \ - (ZEND_MAP_PTR_IS_OFFSET(ptr) ? \ - *(ZEND_MAP_PTR_OFFSET2PTR(ptr)) : \ - (void*)(*(ZEND_MAP_PTR(ptr)))) -# define ZEND_MAP_PTR_SET(ptr, val) do { \ - if (ZEND_MAP_PTR_IS_OFFSET(ptr)) { \ - *(ZEND_MAP_PTR_OFFSET2PTR(ptr)) = (val); \ - } else { \ - *(ZEND_MAP_PTR(ptr)) = (val); \ - } \ - } while (0) -# define ZEND_MAP_PTR_INIT(ptr, val) do { \ - ZEND_MAP_PTR(ptr) = (val); \ - } while (0) -# define ZEND_MAP_PTR_NEW(ptr) do { \ - ZEND_MAP_PTR(ptr) = zend_map_ptr_new(); \ - } while (0) -#else -# error "Unknown ZEND_MAP_PTR_KIND" -#endif - -ZEND_API void zend_map_ptr_reset(void); -ZEND_API void *zend_map_ptr_new(void); -ZEND_API void zend_map_ptr_extend(size_t last); - -#endif /* ZEND_MAP_PTR_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_modules.h b/7.4.27/mac/include/php/Zend/zend_modules.h deleted file mode 100644 index 908acd7..0000000 --- a/7.4.27/mac/include/php/Zend/zend_modules.h +++ /dev/null @@ -1,131 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef MODULES_H -#define MODULES_H - -#include "zend.h" -#include "zend_compile.h" -#include "zend_build.h" - -#define INIT_FUNC_ARGS int type, int module_number -#define INIT_FUNC_ARGS_PASSTHRU type, module_number -#define SHUTDOWN_FUNC_ARGS int type, int module_number -#define SHUTDOWN_FUNC_ARGS_PASSTHRU type, module_number -#define ZEND_MODULE_INFO_FUNC_ARGS zend_module_entry *zend_module -#define ZEND_MODULE_INFO_FUNC_ARGS_PASSTHRU zend_module - -#define ZEND_MODULE_API_NO 20190902 -#ifdef ZTS -#define USING_ZTS 1 -#else -#define USING_ZTS 0 -#endif - -#define STANDARD_MODULE_HEADER_EX sizeof(zend_module_entry), ZEND_MODULE_API_NO, ZEND_DEBUG, USING_ZTS -#define STANDARD_MODULE_HEADER \ - STANDARD_MODULE_HEADER_EX, NULL, NULL -#define ZE2_STANDARD_MODULE_HEADER \ - STANDARD_MODULE_HEADER_EX, ini_entries, NULL - -#define ZEND_MODULE_BUILD_ID "API" ZEND_TOSTR(ZEND_MODULE_API_NO) ZEND_BUILD_TS ZEND_BUILD_DEBUG ZEND_BUILD_SYSTEM ZEND_BUILD_EXTRA - -#define STANDARD_MODULE_PROPERTIES_EX 0, 0, NULL, 0, ZEND_MODULE_BUILD_ID - -#define NO_MODULE_GLOBALS 0, NULL, NULL, NULL - -#ifdef ZTS -# define ZEND_MODULE_GLOBALS(module_name) sizeof(zend_##module_name##_globals), &module_name##_globals_id -#else -# define ZEND_MODULE_GLOBALS(module_name) sizeof(zend_##module_name##_globals), &module_name##_globals -#endif - -#define STANDARD_MODULE_PROPERTIES \ - NO_MODULE_GLOBALS, NULL, STANDARD_MODULE_PROPERTIES_EX - -#define NO_VERSION_YET NULL - -#define MODULE_PERSISTENT 1 -#define MODULE_TEMPORARY 2 - -struct _zend_ini_entry; -typedef struct _zend_module_entry zend_module_entry; -typedef struct _zend_module_dep zend_module_dep; - -struct _zend_module_entry { - unsigned short size; - unsigned int zend_api; - unsigned char zend_debug; - unsigned char zts; - const struct _zend_ini_entry *ini_entry; - const struct _zend_module_dep *deps; - const char *name; - const struct _zend_function_entry *functions; - int (*module_startup_func)(INIT_FUNC_ARGS); - int (*module_shutdown_func)(SHUTDOWN_FUNC_ARGS); - int (*request_startup_func)(INIT_FUNC_ARGS); - int (*request_shutdown_func)(SHUTDOWN_FUNC_ARGS); - void (*info_func)(ZEND_MODULE_INFO_FUNC_ARGS); - const char *version; - size_t globals_size; -#ifdef ZTS - ts_rsrc_id* globals_id_ptr; -#else - void* globals_ptr; -#endif - void (*globals_ctor)(void *global); - void (*globals_dtor)(void *global); - int (*post_deactivate_func)(void); - int module_started; - unsigned char type; - void *handle; - int module_number; - const char *build_id; -}; - -#define MODULE_DEP_REQUIRED 1 -#define MODULE_DEP_CONFLICTS 2 -#define MODULE_DEP_OPTIONAL 3 - -#define ZEND_MOD_REQUIRED_EX(name, rel, ver) { name, rel, ver, MODULE_DEP_REQUIRED }, -#define ZEND_MOD_CONFLICTS_EX(name, rel, ver) { name, rel, ver, MODULE_DEP_CONFLICTS }, -#define ZEND_MOD_OPTIONAL_EX(name, rel, ver) { name, rel, ver, MODULE_DEP_OPTIONAL }, - -#define ZEND_MOD_REQUIRED(name) ZEND_MOD_REQUIRED_EX(name, NULL, NULL) -#define ZEND_MOD_CONFLICTS(name) ZEND_MOD_CONFLICTS_EX(name, NULL, NULL) -#define ZEND_MOD_OPTIONAL(name) ZEND_MOD_OPTIONAL_EX(name, NULL, NULL) - -#define ZEND_MOD_END { NULL, NULL, NULL, 0 } - -struct _zend_module_dep { - const char *name; /* module name */ - const char *rel; /* version relationship: NULL (exists), lt|le|eq|ge|gt (to given version) */ - const char *version; /* version */ - unsigned char type; /* dependency type */ -}; - -BEGIN_EXTERN_C() -extern ZEND_API HashTable module_registry; - -void module_destructor(zend_module_entry *module); -int module_registry_request_startup(zend_module_entry *module); -int module_registry_unload_temp(const zend_module_entry *module); -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_multibyte.h b/7.4.27/mac/include/php/Zend/zend_multibyte.h deleted file mode 100644 index 19444ed..0000000 --- a/7.4.27/mac/include/php/Zend/zend_multibyte.h +++ /dev/null @@ -1,79 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Masaki Fujimoto | - | Rui Hirokawa | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_MULTIBYTE_H -#define ZEND_MULTIBYTE_H - -typedef struct _zend_encoding zend_encoding; - -typedef size_t (*zend_encoding_filter)(unsigned char **str, size_t *str_length, const unsigned char *buf, size_t length); - -typedef const zend_encoding* (*zend_encoding_fetcher)(const char *encoding_name); -typedef const char* (*zend_encoding_name_getter)(const zend_encoding *encoding); -typedef int (*zend_encoding_lexer_compatibility_checker)(const zend_encoding *encoding); -typedef const zend_encoding *(*zend_encoding_detector)(const unsigned char *string, size_t length, const zend_encoding **list, size_t list_size); -typedef size_t (*zend_encoding_converter)(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length, const zend_encoding *encoding_to, const zend_encoding *encoding_from); -typedef int (*zend_encoding_list_parser)(const char *encoding_list, size_t encoding_list_len, const zend_encoding ***return_list, size_t *return_size, int persistent); -typedef const zend_encoding *(*zend_encoding_internal_encoding_getter)(void); -typedef int (*zend_encoding_internal_encoding_setter)(const zend_encoding *encoding); - -typedef struct _zend_multibyte_functions { - const char *provider_name; - zend_encoding_fetcher encoding_fetcher; - zend_encoding_name_getter encoding_name_getter; - zend_encoding_lexer_compatibility_checker lexer_compatibility_checker; - zend_encoding_detector encoding_detector; - zend_encoding_converter encoding_converter; - zend_encoding_list_parser encoding_list_parser; - zend_encoding_internal_encoding_getter internal_encoding_getter; - zend_encoding_internal_encoding_setter internal_encoding_setter; -} zend_multibyte_functions; - -/* - * zend multibyte APIs - */ -BEGIN_EXTERN_C() - -ZEND_API extern const zend_encoding *zend_multibyte_encoding_utf32be; -ZEND_API extern const zend_encoding *zend_multibyte_encoding_utf32le; -ZEND_API extern const zend_encoding *zend_multibyte_encoding_utf16be; -ZEND_API extern const zend_encoding *zend_multibyte_encoding_utf16le; -ZEND_API extern const zend_encoding *zend_multibyte_encoding_utf8; - -/* multibyte utility functions */ -ZEND_API int zend_multibyte_set_functions(const zend_multibyte_functions *functions); -ZEND_API void zend_multibyte_restore_functions(void); -ZEND_API const zend_multibyte_functions *zend_multibyte_get_functions(void); - -ZEND_API const zend_encoding *zend_multibyte_fetch_encoding(const char *name); -ZEND_API const char *zend_multibyte_get_encoding_name(const zend_encoding *encoding); -ZEND_API int zend_multibyte_check_lexer_compatibility(const zend_encoding *encoding); -ZEND_API const zend_encoding *zend_multibyte_encoding_detector(const unsigned char *string, size_t length, const zend_encoding **list, size_t list_size); -ZEND_API size_t zend_multibyte_encoding_converter(unsigned char **to, size_t *to_length, const unsigned char *from, size_t from_length, const zend_encoding *encoding_to, const zend_encoding *encoding_from); -ZEND_API int zend_multibyte_parse_encoding_list(const char *encoding_list, size_t encoding_list_len, const zend_encoding ***return_list, size_t *return_size, int persistent); - -ZEND_API const zend_encoding *zend_multibyte_get_internal_encoding(void); -ZEND_API const zend_encoding *zend_multibyte_get_script_encoding(void); -ZEND_API int zend_multibyte_set_script_encoding(const zend_encoding **encoding_list, size_t encoding_list_size); -ZEND_API int zend_multibyte_set_internal_encoding(const zend_encoding *encoding); -ZEND_API int zend_multibyte_set_script_encoding_by_string(const char *new_value, size_t new_value_length); - -END_EXTERN_C() - -#endif /* ZEND_MULTIBYTE_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_multiply.h b/7.4.27/mac/include/php/Zend/zend_multiply.h deleted file mode 100644 index a3827d2..0000000 --- a/7.4.27/mac/include/php/Zend/zend_multiply.h +++ /dev/null @@ -1,343 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Sascha Schumann | - | Ard Biesheuvel | - +----------------------------------------------------------------------+ -*/ - -#include "zend_portability.h" - -#ifndef ZEND_MULTIPLY_H -#define ZEND_MULTIPLY_H - -#if PHP_HAVE_BUILTIN_SMULL_OVERFLOW && SIZEOF_LONG == SIZEOF_ZEND_LONG - -#define ZEND_SIGNED_MULTIPLY_LONG(a, b, lval, dval, usedval) do { \ - long __tmpvar; \ - if (((usedval) = __builtin_smull_overflow((a), (b), &__tmpvar))) { \ - (dval) = (double) (a) * (double) (b); \ - } \ - else (lval) = __tmpvar; \ -} while (0) - -#elif PHP_HAVE_BUILTIN_SMULLL_OVERFLOW && SIZEOF_LONG_LONG == SIZEOF_ZEND_LONG - -#define ZEND_SIGNED_MULTIPLY_LONG(a, b, lval, dval, usedval) do { \ - long long __tmpvar; \ - if (((usedval) = __builtin_smulll_overflow((a), (b), &__tmpvar))) { \ - (dval) = (double) (a) * (double) (b); \ - } \ - else (lval) = __tmpvar; \ -} while (0) - -#elif (defined(__i386__) || defined(__x86_64__)) && defined(__GNUC__) - -#define ZEND_SIGNED_MULTIPLY_LONG(a, b, lval, dval, usedval) do { \ - zend_long __tmpvar; \ - __asm__ ("imul %3,%0\n" \ - "adc $0,%1" \ - : "=r"(__tmpvar),"=r"(usedval) \ - : "0"(a), "r"(b), "1"(0)); \ - if (usedval) (dval) = (double) (a) * (double) (b); \ - else (lval) = __tmpvar; \ -} while (0) - -#elif defined(__arm__) && defined(__GNUC__) - -#define ZEND_SIGNED_MULTIPLY_LONG(a, b, lval, dval, usedval) do { \ - zend_long __tmpvar; \ - __asm__("smull %0, %1, %2, %3\n" \ - "sub %1, %1, %0, asr #31" \ - : "=r"(__tmpvar), "=r"(usedval) \ - : "r"(a), "r"(b)); \ - if (usedval) (dval) = (double) (a) * (double) (b); \ - else (lval) = __tmpvar; \ -} while (0) - -#elif defined(__aarch64__) && defined(__GNUC__) - -#define ZEND_SIGNED_MULTIPLY_LONG(a, b, lval, dval, usedval) do { \ - zend_long __tmpvar; \ - __asm__("mul %0, %2, %3\n" \ - "smulh %1, %2, %3\n" \ - "sub %1, %1, %0, asr #63\n" \ - : "=&r"(__tmpvar), "=&r"(usedval) \ - : "r"(a), "r"(b)); \ - if (usedval) (dval) = (double) (a) * (double) (b); \ - else (lval) = __tmpvar; \ -} while (0) - -#elif defined(ZEND_WIN32) - -# ifdef _M_X64 -# pragma intrinsic(_mul128) -# define ZEND_SIGNED_MULTIPLY_LONG(a, b, lval, dval, usedval) do { \ - __int64 __high; \ - __int64 __low = _mul128((a), (b), &__high); \ - if ((__low >> 63I64) == __high) { \ - (usedval) = 0; \ - (lval) = __low; \ - } else { \ - (usedval) = 1; \ - (dval) = (double)(a) * (double)(b); \ - } \ -} while (0) -# else -# define ZEND_SIGNED_MULTIPLY_LONG(a, b, lval, dval, usedval) do { \ - zend_long __lres = (a) * (b); \ - long double __dres = (long double)(a) * (long double)(b); \ - long double __delta = (long double) __lres - __dres; \ - if ( ((usedval) = (( __dres + __delta ) != __dres))) { \ - (dval) = __dres; \ - } else { \ - (lval) = __lres; \ - } \ -} while (0) -# endif - -#elif defined(__powerpc64__) && defined(__GNUC__) - -#define ZEND_SIGNED_MULTIPLY_LONG(a, b, lval, dval, usedval) do { \ - long __low, __high; \ - __asm__("mulld %0,%2,%3\n\t" \ - "mulhd %1,%2,%3\n" \ - : "=&r"(__low), "=&r"(__high) \ - : "r"(a), "r"(b)); \ - if ((__low >> 63) != __high) { \ - (dval) = (double) (a) * (double) (b); \ - (usedval) = 1; \ - } else { \ - (lval) = __low; \ - (usedval) = 0; \ - } \ -} while (0) - -#elif SIZEOF_ZEND_LONG == 4 - -#define ZEND_SIGNED_MULTIPLY_LONG(a, b, lval, dval, usedval) do { \ - int64_t __result = (int64_t) (a) * (int64_t) (b); \ - if (__result > ZEND_LONG_MAX || __result < ZEND_LONG_MIN) { \ - (dval) = (double) __result; \ - (usedval) = 1; \ - } else { \ - (lval) = (long) __result; \ - (usedval) = 0; \ - } \ -} while (0) - -#else - -#define ZEND_SIGNED_MULTIPLY_LONG(a, b, lval, dval, usedval) do { \ - long __lres = (a) * (b); \ - long double __dres = (long double)(a) * (long double)(b); \ - long double __delta = (long double) __lres - __dres; \ - if ( ((usedval) = (( __dres + __delta ) != __dres))) { \ - (dval) = __dres; \ - } else { \ - (lval) = __lres; \ - } \ -} while (0) - -#endif - -#if defined(__GNUC__) && (defined(__native_client__) || defined(i386)) - -static zend_always_inline size_t zend_safe_address(size_t nmemb, size_t size, size_t offset, int *overflow) -{ - size_t res = nmemb; - size_t m_overflow = 0; - - if (ZEND_CONST_COND(offset == 0, 0)) { - __asm__ ("mull %3\n\tadcl $0,%1" - : "=&a"(res), "=&d" (m_overflow) - : "%0"(res), - "rm"(size)); - } else { - __asm__ ("mull %3\n\taddl %4,%0\n\tadcl $0,%1" - : "=&a"(res), "=&d" (m_overflow) - : "%0"(res), - "rm"(size), - "rm"(offset)); - } - - if (UNEXPECTED(m_overflow)) { - *overflow = 1; - return 0; - } - *overflow = 0; - return res; -} - -#elif defined(__GNUC__) && defined(__x86_64__) - -static zend_always_inline size_t zend_safe_address(size_t nmemb, size_t size, size_t offset, int *overflow) -{ - size_t res = nmemb; - zend_ulong m_overflow = 0; - -#ifdef __ILP32__ /* x32 */ -# define LP_SUFF "l" -#else /* amd64 */ -# define LP_SUFF "q" -#endif - - if (ZEND_CONST_COND(offset == 0, 0)) { - __asm__ ("mul" LP_SUFF " %3\n\t" - "adc $0,%1" - : "=&a"(res), "=&d" (m_overflow) - : "%0"(res), - "rm"(size)); - } else { - __asm__ ("mul" LP_SUFF " %3\n\t" - "add %4,%0\n\t" - "adc $0,%1" - : "=&a"(res), "=&d" (m_overflow) - : "%0"(res), - "rm"(size), - "rm"(offset)); - } -#undef LP_SUFF - if (UNEXPECTED(m_overflow)) { - *overflow = 1; - return 0; - } - *overflow = 0; - return res; -} - -#elif defined(__GNUC__) && defined(__arm__) - -static zend_always_inline size_t zend_safe_address(size_t nmemb, size_t size, size_t offset, int *overflow) -{ - size_t res; - zend_ulong m_overflow; - - __asm__ ("umlal %0,%1,%2,%3" - : "=r"(res), "=r"(m_overflow) - : "r"(nmemb), - "r"(size), - "0"(offset), - "1"(0)); - - if (UNEXPECTED(m_overflow)) { - *overflow = 1; - return 0; - } - *overflow = 0; - return res; -} - -#elif defined(__GNUC__) && defined(__aarch64__) - -static zend_always_inline size_t zend_safe_address(size_t nmemb, size_t size, size_t offset, int *overflow) -{ - size_t res; - zend_ulong m_overflow; - - __asm__ ("mul %0,%2,%3\n\tumulh %1,%2,%3\n\tadds %0,%0,%4\n\tadc %1,%1,xzr" - : "=&r"(res), "=&r"(m_overflow) - : "r"(nmemb), - "r"(size), - "r"(offset)); - - if (UNEXPECTED(m_overflow)) { - *overflow = 1; - return 0; - } - *overflow = 0; - return res; -} - -#elif defined(__GNUC__) && defined(__powerpc64__) - -static zend_always_inline size_t zend_safe_address(size_t nmemb, size_t size, size_t offset, int *overflow) -{ - size_t res; - unsigned long m_overflow; - - __asm__ ("mulld %0,%2,%3\n\t" - "mulhdu %1,%2,%3\n\t" - "addc %0,%0,%4\n\t" - "addze %1,%1\n" - : "=&r"(res), "=&r"(m_overflow) - : "r"(nmemb), - "r"(size), - "r"(offset)); - - if (UNEXPECTED(m_overflow)) { - *overflow = 1; - return 0; - } - *overflow = 0; - return res; -} - -#elif SIZEOF_SIZE_T == 4 - -static zend_always_inline size_t zend_safe_address(size_t nmemb, size_t size, size_t offset, int *overflow) -{ - uint64_t res = (uint64_t) nmemb * (uint64_t) size + (uint64_t) offset; - - if (UNEXPECTED(res > UINT64_C(0xFFFFFFFF))) { - *overflow = 1; - return 0; - } - *overflow = 0; - return (size_t) res; -} - -#else - -static zend_always_inline size_t zend_safe_address(size_t nmemb, size_t size, size_t offset, int *overflow) -{ - size_t res = nmemb * size + offset; - double _d = (double)nmemb * (double)size + (double)offset; - double _delta = (double)res - _d; - - if (UNEXPECTED((_d + _delta ) != _d)) { - *overflow = 1; - return 0; - } - *overflow = 0; - return res; -} -#endif - -static zend_always_inline size_t zend_safe_address_guarded(size_t nmemb, size_t size, size_t offset) -{ - int overflow; - size_t ret = zend_safe_address(nmemb, size, offset, &overflow); - - if (UNEXPECTED(overflow)) { - zend_error_noreturn(E_ERROR, "Possible integer overflow in memory allocation (%zu * %zu + %zu)", nmemb, size, offset); - return 0; - } - return ret; -} - -/* A bit more generic version of the same */ -static zend_always_inline size_t zend_safe_addmult(size_t nmemb, size_t size, size_t offset, const char *message) -{ - int overflow; - size_t ret = zend_safe_address(nmemb, size, offset, &overflow); - - if (UNEXPECTED(overflow)) { - zend_error_noreturn(E_ERROR, "Possible integer overflow in %s (%zu * %zu + %zu)", message, nmemb, size, offset); - return 0; - } - return ret; -} - -#endif /* ZEND_MULTIPLY_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_object_handlers.h b/7.4.27/mac/include/php/Zend/zend_object_handlers.h deleted file mode 100644 index 770a67c..0000000 --- a/7.4.27/mac/include/php/Zend/zend_object_handlers.h +++ /dev/null @@ -1,259 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_OBJECT_HANDLERS_H -#define ZEND_OBJECT_HANDLERS_H - -struct _zend_property_info; - -#define ZEND_WRONG_PROPERTY_INFO \ - ((struct _zend_property_info*)((intptr_t)-1)) - -#define ZEND_DYNAMIC_PROPERTY_OFFSET ((uintptr_t)(intptr_t)(-1)) - -#define IS_VALID_PROPERTY_OFFSET(offset) ((intptr_t)(offset) > 0) -#define IS_WRONG_PROPERTY_OFFSET(offset) ((intptr_t)(offset) == 0) -#define IS_DYNAMIC_PROPERTY_OFFSET(offset) ((intptr_t)(offset) < 0) - -#define IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(offset) (offset == ZEND_DYNAMIC_PROPERTY_OFFSET) -#define ZEND_DECODE_DYN_PROP_OFFSET(offset) ((uintptr_t)(-(intptr_t)(offset) - 2)) -#define ZEND_ENCODE_DYN_PROP_OFFSET(offset) ((uintptr_t)(-((intptr_t)(offset) + 2))) - - -/* The following rule applies to read_property() and read_dimension() implementations: - If you return a zval which is not otherwise referenced by the extension or the engine's - symbol table, its reference count should be 0. -*/ -/* Used to fetch property from the object, read-only */ -typedef zval *(*zend_object_read_property_t)(zval *object, zval *member, int type, void **cache_slot, zval *rv); - -/* Used to fetch dimension from the object, read-only */ -typedef zval *(*zend_object_read_dimension_t)(zval *object, zval *offset, int type, zval *rv); - - -/* The following rule applies to write_property() and write_dimension() implementations: - If you receive a value zval in write_property/write_dimension, you may only modify it if - its reference count is 1. Otherwise, you must create a copy of that zval before making - any changes. You should NOT modify the reference count of the value passed to you. - You must return the final value of the assigned property. -*/ -/* Used to set property of the object */ -typedef zval *(*zend_object_write_property_t)(zval *object, zval *member, zval *value, void **cache_slot); - -/* Used to set dimension of the object */ -typedef void (*zend_object_write_dimension_t)(zval *object, zval *offset, zval *value); - - -/* Used to create pointer to the property of the object, for future direct r/w access */ -typedef zval *(*zend_object_get_property_ptr_ptr_t)(zval *object, zval *member, int type, void **cache_slot); - -/* Used to set object value. Can be used to override assignments and scalar - write ops (like ++, +=) on the object */ -typedef void (*zend_object_set_t)(zval *object, zval *value); - -/* Used to get object value. Can be used when converting object value to - * one of the basic types and when using scalar ops (like ++, +=) on the object - */ -typedef zval* (*zend_object_get_t)(zval *object, zval *rv); - -/* Used to check if a property of the object exists */ -/* param has_set_exists: - * 0 (has) whether property exists and is not NULL - * 1 (set) whether property exists and is true - * 2 (exists) whether property exists - */ -typedef int (*zend_object_has_property_t)(zval *object, zval *member, int has_set_exists, void **cache_slot); - -/* Used to check if a dimension of the object exists */ -typedef int (*zend_object_has_dimension_t)(zval *object, zval *member, int check_empty); - -/* Used to remove a property of the object */ -typedef void (*zend_object_unset_property_t)(zval *object, zval *member, void **cache_slot); - -/* Used to remove a dimension of the object */ -typedef void (*zend_object_unset_dimension_t)(zval *object, zval *offset); - -/* Used to get hash of the properties of the object, as hash of zval's */ -typedef HashTable *(*zend_object_get_properties_t)(zval *object); - -typedef HashTable *(*zend_object_get_debug_info_t)(zval *object, int *is_temp); - -typedef enum _zend_prop_purpose { - /* Used for debugging. Supersedes get_debug_info handler. */ - ZEND_PROP_PURPOSE_DEBUG, - /* Used for (array) casts. */ - ZEND_PROP_PURPOSE_ARRAY_CAST, - /* Used for serialization using the "O" scheme. - * Unserialization will use __wakeup(). */ - ZEND_PROP_PURPOSE_SERIALIZE, - /* Used for var_export(). - * The data will be passed to __set_state() when evaluated. */ - ZEND_PROP_PURPOSE_VAR_EXPORT, - /* Used for json_encode(). */ - ZEND_PROP_PURPOSE_JSON, - /* array_key_exists(). Not intended for general use! */ - _ZEND_PROP_PURPOSE_ARRAY_KEY_EXISTS, - /* Dummy member to ensure that "default" is specified. */ - _ZEND_PROP_PURPOSE_NON_EXHAUSTIVE_ENUM -} zend_prop_purpose; - -/* The return value must be released using zend_release_properties(). */ -typedef zend_array *(*zend_object_get_properties_for_t)(zval *object, zend_prop_purpose purpose); - -/* Used to call methods */ -/* args on stack! */ -/* Andi - EX(fbc) (function being called) needs to be initialized already in the INIT fcall opcode so that the parameters can be parsed the right way. We need to add another callback for this. - */ -typedef int (*zend_object_call_method_t)(zend_string *method, zend_object *object, INTERNAL_FUNCTION_PARAMETERS); -typedef zend_function *(*zend_object_get_method_t)(zend_object **object, zend_string *method, const zval *key); -typedef zend_function *(*zend_object_get_constructor_t)(zend_object *object); - -/* Object maintenance/destruction */ -typedef void (*zend_object_dtor_obj_t)(zend_object *object); -typedef void (*zend_object_free_obj_t)(zend_object *object); -typedef zend_object* (*zend_object_clone_obj_t)(zval *object); - -/* Get class name for display in var_dump and other debugging functions. - * Must be defined and must return a non-NULL value. */ -typedef zend_string *(*zend_object_get_class_name_t)(const zend_object *object); - -typedef int (*zend_object_compare_t)(zval *object1, zval *object2); -typedef int (*zend_object_compare_zvals_t)(zval *result, zval *op1, zval *op2); - -/* Cast an object to some other type. - * readobj and retval must point to distinct zvals. - */ -typedef int (*zend_object_cast_t)(zval *readobj, zval *retval, int type); - -/* updates *count to hold the number of elements present and returns SUCCESS. - * Returns FAILURE if the object does not have any sense of overloaded dimensions */ -typedef int (*zend_object_count_elements_t)(zval *object, zend_long *count); - -typedef int (*zend_object_get_closure_t)(zval *obj, zend_class_entry **ce_ptr, zend_function **fptr_ptr, zend_object **obj_ptr); - -typedef HashTable *(*zend_object_get_gc_t)(zval *object, zval **table, int *n); - -typedef int (*zend_object_do_operation_t)(zend_uchar opcode, zval *result, zval *op1, zval *op2); - -struct _zend_object_handlers { - /* offset of real object header (usually zero) */ - int offset; - /* object handlers */ - zend_object_free_obj_t free_obj; /* required */ - zend_object_dtor_obj_t dtor_obj; /* required */ - zend_object_clone_obj_t clone_obj; /* optional */ - zend_object_read_property_t read_property; /* required */ - zend_object_write_property_t write_property; /* required */ - zend_object_read_dimension_t read_dimension; /* required */ - zend_object_write_dimension_t write_dimension; /* required */ - zend_object_get_property_ptr_ptr_t get_property_ptr_ptr; /* required */ - zend_object_get_t get; /* optional */ - zend_object_set_t set; /* optional */ - zend_object_has_property_t has_property; /* required */ - zend_object_unset_property_t unset_property; /* required */ - zend_object_has_dimension_t has_dimension; /* required */ - zend_object_unset_dimension_t unset_dimension; /* required */ - zend_object_get_properties_t get_properties; /* required */ - zend_object_get_method_t get_method; /* required */ - zend_object_call_method_t call_method; /* optional */ - zend_object_get_constructor_t get_constructor; /* required */ - zend_object_get_class_name_t get_class_name; /* required */ - zend_object_compare_t compare_objects; /* optional */ - zend_object_cast_t cast_object; /* optional */ - zend_object_count_elements_t count_elements; /* optional */ - zend_object_get_debug_info_t get_debug_info; /* optional */ - zend_object_get_closure_t get_closure; /* optional */ - zend_object_get_gc_t get_gc; /* required */ - zend_object_do_operation_t do_operation; /* optional */ - zend_object_compare_zvals_t compare; /* optional */ - zend_object_get_properties_for_t get_properties_for; /* optional */ -}; - -BEGIN_EXTERN_C() -extern const ZEND_API zend_object_handlers std_object_handlers; - -#define zend_get_std_object_handlers() \ - (&std_object_handlers) - -#define zend_get_function_root_class(fbc) \ - ((fbc)->common.prototype ? (fbc)->common.prototype->common.scope : (fbc)->common.scope) - -#define ZEND_PROPERTY_ISSET 0x0 /* Property exists and is not NULL */ -#define ZEND_PROPERTY_NOT_EMPTY ZEND_ISEMPTY /* Property is not empty */ -#define ZEND_PROPERTY_EXISTS 0x2 /* Property exists */ - -ZEND_API void zend_class_init_statics(zend_class_entry *ce); -ZEND_API zend_function *zend_std_get_static_method(zend_class_entry *ce, zend_string *function_name_strval, const zval *key); -ZEND_API zval *zend_std_get_static_property_with_info(zend_class_entry *ce, zend_string *property_name, int type, struct _zend_property_info **prop_info); -ZEND_API zval *zend_std_get_static_property(zend_class_entry *ce, zend_string *property_name, int type); -ZEND_API ZEND_COLD zend_bool zend_std_unset_static_property(zend_class_entry *ce, zend_string *property_name); -ZEND_API zend_function *zend_std_get_constructor(zend_object *object); -ZEND_API struct _zend_property_info *zend_get_property_info(zend_class_entry *ce, zend_string *member, int silent); -ZEND_API HashTable *zend_std_get_properties(zval *object); -ZEND_API HashTable *zend_std_get_gc(zval *object, zval **table, int *n); -ZEND_API HashTable *zend_std_get_debug_info(zval *object, int *is_temp); -ZEND_API int zend_std_cast_object_tostring(zval *readobj, zval *writeobj, int type); -ZEND_API zval *zend_std_get_property_ptr_ptr(zval *object, zval *member, int type, void **cache_slot); -ZEND_API zval *zend_std_read_property(zval *object, zval *member, int type, void **cache_slot, zval *rv); -ZEND_API zval *zend_std_write_property(zval *object, zval *member, zval *value, void **cache_slot); -ZEND_API int zend_std_has_property(zval *object, zval *member, int has_set_exists, void **cache_slot); -ZEND_API void zend_std_unset_property(zval *object, zval *member, void **cache_slot); -ZEND_API zval *zend_std_read_dimension(zval *object, zval *offset, int type, zval *rv); -ZEND_API void zend_std_write_dimension(zval *object, zval *offset, zval *value); -ZEND_API int zend_std_has_dimension(zval *object, zval *offset, int check_empty); -ZEND_API void zend_std_unset_dimension(zval *object, zval *offset); -ZEND_API zend_function *zend_std_get_method(zend_object **obj_ptr, zend_string *method_name, const zval *key); -ZEND_API zend_string *zend_std_get_class_name(const zend_object *zobj); -ZEND_API int zend_std_compare_objects(zval *o1, zval *o2); -ZEND_API int zend_std_get_closure(zval *obj, zend_class_entry **ce_ptr, zend_function **fptr_ptr, zend_object **obj_ptr); -ZEND_API void rebuild_object_properties(zend_object *zobj); - -ZEND_API int zend_check_protected(zend_class_entry *ce, zend_class_entry *scope); - -ZEND_API int zend_check_property_access(zend_object *zobj, zend_string *prop_info_name, zend_bool is_dynamic); - -ZEND_API zend_function *zend_get_call_trampoline_func(zend_class_entry *ce, zend_string *method_name, int is_static); - -ZEND_API uint32_t *zend_get_property_guard(zend_object *zobj, zend_string *member); - -/* Default behavior for get_properties_for. For use as a fallback in custom - * get_properties_for implementations. */ -ZEND_API HashTable *zend_std_get_properties_for(zval *obj, zend_prop_purpose purpose); - -/* Will call get_properties_for handler or use default behavior. For use by - * consumers of the get_properties_for API. */ -ZEND_API HashTable *zend_get_properties_for(zval *obj, zend_prop_purpose purpose); - -#define zend_release_properties(ht) do { \ - if ((ht) && !(GC_FLAGS(ht) & GC_IMMUTABLE) && !GC_DELREF(ht)) { \ - zend_array_destroy(ht); \ - } \ -} while (0) - -#define zend_free_trampoline(func) do { \ - if ((func) == &EG(trampoline)) { \ - EG(trampoline).common.function_name = NULL; \ - } else { \ - efree(func); \ - } \ - } while (0) - -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_objects.h b/7.4.27/mac/include/php/Zend/zend_objects.h deleted file mode 100644 index cb00155..0000000 --- a/7.4.27/mac/include/php/Zend/zend_objects.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_OBJECTS_H -#define ZEND_OBJECTS_H - -#include "zend.h" - -BEGIN_EXTERN_C() -ZEND_API void ZEND_FASTCALL zend_object_std_init(zend_object *object, zend_class_entry *ce); -ZEND_API zend_object* ZEND_FASTCALL zend_objects_new(zend_class_entry *ce); -ZEND_API void ZEND_FASTCALL zend_objects_clone_members(zend_object *new_object, zend_object *old_object); - -ZEND_API void zend_object_std_dtor(zend_object *object); -ZEND_API void zend_objects_destroy_object(zend_object *object); -ZEND_API zend_object *zend_objects_clone_obj(zval *object); -END_EXTERN_C() - -#endif /* ZEND_OBJECTS_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_objects_API.h b/7.4.27/mac/include/php/Zend/zend_objects_API.h deleted file mode 100644 index b9a838e..0000000 --- a/7.4.27/mac/include/php/Zend/zend_objects_API.h +++ /dev/null @@ -1,117 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_OBJECTS_API_H -#define ZEND_OBJECTS_API_H - -#include "zend.h" -#include "zend_compile.h" - -#define OBJ_BUCKET_INVALID (1<<0) - -#define IS_OBJ_VALID(o) (!(((zend_uintptr_t)(o)) & OBJ_BUCKET_INVALID)) - -#define SET_OBJ_INVALID(o) ((zend_object*)((((zend_uintptr_t)(o)) | OBJ_BUCKET_INVALID))) - -#define GET_OBJ_BUCKET_NUMBER(o) (((zend_intptr_t)(o)) >> 1) - -#define SET_OBJ_BUCKET_NUMBER(o, n) do { \ - (o) = (zend_object*)((((zend_uintptr_t)(n)) << 1) | OBJ_BUCKET_INVALID); \ - } while (0) - -#define ZEND_OBJECTS_STORE_ADD_TO_FREE_LIST(h) do { \ - SET_OBJ_BUCKET_NUMBER(EG(objects_store).object_buckets[(h)], EG(objects_store).free_list_head); \ - EG(objects_store).free_list_head = (h); \ - } while (0) - -#define OBJ_RELEASE(obj) zend_object_release(obj) - -typedef struct _zend_objects_store { - zend_object **object_buckets; - uint32_t top; - uint32_t size; - int free_list_head; -} zend_objects_store; - -/* Global store handling functions */ -BEGIN_EXTERN_C() -ZEND_API void ZEND_FASTCALL zend_objects_store_init(zend_objects_store *objects, uint32_t init_size); -ZEND_API void ZEND_FASTCALL zend_objects_store_call_destructors(zend_objects_store *objects); -ZEND_API void ZEND_FASTCALL zend_objects_store_mark_destructed(zend_objects_store *objects); -ZEND_API void ZEND_FASTCALL zend_objects_store_free_object_storage(zend_objects_store *objects, zend_bool fast_shutdown); -ZEND_API void ZEND_FASTCALL zend_objects_store_destroy(zend_objects_store *objects); - -/* Store API functions */ -ZEND_API void ZEND_FASTCALL zend_objects_store_put(zend_object *object); -ZEND_API void ZEND_FASTCALL zend_objects_store_del(zend_object *object); - -/* Called when the ctor was terminated by an exception */ -static zend_always_inline void zend_object_store_ctor_failed(zend_object *obj) -{ - GC_ADD_FLAGS(obj, IS_OBJ_DESTRUCTOR_CALLED); -} - -END_EXTERN_C() - -static zend_always_inline void zend_object_release(zend_object *obj) -{ - if (GC_DELREF(obj) == 0) { - zend_objects_store_del(obj); - } else if (UNEXPECTED(GC_MAY_LEAK((zend_refcounted*)obj))) { - gc_possible_root((zend_refcounted*)obj); - } -} - -static zend_always_inline size_t zend_object_properties_size(zend_class_entry *ce) -{ - return sizeof(zval) * - (ce->default_properties_count - - ((ce->ce_flags & ZEND_ACC_USE_GUARDS) ? 0 : 1)); -} - -/* Allocates object type and zeros it, but not the properties. - * Properties MUST be initialized using object_properties_init(). */ -static zend_always_inline void *zend_object_alloc(size_t obj_size, zend_class_entry *ce) { - void *obj = emalloc(obj_size + zend_object_properties_size(ce)); - /* Subtraction of sizeof(zval) is necessary, because zend_object_properties_size() may be - * -sizeof(zval), if the object has no properties. */ - memset(obj, 0, obj_size - sizeof(zval)); - return obj; -} - -static inline zend_property_info *zend_get_property_info_for_slot(zend_object *obj, zval *slot) -{ - zend_property_info **table = obj->ce->properties_info_table; - intptr_t prop_num = slot - obj->properties_table; - ZEND_ASSERT(prop_num >= 0 && prop_num < obj->ce->default_properties_count); - return table[prop_num]; -} - -/* Helper for cases where we're only interested in property info of typed properties. */ -static inline zend_property_info *zend_get_typed_property_info_for_slot(zend_object *obj, zval *slot) -{ - zend_property_info *prop_info = zend_get_property_info_for_slot(obj, slot); - if (prop_info && prop_info->type) { - return prop_info; - } - return NULL; -} - - -#endif /* ZEND_OBJECTS_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_operators.h b/7.4.27/mac/include/php/Zend/zend_operators.h deleted file mode 100644 index dad23bc..0000000 --- a/7.4.27/mac/include/php/Zend/zend_operators.h +++ /dev/null @@ -1,983 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - | Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_OPERATORS_H -#define ZEND_OPERATORS_H - -#include -#include -#include -#include - -#ifdef HAVE_IEEEFP_H -#include -#endif - -#include "zend_portability.h" -#include "zend_strtod.h" -#include "zend_multiply.h" -#include "zend_object_handlers.h" - -#define LONG_SIGN_MASK ZEND_LONG_MIN - -BEGIN_EXTERN_C() -ZEND_API int ZEND_FASTCALL add_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL sub_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL mul_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL pow_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL div_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL mod_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL boolean_xor_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL boolean_not_function(zval *result, zval *op1); -ZEND_API int ZEND_FASTCALL bitwise_not_function(zval *result, zval *op1); -ZEND_API int ZEND_FASTCALL bitwise_or_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL bitwise_and_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL bitwise_xor_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL shift_left_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL shift_right_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL concat_function(zval *result, zval *op1, zval *op2); - -ZEND_API zend_bool ZEND_FASTCALL zend_is_identical(zval *op1, zval *op2); - -ZEND_API int ZEND_FASTCALL is_equal_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL is_identical_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL is_not_identical_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL is_not_equal_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL is_smaller_function(zval *result, zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL is_smaller_or_equal_function(zval *result, zval *op1, zval *op2); - -ZEND_API zend_bool ZEND_FASTCALL instanceof_function_ex(const zend_class_entry *instance_ce, const zend_class_entry *ce, zend_bool is_interface); -ZEND_API zend_bool ZEND_FASTCALL instanceof_function(const zend_class_entry *instance_ce, const zend_class_entry *ce); - -/** - * Checks whether the string "str" with length "length" is numeric. The value - * of allow_errors determines whether it's required to be entirely numeric, or - * just its prefix. Leading whitespace is allowed. - * - * The function returns 0 if the string did not contain a valid number; IS_LONG - * if it contained a number that fits within the range of a long; or IS_DOUBLE - * if the number was out of long range or contained a decimal point/exponent. - * The number's value is returned into the respective pointer, *lval or *dval, - * if that pointer is not NULL. - * - * This variant also gives information if a string that represents an integer - * could not be represented as such due to overflow. It writes 1 to oflow_info - * if the integer is larger than ZEND_LONG_MAX and -1 if it's smaller than ZEND_LONG_MIN. - */ -ZEND_API zend_uchar ZEND_FASTCALL _is_numeric_string_ex(const char *str, size_t length, zend_long *lval, double *dval, int allow_errors, int *oflow_info); - -ZEND_API const char* ZEND_FASTCALL zend_memnstr_ex(const char *haystack, const char *needle, size_t needle_len, const char *end); -ZEND_API const char* ZEND_FASTCALL zend_memnrstr_ex(const char *haystack, const char *needle, size_t needle_len, const char *end); - -#if SIZEOF_ZEND_LONG == 4 -# define ZEND_DOUBLE_FITS_LONG(d) (!((d) > (double)ZEND_LONG_MAX || (d) < (double)ZEND_LONG_MIN)) -#else - /* >= as (double)ZEND_LONG_MAX is outside signed range */ -# define ZEND_DOUBLE_FITS_LONG(d) (!((d) >= (double)ZEND_LONG_MAX || (d) < (double)ZEND_LONG_MIN)) -#endif - -#if ZEND_DVAL_TO_LVAL_CAST_OK -static zend_always_inline zend_long zend_dval_to_lval(double d) -{ - if (EXPECTED(zend_finite(d)) && EXPECTED(!zend_isnan(d))) { - return (zend_long)d; - } else { - return 0; - } -} -#else -ZEND_API zend_long ZEND_FASTCALL zend_dval_to_lval_slow(double d); - -static zend_always_inline zend_long zend_dval_to_lval(double d) -{ - if (UNEXPECTED(!zend_finite(d)) || UNEXPECTED(zend_isnan(d))) { - return 0; - } else if (!ZEND_DOUBLE_FITS_LONG(d)) { - return zend_dval_to_lval_slow(d); - } - return (zend_long)d; -} -#endif - -static zend_always_inline zend_long zend_dval_to_lval_cap(double d) -{ - if (UNEXPECTED(!zend_finite(d)) || UNEXPECTED(zend_isnan(d))) { - return 0; - } else if (!ZEND_DOUBLE_FITS_LONG(d)) { - return (d > 0 ? ZEND_LONG_MAX : ZEND_LONG_MIN); - } - return (zend_long)d; -} -/* }}} */ - -#define ZEND_IS_DIGIT(c) ((c) >= '0' && (c) <= '9') -#define ZEND_IS_XDIGIT(c) (((c) >= 'A' && (c) <= 'F') || ((c) >= 'a' && (c) <= 'f')) - -static zend_always_inline zend_uchar is_numeric_string_ex(const char *str, size_t length, zend_long *lval, double *dval, int allow_errors, int *oflow_info) -{ - if (*str > '9') { - return 0; - } - return _is_numeric_string_ex(str, length, lval, dval, allow_errors, oflow_info); -} - -static zend_always_inline zend_uchar is_numeric_string(const char *str, size_t length, zend_long *lval, double *dval, int allow_errors) { - return is_numeric_string_ex(str, length, lval, dval, allow_errors, NULL); -} - -ZEND_API zend_uchar ZEND_FASTCALL is_numeric_str_function(const zend_string *str, zend_long *lval, double *dval); - -static zend_always_inline const char * -zend_memnstr(const char *haystack, const char *needle, size_t needle_len, const char *end) -{ - const char *p = haystack; - const char ne = needle[needle_len-1]; - ptrdiff_t off_p; - size_t off_s; - - if (needle_len == 1) { - return (const char *)memchr(p, *needle, (end-p)); - } - - off_p = end - haystack; - off_s = (off_p > 0) ? (size_t)off_p : 0; - - if (needle_len > off_s) { - return NULL; - } - - if (EXPECTED(off_s < 1024 || needle_len < 9)) { /* glibc memchr is faster when needle is too short */ - end -= needle_len; - - while (p <= end) { - if ((p = (const char *)memchr(p, *needle, (end-p+1))) && ne == p[needle_len-1]) { - if (!memcmp(needle+1, p+1, needle_len-2)) { - return p; - } - } - - if (p == NULL) { - return NULL; - } - - p++; - } - - return NULL; - } else { - return zend_memnstr_ex(haystack, needle, needle_len, end); - } -} - -static zend_always_inline const void *zend_memrchr(const void *s, int c, size_t n) -{ - const unsigned char *e; - if (0 == n) { - return NULL; - } - - for (e = (const unsigned char *)s + n - 1; e >= (const unsigned char *)s; e--) { - if (*e == (const unsigned char)c) { - return (const void *)e; - } - } - return NULL; -} - - -static zend_always_inline const char * -zend_memnrstr(const char *haystack, const char *needle, size_t needle_len, const char *end) -{ - const char *p = end; - const char ne = needle[needle_len-1]; - ptrdiff_t off_p; - size_t off_s; - - if (needle_len == 1) { - return (const char *)zend_memrchr(haystack, *needle, (p - haystack)); - } - - off_p = end - haystack; - off_s = (off_p > 0) ? (size_t)off_p : 0; - - if (needle_len > off_s) { - return NULL; - } - - if (EXPECTED(off_s < 1024 || needle_len < 3)) { - p -= needle_len; - - do { - p = (const char *)zend_memrchr(haystack, *needle, (p - haystack) + 1); - if (!p) { - return NULL; - } - if (ne == p[needle_len-1] && !memcmp(needle + 1, p + 1, needle_len - 2)) { - return p; - } - } while (p-- >= haystack); - - return NULL; - } else { - return zend_memnrstr_ex(haystack, needle, needle_len, end); - } -} - -ZEND_API int ZEND_FASTCALL increment_function(zval *op1); -ZEND_API int ZEND_FASTCALL decrement_function(zval *op2); - -ZEND_API void ZEND_FASTCALL convert_scalar_to_number(zval *op); -ZEND_API void ZEND_FASTCALL _convert_to_cstring(zval *op); -ZEND_API void ZEND_FASTCALL _convert_to_string(zval *op); -ZEND_API void ZEND_FASTCALL convert_to_long(zval *op); -ZEND_API void ZEND_FASTCALL convert_to_double(zval *op); -ZEND_API void ZEND_FASTCALL convert_to_long_base(zval *op, int base); -ZEND_API void ZEND_FASTCALL convert_to_null(zval *op); -ZEND_API void ZEND_FASTCALL convert_to_boolean(zval *op); -ZEND_API void ZEND_FASTCALL convert_to_array(zval *op); -ZEND_API void ZEND_FASTCALL convert_to_object(zval *op); -ZEND_API void multi_convert_to_long_ex(int argc, ...); -ZEND_API void multi_convert_to_double_ex(int argc, ...); -ZEND_API void multi_convert_to_string_ex(int argc, ...); - -ZEND_API zend_long ZEND_FASTCALL zval_get_long_func(zval *op); -ZEND_API double ZEND_FASTCALL zval_get_double_func(zval *op); -ZEND_API zend_string* ZEND_FASTCALL zval_get_string_func(zval *op); -ZEND_API zend_string* ZEND_FASTCALL zval_try_get_string_func(zval *op); - -static zend_always_inline zend_long zval_get_long(zval *op) { - return EXPECTED(Z_TYPE_P(op) == IS_LONG) ? Z_LVAL_P(op) : zval_get_long_func(op); -} -static zend_always_inline double zval_get_double(zval *op) { - return EXPECTED(Z_TYPE_P(op) == IS_DOUBLE) ? Z_DVAL_P(op) : zval_get_double_func(op); -} -static zend_always_inline zend_string *zval_get_string(zval *op) { - return EXPECTED(Z_TYPE_P(op) == IS_STRING) ? zend_string_copy(Z_STR_P(op)) : zval_get_string_func(op); -} - -static zend_always_inline zend_string *zval_get_tmp_string(zval *op, zend_string **tmp) { - if (EXPECTED(Z_TYPE_P(op) == IS_STRING)) { - *tmp = NULL; - return Z_STR_P(op); - } else { - return *tmp = zval_get_string_func(op); - } -} -static zend_always_inline void zend_tmp_string_release(zend_string *tmp) { - if (UNEXPECTED(tmp)) { - zend_string_release_ex(tmp, 0); - } -} - -/* Like zval_get_string, but returns NULL if the conversion fails with an exception. */ -static zend_always_inline zend_string *zval_try_get_string(zval *op) { - if (EXPECTED(Z_TYPE_P(op) == IS_STRING)) { - zend_string *ret = zend_string_copy(Z_STR_P(op)); - ZEND_ASSUME(ret != NULL); - return ret; - } else { - return zval_try_get_string_func(op); - } -} - -/* Like zval_get_tmp_string, but returns NULL if the conversion fails with an exception. */ -static zend_always_inline zend_string *zval_try_get_tmp_string(zval *op, zend_string **tmp) { - if (EXPECTED(Z_TYPE_P(op) == IS_STRING)) { - zend_string *ret = Z_STR_P(op); - *tmp = NULL; - ZEND_ASSUME(ret != NULL); - return ret; - } else { - return *tmp = zval_try_get_string_func(op); - } -} - -/* Like convert_to_string(), but returns whether the conversion succeeded and does not modify the - * zval in-place if it fails. */ -ZEND_API zend_bool ZEND_FASTCALL _try_convert_to_string(zval *op); -static zend_always_inline zend_bool try_convert_to_string(zval *op) { - if (Z_TYPE_P(op) == IS_STRING) { - return 1; - } - return _try_convert_to_string(op); -} - -/* Compatibility macros for 7.2 and below */ -#define _zval_get_long(op) zval_get_long(op) -#define _zval_get_double(op) zval_get_double(op) -#define _zval_get_string(op) zval_get_string(op) -#define _zval_get_long_func(op) zval_get_long_func(op) -#define _zval_get_double_func(op) zval_get_double_func(op) -#define _zval_get_string_func(op) zval_get_string_func(op) - -#define convert_to_cstring(op) if (Z_TYPE_P(op) != IS_STRING) { _convert_to_cstring((op)); } -#define convert_to_string(op) if (Z_TYPE_P(op) != IS_STRING) { _convert_to_string((op)); } - - -ZEND_API int ZEND_FASTCALL zend_is_true(zval *op); -ZEND_API int ZEND_FASTCALL zend_object_is_true(zval *op); - -#define zval_is_true(op) \ - zend_is_true(op) - -static zend_always_inline int i_zend_is_true(zval *op) -{ - int result = 0; - -again: - switch (Z_TYPE_P(op)) { - case IS_TRUE: - result = 1; - break; - case IS_LONG: - if (Z_LVAL_P(op)) { - result = 1; - } - break; - case IS_DOUBLE: - if (Z_DVAL_P(op)) { - result = 1; - } - break; - case IS_STRING: - if (Z_STRLEN_P(op) > 1 || (Z_STRLEN_P(op) && Z_STRVAL_P(op)[0] != '0')) { - result = 1; - } - break; - case IS_ARRAY: - if (zend_hash_num_elements(Z_ARRVAL_P(op))) { - result = 1; - } - break; - case IS_OBJECT: - if (EXPECTED(Z_OBJ_HT_P(op)->cast_object == zend_std_cast_object_tostring)) { - result = 1; - } else { - result = zend_object_is_true(op); - } - break; - case IS_RESOURCE: - if (EXPECTED(Z_RES_HANDLE_P(op))) { - result = 1; - } - break; - case IS_REFERENCE: - op = Z_REFVAL_P(op); - goto again; - break; - default: - break; - } - return result; -} - -ZEND_API int ZEND_FASTCALL compare_function(zval *result, zval *op1, zval *op2); - -ZEND_API int ZEND_FASTCALL numeric_compare_function(zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL string_compare_function_ex(zval *op1, zval *op2, zend_bool case_insensitive); -ZEND_API int ZEND_FASTCALL string_compare_function(zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL string_case_compare_function(zval *op1, zval *op2); -ZEND_API int ZEND_FASTCALL string_locale_compare_function(zval *op1, zval *op2); - -ZEND_API void ZEND_FASTCALL zend_str_tolower(char *str, size_t length); -ZEND_API char* ZEND_FASTCALL zend_str_tolower_copy(char *dest, const char *source, size_t length); -ZEND_API char* ZEND_FASTCALL zend_str_tolower_dup(const char *source, size_t length); -ZEND_API char* ZEND_FASTCALL zend_str_tolower_dup_ex(const char *source, size_t length); -ZEND_API zend_string* ZEND_FASTCALL zend_string_tolower_ex(zend_string *str, int persistent); - -#define zend_string_tolower(str) zend_string_tolower_ex(str, 0) - -ZEND_API int ZEND_FASTCALL zend_binary_zval_strcmp(zval *s1, zval *s2); -ZEND_API int ZEND_FASTCALL zend_binary_zval_strncmp(zval *s1, zval *s2, zval *s3); -ZEND_API int ZEND_FASTCALL zend_binary_zval_strcasecmp(zval *s1, zval *s2); -ZEND_API int ZEND_FASTCALL zend_binary_zval_strncasecmp(zval *s1, zval *s2, zval *s3); -ZEND_API int ZEND_FASTCALL zend_binary_strcmp(const char *s1, size_t len1, const char *s2, size_t len2); -ZEND_API int ZEND_FASTCALL zend_binary_strncmp(const char *s1, size_t len1, const char *s2, size_t len2, size_t length); -ZEND_API int ZEND_FASTCALL zend_binary_strcasecmp(const char *s1, size_t len1, const char *s2, size_t len2); -ZEND_API int ZEND_FASTCALL zend_binary_strncasecmp(const char *s1, size_t len1, const char *s2, size_t len2, size_t length); -ZEND_API int ZEND_FASTCALL zend_binary_strcasecmp_l(const char *s1, size_t len1, const char *s2, size_t len2); -ZEND_API int ZEND_FASTCALL zend_binary_strncasecmp_l(const char *s1, size_t len1, const char *s2, size_t len2, size_t length); - -ZEND_API int ZEND_FASTCALL zendi_smart_streq(zend_string *s1, zend_string *s2); -ZEND_API int ZEND_FASTCALL zendi_smart_strcmp(zend_string *s1, zend_string *s2); -ZEND_API int ZEND_FASTCALL zend_compare_symbol_tables(HashTable *ht1, HashTable *ht2); -ZEND_API int ZEND_FASTCALL zend_compare_arrays(zval *a1, zval *a2); -ZEND_API int ZEND_FASTCALL zend_compare_objects(zval *o1, zval *o2); - -ZEND_API int ZEND_FASTCALL zend_atoi(const char *str, size_t str_len); -ZEND_API zend_long ZEND_FASTCALL zend_atol(const char *str, size_t str_len); - -ZEND_API void ZEND_FASTCALL zend_locale_sprintf_double(zval *op ZEND_FILE_LINE_DC); - -#define convert_to_ex_master(pzv, lower_type, upper_type) \ - if (Z_TYPE_P(pzv)!=upper_type) { \ - convert_to_##lower_type(pzv); \ - } - -#define convert_to_explicit_type(pzv, type) \ - do { \ - switch (type) { \ - case IS_NULL: \ - convert_to_null(pzv); \ - break; \ - case IS_LONG: \ - convert_to_long(pzv); \ - break; \ - case IS_DOUBLE: \ - convert_to_double(pzv); \ - break; \ - case _IS_BOOL: \ - convert_to_boolean(pzv); \ - break; \ - case IS_ARRAY: \ - convert_to_array(pzv); \ - break; \ - case IS_OBJECT: \ - convert_to_object(pzv); \ - break; \ - case IS_STRING: \ - convert_to_string(pzv); \ - break; \ - default: \ - assert(0); \ - break; \ - } \ - } while (0); - -#define convert_to_explicit_type_ex(pzv, str_type) \ - if (Z_TYPE_P(pzv) != str_type) { \ - convert_to_explicit_type(pzv, str_type); \ - } - -#define convert_to_boolean_ex(pzv) do { \ - if (Z_TYPE_INFO_P(pzv) > IS_TRUE) { \ - convert_to_boolean(pzv); \ - } else if (Z_TYPE_INFO_P(pzv) < IS_FALSE) { \ - ZVAL_FALSE(pzv); \ - } \ - } while (0) -#define convert_to_long_ex(pzv) convert_to_ex_master(pzv, long, IS_LONG) -#define convert_to_double_ex(pzv) convert_to_ex_master(pzv, double, IS_DOUBLE) -#define convert_to_string_ex(pzv) convert_to_ex_master(pzv, string, IS_STRING) -#define convert_to_array_ex(pzv) convert_to_ex_master(pzv, array, IS_ARRAY) -#define convert_to_object_ex(pzv) convert_to_ex_master(pzv, object, IS_OBJECT) -#define convert_to_null_ex(pzv) convert_to_ex_master(pzv, null, IS_NULL) - -#define convert_scalar_to_number_ex(pzv) \ - if (Z_TYPE_P(pzv)!=IS_LONG && Z_TYPE_P(pzv)!=IS_DOUBLE) { \ - convert_scalar_to_number(pzv); \ - } - -#if defined(ZEND_WIN32) && !defined(ZTS) && defined(_MSC_VER) -/* This performance improvement of tolower() on Windows gives 10-18% on bench.php */ -#define ZEND_USE_TOLOWER_L 1 -#endif - -#ifdef ZEND_USE_TOLOWER_L -ZEND_API void zend_update_current_locale(void); -#else -#define zend_update_current_locale() -#endif - -/* The offset in bytes between the value and type fields of a zval */ -#define ZVAL_OFFSETOF_TYPE \ - (offsetof(zval, u1.type_info) - offsetof(zval, value)) - -#if defined(HAVE_ASM_GOTO) && !__has_feature(memory_sanitizer) -# define ZEND_USE_ASM_ARITHMETIC 1 -#else -# define ZEND_USE_ASM_ARITHMETIC 0 -#endif - -static zend_always_inline void fast_long_increment_function(zval *op1) -{ -#if ZEND_USE_ASM_ARITHMETIC && defined(__i386__) && !(4 == __GNUC__ && 8 == __GNUC_MINOR__) - __asm__ goto( - "addl $1,(%0)\n\t" - "jo %l1\n" - : - : "r"(&op1->value) - : "cc", "memory" - : overflow); - return; -overflow: ZEND_ATTRIBUTE_COLD_LABEL - ZVAL_DOUBLE(op1, (double)ZEND_LONG_MAX + 1.0); -#elif ZEND_USE_ASM_ARITHMETIC && defined(__x86_64__) - __asm__ goto( - "addq $1,(%0)\n\t" - "jo %l1\n" - : - : "r"(&op1->value) - : "cc", "memory" - : overflow); - return; -overflow: ZEND_ATTRIBUTE_COLD_LABEL - ZVAL_DOUBLE(op1, (double)ZEND_LONG_MAX + 1.0); -#elif ZEND_USE_ASM_ARITHMETIC && defined(__aarch64__) - __asm__ goto ( - "ldr x5, [%0]\n\t" - "adds x5, x5, 1\n\t" - "bvs %l1\n" - "str x5, [%0]" - : - : "r"(&op1->value) - : "x5", "cc", "memory" - : overflow); - return; -overflow: ZEND_ATTRIBUTE_COLD_LABEL - ZVAL_DOUBLE(op1, (double)ZEND_LONG_MAX + 1.0); -#elif PHP_HAVE_BUILTIN_SADDL_OVERFLOW && SIZEOF_LONG == SIZEOF_ZEND_LONG - long lresult; - if (UNEXPECTED(__builtin_saddl_overflow(Z_LVAL_P(op1), 1, &lresult))) { - /* switch to double */ - ZVAL_DOUBLE(op1, (double)ZEND_LONG_MAX + 1.0); - } else { - Z_LVAL_P(op1) = lresult; - } -#elif PHP_HAVE_BUILTIN_SADDLL_OVERFLOW && SIZEOF_LONG_LONG == SIZEOF_ZEND_LONG - long long llresult; - if (UNEXPECTED(__builtin_saddll_overflow(Z_LVAL_P(op1), 1, &llresult))) { - /* switch to double */ - ZVAL_DOUBLE(op1, (double)ZEND_LONG_MAX + 1.0); - } else { - Z_LVAL_P(op1) = llresult; - } -#else - if (UNEXPECTED(Z_LVAL_P(op1) == ZEND_LONG_MAX)) { - /* switch to double */ - ZVAL_DOUBLE(op1, (double)ZEND_LONG_MAX + 1.0); - } else { - Z_LVAL_P(op1)++; - } -#endif -} - -static zend_always_inline void fast_long_decrement_function(zval *op1) -{ -#if ZEND_USE_ASM_ARITHMETIC && defined(__i386__) && !(4 == __GNUC__ && 8 == __GNUC_MINOR__) - __asm__ goto( - "subl $1,(%0)\n\t" - "jo %l1\n" - : - : "r"(&op1->value) - : "cc", "memory" - : overflow); - return; -overflow: ZEND_ATTRIBUTE_COLD_LABEL - ZVAL_DOUBLE(op1, (double)ZEND_LONG_MIN - 1.0); -#elif ZEND_USE_ASM_ARITHMETIC && defined(__x86_64__) - __asm__ goto( - "subq $1,(%0)\n\t" - "jo %l1\n" - : - : "r"(&op1->value) - : "cc", "memory" - : overflow); - return; -overflow: ZEND_ATTRIBUTE_COLD_LABEL - ZVAL_DOUBLE(op1, (double)ZEND_LONG_MIN - 1.0); -#elif ZEND_USE_ASM_ARITHMETIC && defined(__aarch64__) - __asm__ goto ( - "ldr x5, [%0]\n\t" - "subs x5 ,x5, 1\n\t" - "bvs %l1\n" - "str x5, [%0]" - : - : "r"(&op1->value) - : "x5", "cc", "memory" - : overflow); - return; -overflow: ZEND_ATTRIBUTE_COLD_LABEL - ZVAL_DOUBLE(op1, (double)ZEND_LONG_MIN - 1.0); -#elif PHP_HAVE_BUILTIN_SSUBL_OVERFLOW && SIZEOF_LONG == SIZEOF_ZEND_LONG - long lresult; - if (UNEXPECTED(__builtin_ssubl_overflow(Z_LVAL_P(op1), 1, &lresult))) { - /* switch to double */ - ZVAL_DOUBLE(op1, (double)ZEND_LONG_MIN - 1.0); - } else { - Z_LVAL_P(op1) = lresult; - } -#elif PHP_HAVE_BUILTIN_SSUBLL_OVERFLOW && SIZEOF_LONG_LONG == SIZEOF_ZEND_LONG - long long llresult; - if (UNEXPECTED(__builtin_ssubll_overflow(Z_LVAL_P(op1), 1, &llresult))) { - /* switch to double */ - ZVAL_DOUBLE(op1, (double)ZEND_LONG_MIN - 1.0); - } else { - Z_LVAL_P(op1) = llresult; - } -#else - if (UNEXPECTED(Z_LVAL_P(op1) == ZEND_LONG_MIN)) { - /* switch to double */ - ZVAL_DOUBLE(op1, (double)ZEND_LONG_MIN - 1.0); - } else { - Z_LVAL_P(op1)--; - } -#endif -} - -static zend_always_inline void fast_long_add_function(zval *result, zval *op1, zval *op2) -{ -#if ZEND_USE_ASM_ARITHMETIC && defined(__i386__) && !(4 == __GNUC__ && 8 == __GNUC_MINOR__) - __asm__ goto( - "movl (%1), %%eax\n\t" - "addl (%2), %%eax\n\t" - "jo %l5\n\t" - "movl %%eax, (%0)\n\t" - "movl %3, %c4(%0)\n" - : - : "r"(&result->value), - "r"(&op1->value), - "r"(&op2->value), - "n"(IS_LONG), - "n"(ZVAL_OFFSETOF_TYPE) - : "eax","cc", "memory" - : overflow); - return; -overflow: ZEND_ATTRIBUTE_COLD_LABEL - ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2)); -#elif ZEND_USE_ASM_ARITHMETIC && defined(__x86_64__) - __asm__ goto( - "movq (%1), %%rax\n\t" - "addq (%2), %%rax\n\t" - "jo %l5\n\t" - "movq %%rax, (%0)\n\t" - "movl %3, %c4(%0)\n" - : - : "r"(&result->value), - "r"(&op1->value), - "r"(&op2->value), - "n"(IS_LONG), - "n"(ZVAL_OFFSETOF_TYPE) - : "rax","cc", "memory" - : overflow); - return; -overflow: ZEND_ATTRIBUTE_COLD_LABEL - ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2)); -#elif ZEND_USE_ASM_ARITHMETIC && defined(__aarch64__) - __asm__ goto( - "ldr x5, [%1]\n\t" - "ldr x6, [%2]\n\t" - "adds x5, x5, x6\n\t" - "bvs %l5\n\t" - "mov w6, %3\n\t" - "str x5, [%0]\n\t" - "str w6, [%0, %c4]\n" - : - : "r"(&result->value), - "r"(&op1->value), - "r"(&op2->value), - "n"(IS_LONG), - "n"(ZVAL_OFFSETOF_TYPE) - : "x5", "x6", "cc", "memory" - : overflow); - return; -overflow: ZEND_ATTRIBUTE_COLD_LABEL - ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2)); -#elif PHP_HAVE_BUILTIN_SADDL_OVERFLOW && SIZEOF_LONG == SIZEOF_ZEND_LONG - long lresult; - if (UNEXPECTED(__builtin_saddl_overflow(Z_LVAL_P(op1), Z_LVAL_P(op2), &lresult))) { - ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2)); - } else { - ZVAL_LONG(result, lresult); - } -#elif PHP_HAVE_BUILTIN_SADDLL_OVERFLOW && SIZEOF_LONG_LONG == SIZEOF_ZEND_LONG - long long llresult; - if (UNEXPECTED(__builtin_saddll_overflow(Z_LVAL_P(op1), Z_LVAL_P(op2), &llresult))) { - ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2)); - } else { - ZVAL_LONG(result, llresult); - } -#else - /* - * 'result' may alias with op1 or op2, so we need to - * ensure that 'result' is not updated until after we - * have read the values of op1 and op2. - */ - - if (UNEXPECTED((Z_LVAL_P(op1) & LONG_SIGN_MASK) == (Z_LVAL_P(op2) & LONG_SIGN_MASK) - && (Z_LVAL_P(op1) & LONG_SIGN_MASK) != ((Z_LVAL_P(op1) + Z_LVAL_P(op2)) & LONG_SIGN_MASK))) { - ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) + (double) Z_LVAL_P(op2)); - } else { - ZVAL_LONG(result, Z_LVAL_P(op1) + Z_LVAL_P(op2)); - } -#endif -} - -static zend_always_inline int fast_add_function(zval *result, zval *op1, zval *op2) -{ - if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - fast_long_add_function(result, op1, op2); - return SUCCESS; - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - ZVAL_DOUBLE(result, ((double)Z_LVAL_P(op1)) + Z_DVAL_P(op2)); - return SUCCESS; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - ZVAL_DOUBLE(result, Z_DVAL_P(op1) + Z_DVAL_P(op2)); - return SUCCESS; - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - ZVAL_DOUBLE(result, Z_DVAL_P(op1) + ((double)Z_LVAL_P(op2))); - return SUCCESS; - } - } - return add_function(result, op1, op2); -} - -static zend_always_inline void fast_long_sub_function(zval *result, zval *op1, zval *op2) -{ -#if ZEND_USE_ASM_ARITHMETIC && defined(__i386__) && !(4 == __GNUC__ && 8 == __GNUC_MINOR__) - __asm__ goto( - "movl (%1), %%eax\n\t" - "subl (%2), %%eax\n\t" - "jo %l5\n\t" - "movl %%eax, (%0)\n\t" - "movl %3, %c4(%0)\n" - : - : "r"(&result->value), - "r"(&op1->value), - "r"(&op2->value), - "n"(IS_LONG), - "n"(ZVAL_OFFSETOF_TYPE) - : "eax","cc", "memory" - : overflow); - return; -overflow: ZEND_ATTRIBUTE_COLD_LABEL - ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2)); -#elif ZEND_USE_ASM_ARITHMETIC && defined(__x86_64__) - __asm__ goto( - "movq (%1), %%rax\n\t" - "subq (%2), %%rax\n\t" - "jo %l5\n\t" - "movq %%rax, (%0)\n\t" - "movl %3, %c4(%0)\n" - : - : "r"(&result->value), - "r"(&op1->value), - "r"(&op2->value), - "n"(IS_LONG), - "n"(ZVAL_OFFSETOF_TYPE) - : "rax","cc", "memory" - : overflow); - return; -overflow: ZEND_ATTRIBUTE_COLD_LABEL - ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2)); -#elif ZEND_USE_ASM_ARITHMETIC && defined(__aarch64__) - __asm__ goto( - "ldr x5, [%1]\n\t" - "ldr x6, [%2]\n\t" - "subs x5, x5, x6\n\t" - "bvs %l5\n\t" - "mov w6, %3\n\t" - "str x5, [%0]\n\t" - "str w6, [%0, %c4]\n" - : - : "r"(&result->value), - "r"(&op1->value), - "r"(&op2->value), - "n"(IS_LONG), - "n"(ZVAL_OFFSETOF_TYPE) - : "x5", "x6", "cc", "memory" - : overflow); - return; -overflow: ZEND_ATTRIBUTE_COLD_LABEL - ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2)); -#elif PHP_HAVE_BUILTIN_SSUBL_OVERFLOW && SIZEOF_LONG == SIZEOF_ZEND_LONG - long lresult; - if (UNEXPECTED(__builtin_ssubl_overflow(Z_LVAL_P(op1), Z_LVAL_P(op2), &lresult))) { - ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2)); - } else { - ZVAL_LONG(result, lresult); - } -#elif PHP_HAVE_BUILTIN_SSUBLL_OVERFLOW && SIZEOF_LONG_LONG == SIZEOF_ZEND_LONG - long long llresult; - if (UNEXPECTED(__builtin_ssubll_overflow(Z_LVAL_P(op1), Z_LVAL_P(op2), &llresult))) { - ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2)); - } else { - ZVAL_LONG(result, llresult); - } -#else - ZVAL_LONG(result, Z_LVAL_P(op1) - Z_LVAL_P(op2)); - - if (UNEXPECTED((Z_LVAL_P(op1) & LONG_SIGN_MASK) != (Z_LVAL_P(op2) & LONG_SIGN_MASK) - && (Z_LVAL_P(op1) & LONG_SIGN_MASK) != (Z_LVAL_P(result) & LONG_SIGN_MASK))) { - ZVAL_DOUBLE(result, (double) Z_LVAL_P(op1) - (double) Z_LVAL_P(op2)); - } -#endif -} - -static zend_always_inline int fast_div_function(zval *result, zval *op1, zval *op2) -{ - return div_function(result, op1, op2); -} - -static zend_always_inline int zend_fast_equal_strings(zend_string *s1, zend_string *s2) -{ - if (s1 == s2) { - return 1; - } else if (ZSTR_VAL(s1)[0] > '9' || ZSTR_VAL(s2)[0] > '9') { - return zend_string_equal_content(s1, s2); - } else { - return zendi_smart_streq(s1, s2); - } -} - -static zend_always_inline int fast_equal_check_function(zval *op1, zval *op2) -{ - zval result; - if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - return Z_LVAL_P(op1) == Z_LVAL_P(op2); - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - return ((double)Z_LVAL_P(op1)) == Z_DVAL_P(op2); - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - return Z_DVAL_P(op1) == Z_DVAL_P(op2); - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - return Z_DVAL_P(op1) == ((double)Z_LVAL_P(op2)); - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - return zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - } - } - compare_function(&result, op1, op2); - return Z_LVAL(result) == 0; -} - -static zend_always_inline int fast_equal_check_long(zval *op1, zval *op2) -{ - zval result; - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - return Z_LVAL_P(op1) == Z_LVAL_P(op2); - } - compare_function(&result, op1, op2); - return Z_LVAL(result) == 0; -} - -static zend_always_inline int fast_equal_check_string(zval *op1, zval *op2) -{ - zval result; - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - return zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - } - compare_function(&result, op1, op2); - return Z_LVAL(result) == 0; -} - -static zend_always_inline zend_bool fast_is_identical_function(zval *op1, zval *op2) -{ - if (Z_TYPE_P(op1) != Z_TYPE_P(op2)) { - return 0; - } else if (Z_TYPE_P(op1) <= IS_TRUE) { - return 1; - } - return zend_is_identical(op1, op2); -} - -static zend_always_inline zend_bool fast_is_not_identical_function(zval *op1, zval *op2) -{ - if (Z_TYPE_P(op1) != Z_TYPE_P(op2)) { - return 1; - } else if (Z_TYPE_P(op1) <= IS_TRUE) { - return 0; - } - return !zend_is_identical(op1, op2); -} - -#define ZEND_TRY_BINARY_OP1_OBJECT_OPERATION(opcode, binary_op) \ - if (UNEXPECTED(Z_TYPE_P(op1) == IS_OBJECT) \ - && op1 == result \ - && UNEXPECTED(Z_OBJ_HANDLER_P(op1, get)) \ - && EXPECTED(Z_OBJ_HANDLER_P(op1, set))) { \ - int ret; \ - zval rv; \ - zval *objval = Z_OBJ_HANDLER_P(op1, get)(op1, &rv); \ - Z_TRY_ADDREF_P(objval); \ - ret = binary_op(objval, objval, op2); \ - Z_OBJ_HANDLER_P(op1, set)(op1, objval); \ - zval_ptr_dtor(objval); \ - return ret; \ - } else if (UNEXPECTED(Z_TYPE_P(op1) == IS_OBJECT) \ - && UNEXPECTED(Z_OBJ_HANDLER_P(op1, do_operation))) { \ - if (EXPECTED(SUCCESS == Z_OBJ_HANDLER_P(op1, do_operation)(opcode, result, op1, op2))) { \ - return SUCCESS; \ - } \ - } - -#define ZEND_TRY_BINARY_OP2_OBJECT_OPERATION(opcode) \ - if (UNEXPECTED(Z_TYPE_P(op2) == IS_OBJECT) \ - && UNEXPECTED(Z_OBJ_HANDLER_P(op2, do_operation)) \ - && EXPECTED(SUCCESS == Z_OBJ_HANDLER_P(op2, do_operation)(opcode, result, op1, op2))) { \ - return SUCCESS; \ - } - -#define ZEND_TRY_BINARY_OBJECT_OPERATION(opcode, binary_op) \ - ZEND_TRY_BINARY_OP1_OBJECT_OPERATION(opcode, binary_op) \ - else \ - ZEND_TRY_BINARY_OP2_OBJECT_OPERATION(opcode) - -#define ZEND_TRY_UNARY_OBJECT_OPERATION(opcode) \ - if (UNEXPECTED(Z_TYPE_P(op1) == IS_OBJECT) \ - && UNEXPECTED(Z_OBJ_HANDLER_P(op1, do_operation)) \ - && EXPECTED(SUCCESS == Z_OBJ_HANDLER_P(op1, do_operation)(opcode, result, op1, NULL))) { \ - return SUCCESS; \ - } - -/* buf points to the END of the buffer */ -static zend_always_inline char *zend_print_ulong_to_buf(char *buf, zend_ulong num) { - *buf = '\0'; - do { - *--buf = (char) (num % 10) + '0'; - num /= 10; - } while (num > 0); - return buf; -} - -/* buf points to the END of the buffer */ -static zend_always_inline char *zend_print_long_to_buf(char *buf, zend_long num) { - if (num < 0) { - char *result = zend_print_ulong_to_buf(buf, ~((zend_ulong) num) + 1); - *--result = '-'; - return result; - } else { - return zend_print_ulong_to_buf(buf, num); - } -} - -ZEND_API zend_string* ZEND_FASTCALL zend_long_to_str(zend_long num); - -static zend_always_inline void zend_unwrap_reference(zval *op) /* {{{ */ -{ - if (Z_REFCOUNT_P(op) == 1) { - ZVAL_UNREF(op); - } else { - Z_DELREF_P(op); - ZVAL_COPY(op, Z_REFVAL_P(op)); - } -} -/* }}} */ - - -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_portability.h b/7.4.27/mac/include/php/Zend/zend_portability.h deleted file mode 100644 index 58c42a2..0000000 --- a/7.4.27/mac/include/php/Zend/zend_portability.h +++ /dev/null @@ -1,659 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - | Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_PORTABILITY_H -#define ZEND_PORTABILITY_H - -#ifdef __cplusplus -#define BEGIN_EXTERN_C() extern "C" { -#define END_EXTERN_C() } -#else -#define BEGIN_EXTERN_C() -#define END_EXTERN_C() -#endif - -/* - * general definitions - */ - -#ifdef ZEND_WIN32 -# include "zend_config.w32.h" -# define ZEND_PATHS_SEPARATOR ';' -#elif defined(__riscos__) -# include -# define ZEND_PATHS_SEPARATOR ';' -#else -# include -# define ZEND_PATHS_SEPARATOR ':' -#endif - -#include "../TSRM/TSRM.h" - -#include -#include -#include - -#ifdef HAVE_UNIX_H -# include -#endif - -#include -#include - -#ifdef HAVE_DLFCN_H -# include -#endif - -#include - -#if HAVE_ALLOCA_H && !defined(_ALLOCA_H) -# include -#endif - -#if defined(ZEND_WIN32) && !defined(__clang__) -#include -#endif - -#include "zend_range_check.h" - -/* GCC x.y.z supplies __GNUC__ = x and __GNUC_MINOR__ = y */ -#ifdef __GNUC__ -# define ZEND_GCC_VERSION (__GNUC__ * 1000 + __GNUC_MINOR__) -#else -# define ZEND_GCC_VERSION 0 -#endif - -/* Compatibility with non-clang compilers */ -#ifndef __has_attribute -# define __has_attribute(x) 0 -#endif -#ifndef __has_builtin -# define __has_builtin(x) 0 -#endif -#ifndef __has_feature -# define __has_feature(x) 0 -#endif - -#if defined(ZEND_WIN32) && !defined(__clang__) -# define ZEND_ASSUME(c) __assume(c) -#elif ((defined(__GNUC__) && ZEND_GCC_VERSION >= 4005) || __has_builtin(__builtin_unreachable)) && PHP_HAVE_BUILTIN_EXPECT -# define ZEND_ASSUME(c) do { \ - if (__builtin_expect(!(c), 0)) __builtin_unreachable(); \ - } while (0) -#else -# define ZEND_ASSUME(c) -#endif - -#if ZEND_DEBUG -# define ZEND_ASSERT(c) assert(c) -#else -# define ZEND_ASSERT(c) ZEND_ASSUME(c) -#endif - -/* Only use this macro if you know for sure that all of the switches values - are covered by its case statements */ -#if ZEND_DEBUG -# define EMPTY_SWITCH_DEFAULT_CASE() default: ZEND_ASSERT(0); break; -#else -# define EMPTY_SWITCH_DEFAULT_CASE() default: ZEND_ASSUME(0); break; -#endif - -#if defined(__GNUC__) && __GNUC__ >= 4 -# define ZEND_IGNORE_VALUE(x) (({ __typeof__ (x) __x = (x); (void) __x; })) -#else -# define ZEND_IGNORE_VALUE(x) ((void) (x)) -#endif - -#define zend_quiet_write(...) ZEND_IGNORE_VALUE(write(__VA_ARGS__)) - -/* all HAVE_XXX test have to be after the include of zend_config above */ - -#if defined(HAVE_LIBDL) && !defined(ZEND_WIN32) - -# if __has_feature(address_sanitizer) -# define __SANITIZE_ADDRESS__ -# endif - -# ifndef RTLD_LAZY -# define RTLD_LAZY 1 /* Solaris 1, FreeBSD's (2.1.7.1 and older) */ -# endif - -# ifndef RTLD_GLOBAL -# define RTLD_GLOBAL 0 -# endif - -# ifdef PHP_USE_RTLD_NOW -# define PHP_RTLD_MODE RTLD_NOW -# else -# define PHP_RTLD_MODE RTLD_LAZY -# endif - -# if defined(RTLD_GROUP) && defined(RTLD_WORLD) && defined(RTLD_PARENT) -# define DL_LOAD(libname) dlopen(libname, PHP_RTLD_MODE | RTLD_GLOBAL | RTLD_GROUP | RTLD_WORLD | RTLD_PARENT) -# elif defined(RTLD_DEEPBIND) && !defined(__SANITIZE_ADDRESS__) && !__has_feature(memory_sanitizer) -# define DL_LOAD(libname) dlopen(libname, PHP_RTLD_MODE | RTLD_GLOBAL | RTLD_DEEPBIND) -# else -# define DL_LOAD(libname) dlopen(libname, PHP_RTLD_MODE | RTLD_GLOBAL) -# endif -# define DL_UNLOAD dlclose -# if defined(DLSYM_NEEDS_UNDERSCORE) -# define DL_FETCH_SYMBOL(h,s) dlsym((h), "_" s) -# else -# define DL_FETCH_SYMBOL dlsym -# endif -# define DL_ERROR dlerror -# define DL_HANDLE void * -# define ZEND_EXTENSIONS_SUPPORT 1 -#elif defined(ZEND_WIN32) -# define DL_LOAD(libname) LoadLibrary(libname) -# define DL_FETCH_SYMBOL GetProcAddress -# define DL_UNLOAD FreeLibrary -# define DL_HANDLE HMODULE -# define ZEND_EXTENSIONS_SUPPORT 1 -#else -# define DL_HANDLE void * -# define ZEND_EXTENSIONS_SUPPORT 0 -#endif - -/* AIX requires this to be the first thing in the file. */ -#ifndef __GNUC__ -# ifndef HAVE_ALLOCA_H -# ifdef _AIX -# pragma alloca -# else -# ifndef alloca /* predefined by HP cc +Olibcalls */ -char *alloca(); -# endif -# endif -# endif -#endif - -#if ZEND_GCC_VERSION >= 2096 || __has_attribute(__malloc__) -# define ZEND_ATTRIBUTE_MALLOC __attribute__ ((__malloc__)) -#else -# define ZEND_ATTRIBUTE_MALLOC -#endif - -#if ZEND_GCC_VERSION >= 4003 || __has_attribute(alloc_size) -# define ZEND_ATTRIBUTE_ALLOC_SIZE(X) __attribute__ ((alloc_size(X))) -# define ZEND_ATTRIBUTE_ALLOC_SIZE2(X,Y) __attribute__ ((alloc_size(X,Y))) -#else -# define ZEND_ATTRIBUTE_ALLOC_SIZE(X) -# define ZEND_ATTRIBUTE_ALLOC_SIZE2(X,Y) -#endif - -#if ZEND_GCC_VERSION >= 2007 || __has_attribute(format) -# define ZEND_ATTRIBUTE_FORMAT(type, idx, first) __attribute__ ((format(type, idx, first))) -#else -# define ZEND_ATTRIBUTE_FORMAT(type, idx, first) -#endif - -#if (ZEND_GCC_VERSION >= 3001 && !defined(__INTEL_COMPILER)) || __has_attribute(format) -# define ZEND_ATTRIBUTE_PTR_FORMAT(type, idx, first) __attribute__ ((format(type, idx, first))) -#else -# define ZEND_ATTRIBUTE_PTR_FORMAT(type, idx, first) -#endif - -#if ZEND_GCC_VERSION >= 3001 || __has_attribute(deprecated) -# define ZEND_ATTRIBUTE_DEPRECATED __attribute__((deprecated)) -#elif defined(ZEND_WIN32) -# define ZEND_ATTRIBUTE_DEPRECATED __declspec(deprecated) -#else -# define ZEND_ATTRIBUTE_DEPRECATED -#endif - -#if ZEND_GCC_VERSION >= 4003 || __has_attribute(unused) -# define ZEND_ATTRIBUTE_UNUSED __attribute__((unused)) -#else -# define ZEND_ATTRIBUTE_UNUSED -#endif - -#if defined(__GNUC__) && ZEND_GCC_VERSION >= 4003 -# define ZEND_COLD __attribute__((cold)) -# define ZEND_HOT __attribute__((hot)) -# ifdef __OPTIMIZE__ -# define ZEND_OPT_SIZE __attribute__((optimize("Os"))) -# define ZEND_OPT_SPEED __attribute__((optimize("Ofast"))) -# else -# define ZEND_OPT_SIZE -# define ZEND_OPT_SPEED -# endif -#else -# define ZEND_COLD -# define ZEND_HOT -# define ZEND_OPT_SIZE -# define ZEND_OPT_SPEED -#endif - -#if defined(__GNUC__) && ZEND_GCC_VERSION >= 5000 -# define ZEND_ATTRIBUTE_UNUSED_LABEL __attribute__((cold, unused)); -# define ZEND_ATTRIBUTE_COLD_LABEL __attribute__((cold)); -# define ZEND_ATTRIBUTE_HOT_LABEL __attribute__((hot)); -#else -# define ZEND_ATTRIBUTE_UNUSED_LABEL -# define ZEND_ATTRIBUTE_COLD_LABEL -# define ZEND_ATTRIBUTE_HOT_LABEL -#endif - -#if defined(__GNUC__) && ZEND_GCC_VERSION >= 3004 && defined(__i386__) -# define ZEND_FASTCALL __attribute__((fastcall)) -#elif defined(_MSC_VER) && defined(_M_IX86) && _MSC_VER == 1700 -# define ZEND_FASTCALL __fastcall -#elif defined(_MSC_VER) && _MSC_VER >= 1800 && !defined(__clang__) -# define ZEND_FASTCALL __vectorcall -#else -# define ZEND_FASTCALL -#endif - -#if (defined(__GNUC__) && __GNUC__ >= 3 && !defined(__INTEL_COMPILER) && !defined(DARWIN) && !defined(__hpux) && !defined(_AIX) && !defined(__osf__)) || __has_attribute(noreturn) -# define HAVE_NORETURN -# define ZEND_NORETURN __attribute__((noreturn)) -#elif defined(ZEND_WIN32) -# define HAVE_NORETURN -# define ZEND_NORETURN __declspec(noreturn) -#else -# define ZEND_NORETURN -#endif - -#if (defined(__GNUC__) && __GNUC__ >= 3 && !defined(__INTEL_COMPILER) && !defined(DARWIN) && !defined(__hpux) && !defined(_AIX) && !defined(__osf__)) -# define HAVE_NORETURN_ALIAS -# define HAVE_ATTRIBUTE_WEAK -#endif - -#if ZEND_GCC_VERSION >= 3001 || __has_builtin(__builtin_constant_p) -# define HAVE_BUILTIN_CONSTANT_P -#endif - -#ifdef HAVE_BUILTIN_CONSTANT_P -# define ZEND_CONST_COND(_condition, _default) \ - (__builtin_constant_p(_condition) ? (_condition) : (_default)) -#else -# define ZEND_CONST_COND(_condition, _default) \ - (_default) -#endif - -#if ZEND_DEBUG || defined(ZEND_WIN32_NEVER_INLINE) -# define zend_always_inline inline -# define zend_never_inline -#else -# if defined(__GNUC__) -# if __GNUC__ >= 3 -# define zend_always_inline inline __attribute__((always_inline)) -# define zend_never_inline __attribute__((noinline)) -# else -# define zend_always_inline inline -# define zend_never_inline -# endif -# elif defined(_MSC_VER) -# define zend_always_inline __forceinline -# define zend_never_inline __declspec(noinline) -# else -# if __has_attribute(always_inline) -# define zend_always_inline inline __attribute__((always_inline)) -# else -# define zend_always_inline inline -# endif -# if __has_attribute(noinline) -# define zend_never_inline __attribute__((noinline)) -# else -# define zend_never_inline -# endif -# endif -#endif /* ZEND_DEBUG */ - -#if PHP_HAVE_BUILTIN_EXPECT -# define EXPECTED(condition) __builtin_expect(!!(condition), 1) -# define UNEXPECTED(condition) __builtin_expect(!!(condition), 0) -#else -# define EXPECTED(condition) (condition) -# define UNEXPECTED(condition) (condition) -#endif - -#ifndef XtOffsetOf -# if defined(CRAY) || (defined(__ARMCC_VERSION) && !defined(LINUX)) -# ifdef __STDC__ -# define XtOffset(p_type, field) _Offsetof(p_type, field) -# else -# ifdef CRAY2 -# define XtOffset(p_type, field) \ - (sizeof(int)*((unsigned int)&(((p_type)NULL)->field))) -# else /* !CRAY2 */ -# define XtOffset(p_type, field) ((unsigned int)&(((p_type)NULL)->field)) -# endif /* !CRAY2 */ -# endif /* __STDC__ */ -# else /* ! (CRAY || __arm) */ -# define XtOffset(p_type, field) \ - ((zend_long) (((char *) (&(((p_type)NULL)->field))) - ((char *) NULL))) -# endif /* !CRAY */ - -# ifdef offsetof -# define XtOffsetOf(s_type, field) offsetof(s_type, field) -# else -# define XtOffsetOf(s_type, field) XtOffset(s_type*, field) -# endif - -#endif - -#if (HAVE_ALLOCA || (defined (__GNUC__) && __GNUC__ >= 2)) && !(defined(ZTS) && defined(HPUX)) && !defined(DARWIN) -# define ZEND_ALLOCA_MAX_SIZE (32 * 1024) -# define ALLOCA_FLAG(name) \ - zend_bool name; -# define SET_ALLOCA_FLAG(name) \ - name = 1 -# define do_alloca_ex(size, limit, use_heap) \ - ((use_heap = (UNEXPECTED((size) > (limit)))) ? emalloc(size) : alloca(size)) -# define do_alloca(size, use_heap) \ - do_alloca_ex(size, ZEND_ALLOCA_MAX_SIZE, use_heap) -# define free_alloca(p, use_heap) \ - do { if (UNEXPECTED(use_heap)) efree(p); } while (0) -#else -# define ALLOCA_FLAG(name) -# define SET_ALLOCA_FLAG(name) -# define do_alloca(p, use_heap) emalloc(p) -# define free_alloca(p, use_heap) efree(p) -#endif - -#ifdef HAVE_SIGSETJMP -# define SETJMP(a) sigsetjmp(a, 0) -# define LONGJMP(a,b) siglongjmp(a, b) -# define JMP_BUF sigjmp_buf -#else -# define SETJMP(a) setjmp(a) -# define LONGJMP(a,b) longjmp(a, b) -# define JMP_BUF jmp_buf -#endif - -#if ZEND_DEBUG -# define ZEND_FILE_LINE_D const char *__zend_filename, const uint32_t __zend_lineno -# define ZEND_FILE_LINE_DC , ZEND_FILE_LINE_D -# define ZEND_FILE_LINE_ORIG_D const char *__zend_orig_filename, const uint32_t __zend_orig_lineno -# define ZEND_FILE_LINE_ORIG_DC , ZEND_FILE_LINE_ORIG_D -# define ZEND_FILE_LINE_RELAY_C __zend_filename, __zend_lineno -# define ZEND_FILE_LINE_RELAY_CC , ZEND_FILE_LINE_RELAY_C -# define ZEND_FILE_LINE_C __FILE__, __LINE__ -# define ZEND_FILE_LINE_CC , ZEND_FILE_LINE_C -# define ZEND_FILE_LINE_EMPTY_C NULL, 0 -# define ZEND_FILE_LINE_EMPTY_CC , ZEND_FILE_LINE_EMPTY_C -# define ZEND_FILE_LINE_ORIG_RELAY_C __zend_orig_filename, __zend_orig_lineno -# define ZEND_FILE_LINE_ORIG_RELAY_CC , ZEND_FILE_LINE_ORIG_RELAY_C -#else -# define ZEND_FILE_LINE_D void -# define ZEND_FILE_LINE_DC -# define ZEND_FILE_LINE_ORIG_D void -# define ZEND_FILE_LINE_ORIG_DC -# define ZEND_FILE_LINE_RELAY_C -# define ZEND_FILE_LINE_RELAY_CC -# define ZEND_FILE_LINE_C -# define ZEND_FILE_LINE_CC -# define ZEND_FILE_LINE_EMPTY_C -# define ZEND_FILE_LINE_EMPTY_CC -# define ZEND_FILE_LINE_ORIG_RELAY_C -# define ZEND_FILE_LINE_ORIG_RELAY_CC -#endif /* ZEND_DEBUG */ - -#if ZEND_DEBUG -# define Z_DBG(expr) (expr) -#else -# define Z_DBG(expr) -#endif - -#ifdef ZTS -# define ZTS_V 1 -#else -# define ZTS_V 0 -#endif - -#ifndef LONG_MAX -# define LONG_MAX 2147483647L -#endif - -#ifndef LONG_MIN -# define LONG_MIN (- LONG_MAX - 1) -#endif - -#define MAX_LENGTH_OF_DOUBLE 32 - -#undef MIN -#undef MAX -#define MAX(a, b) (((a)>(b))?(a):(b)) -#define MIN(a, b) (((a)<(b))?(a):(b)) - -#define ZEND_BIT_TEST(bits, bit) \ - (((bits)[(bit) / (sizeof((bits)[0])*8)] >> ((bit) & (sizeof((bits)[0])*8-1))) & 1) - -/* We always define a function, even if there's a macro or expression we could - * alias, so that using it in contexts where we can't make function calls - * won't fail to compile on some machines and not others. - */ -static zend_always_inline double _zend_get_inf(void) /* {{{ */ -{ -#ifdef INFINITY - return INFINITY; -#elif HAVE_HUGE_VAL_INF - return HUGE_VAL; -#elif defined(__i386__) || defined(_X86_) || defined(ALPHA) || defined(_ALPHA) || defined(__alpha) -# define _zend_DOUBLE_INFINITY_HIGH 0x7ff00000 - double val = 0.0; - ((uint32_t*)&val)[1] = _zend_DOUBLE_INFINITY_HIGH; - ((uint32_t*)&val)[0] = 0; - return val; -#elif HAVE_ATOF_ACCEPTS_INF - return atof("INF"); -#else - return 1.0/0.0; -#endif -} /* }}} */ -#define ZEND_INFINITY (_zend_get_inf()) - -static zend_always_inline double _zend_get_nan(void) /* {{{ */ -{ -#ifdef NAN - return NAN; -#elif HAVE_HUGE_VAL_NAN - return HUGE_VAL + -HUGE_VAL; -#elif defined(__i386__) || defined(_X86_) || defined(ALPHA) || defined(_ALPHA) || defined(__alpha) -# define _zend_DOUBLE_QUIET_NAN_HIGH 0xfff80000 - double val = 0.0; - ((uint32_t*)&val)[1] = _zend_DOUBLE_QUIET_NAN_HIGH; - ((uint32_t*)&val)[0] = 0; - return val; -#elif HAVE_ATOF_ACCEPTS_NAN - return atof("NAN"); -#else - return 0.0/0.0; -#endif -} /* }}} */ -#define ZEND_NAN (_zend_get_nan()) - -#define ZEND_STRL(str) (str), (sizeof(str)-1) -#define ZEND_STRS(str) (str), (sizeof(str)) -#define ZEND_NORMALIZE_BOOL(n) \ - ((n) ? (((n)<0) ? -1 : 1) : 0) -#define ZEND_TRUTH(x) ((x) ? 1 : 0) -#define ZEND_LOG_XOR(a, b) (ZEND_TRUTH(a) ^ ZEND_TRUTH(b)) - -#define ZEND_MAX_RESERVED_RESOURCES 6 - -/* excpt.h on Digital Unix 4.0 defines function_table */ -#undef function_table - -#ifdef ZEND_WIN32 -#define ZEND_SECURE_ZERO(var, size) RtlSecureZeroMemory((var), (size)) -#else -#define ZEND_SECURE_ZERO(var, size) explicit_bzero((var), (size)) -#endif - -/* This check should only be used on network socket, not file descriptors */ -#ifdef ZEND_WIN32 -#define ZEND_VALID_SOCKET(sock) (INVALID_SOCKET != (sock)) -#else -#define ZEND_VALID_SOCKET(sock) ((sock) >= 0) -#endif - -/* va_copy() is __va_copy() in old gcc versions. - * According to the autoconf manual, using - * memcpy(&dst, &src, sizeof(va_list)) - * gives maximum portability. */ -#ifndef va_copy -# ifdef __va_copy -# define va_copy(dest, src) __va_copy((dest), (src)) -# else -# define va_copy(dest, src) memcpy(&(dest), &(src), sizeof(va_list)) -# endif -#endif - -/* Intrinsics macros start. */ - -/* Memory sanitizer is incompatible with ifunc resolvers. Even if the resolver - * is marked as no_sanitize("memory") it will still be instrumented and crash. */ -#if __has_feature(memory_sanitizer) || __has_feature(thread_sanitizer) -# undef HAVE_FUNC_ATTRIBUTE_IFUNC -#endif - -#if defined(HAVE_FUNC_ATTRIBUTE_IFUNC) && defined(HAVE_FUNC_ATTRIBUTE_TARGET) -# define ZEND_INTRIN_HAVE_IFUNC_TARGET 1 -#endif - -#if (defined(__i386__) || defined(__x86_64__)) -# if PHP_HAVE_SSSE3_INSTRUCTIONS && defined(HAVE_TMMINTRIN_H) -# define PHP_HAVE_SSSE3 -# endif - -# if PHP_HAVE_SSE4_2_INSTRUCTIONS && defined(HAVE_NMMINTRIN_H) -# define PHP_HAVE_SSE4_2 -# endif - -/* - * AVX2 support was added in gcc 4.7, but AVX2 intrinsics don't work in - * __attribute__((target("avx2"))) functions until gcc 4.9. - */ -# if PHP_HAVE_AVX2_INSTRUCTIONS && defined(HAVE_IMMINTRIN_H) && \ - (defined(__llvm__) || defined(__clang__) || (defined(__GNUC__) && ZEND_GCC_VERSION >= 4009)) -# define PHP_HAVE_AVX2 -# endif -#endif - -#ifdef __SSSE3__ -/* Instructions compiled directly. */ -# define ZEND_INTRIN_SSSE3_NATIVE 1 -#elif (defined(HAVE_FUNC_ATTRIBUTE_TARGET) && defined(PHP_HAVE_SSSE3)) || defined(ZEND_WIN32) -/* Function resolved by ifunc or MINIT. */ -# define ZEND_INTRIN_SSSE3_RESOLVER 1 -#endif - -/* Do not use for conditional declaration of API functions! */ -#if ZEND_INTRIN_SSSE3_RESOLVER && ZEND_INTRIN_HAVE_IFUNC_TARGET -# define ZEND_INTRIN_SSSE3_FUNC_PROTO 1 -#elif ZEND_INTRIN_SSSE3_RESOLVER -# define ZEND_INTRIN_SSSE3_FUNC_PTR 1 -#endif - -#if ZEND_INTRIN_SSSE3_RESOLVER -# if defined(HAVE_FUNC_ATTRIBUTE_TARGET) -# define ZEND_INTRIN_SSSE3_FUNC_DECL(func) ZEND_API func __attribute__((target("ssse3"))) -# else -# define ZEND_INTRIN_SSSE3_FUNC_DECL(func) func -# endif -#else -# define ZEND_INTRIN_SSSE3_FUNC_DECL(func) -#endif - -#ifdef __SSE4_2__ -/* Instructions compiled directly. */ -# define ZEND_INTRIN_SSE4_2_NATIVE 1 -#elif (defined(HAVE_FUNC_ATTRIBUTE_TARGET) && defined(PHP_HAVE_SSE4_2)) || defined(ZEND_WIN32) -/* Function resolved by ifunc or MINIT. */ -# define ZEND_INTRIN_SSE4_2_RESOLVER 1 -#endif - -/* Do not use for conditional declaration of API functions! */ -#if ZEND_INTRIN_SSE4_2_RESOLVER && ZEND_INTRIN_HAVE_IFUNC_TARGET -# define ZEND_INTRIN_SSE4_2_FUNC_PROTO 1 -#elif ZEND_INTRIN_SSE4_2_RESOLVER -# define ZEND_INTRIN_SSE4_2_FUNC_PTR 1 -#endif - -#if ZEND_INTRIN_SSE4_2_RESOLVER -# if defined(HAVE_FUNC_ATTRIBUTE_TARGET) -# define ZEND_INTRIN_SSE4_2_FUNC_DECL(func) ZEND_API func __attribute__((target("sse4.2"))) -# else -# define ZEND_INTRIN_SSE4_2_FUNC_DECL(func) func -# endif -#else -# define ZEND_INTRIN_SSE4_2_FUNC_DECL(func) -#endif - -#ifdef __AVX2__ -# define ZEND_INTRIN_AVX2_NATIVE 1 -#elif (defined(HAVE_FUNC_ATTRIBUTE_TARGET) && defined(PHP_HAVE_AVX2)) || defined(ZEND_WIN32) -# define ZEND_INTRIN_AVX2_RESOLVER 1 -#endif - -/* Do not use for conditional declaration of API functions! */ -#if ZEND_INTRIN_AVX2_RESOLVER && ZEND_INTRIN_HAVE_IFUNC_TARGET -# define ZEND_INTRIN_AVX2_FUNC_PROTO 1 -#elif ZEND_INTRIN_AVX2_RESOLVER -# define ZEND_INTRIN_AVX2_FUNC_PTR 1 -#endif - -#if ZEND_INTRIN_AVX2_RESOLVER -# if defined(HAVE_FUNC_ATTRIBUTE_TARGET) -# define ZEND_INTRIN_AVX2_FUNC_DECL(func) ZEND_API func __attribute__((target("avx2"))) -# else -# define ZEND_INTRIN_AVX2_FUNC_DECL(func) func -# endif -#else -# define ZEND_INTRIN_AVX2_FUNC_DECL(func) -#endif - -/* Intrinsics macros end. */ - -#ifdef ZEND_WIN32 -# define ZEND_SET_ALIGNED(alignment, decl) __declspec(align(alignment)) decl -#elif HAVE_ATTRIBUTE_ALIGNED -# define ZEND_SET_ALIGNED(alignment, decl) decl __attribute__ ((__aligned__ (alignment))) -#else -# define ZEND_SET_ALIGNED(alignment, decl) decl -#endif - -#define ZEND_SLIDE_TO_ALIGNED(alignment, ptr) (((zend_uintptr_t)(ptr) + ((alignment)-1)) & ~((alignment)-1)) -#define ZEND_SLIDE_TO_ALIGNED16(ptr) ZEND_SLIDE_TO_ALIGNED(Z_UL(16), ptr) - -#ifdef ZEND_WIN32 -# define _ZEND_EXPAND_VA(a) a -# define ZEND_EXPAND_VA(code) _ZEND_EXPAND_VA(code) -#else -# define ZEND_EXPAND_VA(code) code -#endif - -/* On CPU with few registers, it's cheaper to reload value then use spill slot */ -#if defined(__i386__) || (defined(_WIN32) && !defined(_WIN64)) -# define ZEND_PREFER_RELOAD -#endif - -#if defined(ZEND_WIN32) && defined(_DEBUG) && defined(PHP_WIN32_DEBUG_HEAP) -# define ZEND_IGNORE_LEAKS_BEGIN() _CrtSetDbgFlag(_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG) & ~_CRTDBG_ALLOC_MEM_DF) -# define ZEND_IGNORE_LEAKS_END() _CrtSetDbgFlag(_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG) | _CRTDBG_ALLOC_MEM_DF) -#else -# define ZEND_IGNORE_LEAKS_BEGIN() -# define ZEND_IGNORE_LEAKS_END() -#endif - -#endif /* ZEND_PORTABILITY_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_ptr_stack.h b/7.4.27/mac/include/php/Zend/zend_ptr_stack.h deleted file mode 100644 index 2298e4f..0000000 --- a/7.4.27/mac/include/php/Zend/zend_ptr_stack.h +++ /dev/null @@ -1,118 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_PTR_STACK_H -#define ZEND_PTR_STACK_H - -typedef struct _zend_ptr_stack { - int top, max; - void **elements; - void **top_element; - zend_bool persistent; -} zend_ptr_stack; - - -#define PTR_STACK_BLOCK_SIZE 64 - -BEGIN_EXTERN_C() -ZEND_API void zend_ptr_stack_init(zend_ptr_stack *stack); -ZEND_API void zend_ptr_stack_init_ex(zend_ptr_stack *stack, zend_bool persistent); -ZEND_API void zend_ptr_stack_n_push(zend_ptr_stack *stack, int count, ...); -ZEND_API void zend_ptr_stack_n_pop(zend_ptr_stack *stack, int count, ...); -ZEND_API void zend_ptr_stack_destroy(zend_ptr_stack *stack); -ZEND_API void zend_ptr_stack_apply(zend_ptr_stack *stack, void (*func)(void *)); -ZEND_API void zend_ptr_stack_reverse_apply(zend_ptr_stack *stack, void (*func)(void *)); -ZEND_API void zend_ptr_stack_clean(zend_ptr_stack *stack, void (*func)(void *), zend_bool free_elements); -ZEND_API int zend_ptr_stack_num_elements(zend_ptr_stack *stack); -END_EXTERN_C() - -#define ZEND_PTR_STACK_RESIZE_IF_NEEDED(stack, count) \ - if (stack->top+count > stack->max) { \ - /* we need to allocate more memory */ \ - do { \ - stack->max += PTR_STACK_BLOCK_SIZE; \ - } while (stack->top+count > stack->max); \ - stack->elements = (void **) perealloc(stack->elements, (sizeof(void *) * (stack->max)), stack->persistent); \ - stack->top_element = stack->elements+stack->top; \ - } - -/* Not doing this with a macro because of the loop unrolling in the element assignment. - Just using a macro for 3 in the body for readability sake. */ -static zend_always_inline void zend_ptr_stack_3_push(zend_ptr_stack *stack, void *a, void *b, void *c) -{ -#define ZEND_PTR_STACK_NUM_ARGS 3 - - ZEND_PTR_STACK_RESIZE_IF_NEEDED(stack, ZEND_PTR_STACK_NUM_ARGS) - - stack->top += ZEND_PTR_STACK_NUM_ARGS; - *(stack->top_element++) = a; - *(stack->top_element++) = b; - *(stack->top_element++) = c; - -#undef ZEND_PTR_STACK_NUM_ARGS -} - -static zend_always_inline void zend_ptr_stack_2_push(zend_ptr_stack *stack, void *a, void *b) -{ -#define ZEND_PTR_STACK_NUM_ARGS 2 - - ZEND_PTR_STACK_RESIZE_IF_NEEDED(stack, ZEND_PTR_STACK_NUM_ARGS) - - stack->top += ZEND_PTR_STACK_NUM_ARGS; - *(stack->top_element++) = a; - *(stack->top_element++) = b; - -#undef ZEND_PTR_STACK_NUM_ARGS -} - -static zend_always_inline void zend_ptr_stack_3_pop(zend_ptr_stack *stack, void **a, void **b, void **c) -{ - *a = *(--stack->top_element); - *b = *(--stack->top_element); - *c = *(--stack->top_element); - stack->top -= 3; -} - -static zend_always_inline void zend_ptr_stack_2_pop(zend_ptr_stack *stack, void **a, void **b) -{ - *a = *(--stack->top_element); - *b = *(--stack->top_element); - stack->top -= 2; -} - -static zend_always_inline void zend_ptr_stack_push(zend_ptr_stack *stack, void *ptr) -{ - ZEND_PTR_STACK_RESIZE_IF_NEEDED(stack, 1) - - stack->top++; - *(stack->top_element++) = ptr; -} - -static zend_always_inline void *zend_ptr_stack_pop(zend_ptr_stack *stack) -{ - stack->top--; - return *(--stack->top_element); -} - -static zend_always_inline void *zend_ptr_stack_top(zend_ptr_stack *stack) -{ - return stack->elements[stack->top - 1]; -} - -#endif /* ZEND_PTR_STACK_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_range_check.h b/7.4.27/mac/include/php/Zend/zend_range_check.h deleted file mode 100644 index 9c82249..0000000 --- a/7.4.27/mac/include/php/Zend/zend_range_check.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Anatol Belski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_RANGE_CHECK_H -#define ZEND_RANGE_CHECK_H - -#include "zend_long.h" - -/* Flag macros for basic range recognition. Notable is that - always sizeof(signed) == sizeof(unsigned), so no need to - overcomplicate things. */ -#if SIZEOF_INT < SIZEOF_ZEND_LONG -# define ZEND_LONG_CAN_OVFL_INT 1 -# define ZEND_LONG_CAN_OVFL_UINT 1 -#endif - -#if SIZEOF_INT < SIZEOF_SIZE_T -/* size_t can always overflow signed int on the same platform. - Furthermore, by the current design, size_t can always - overflow zend_long. */ -# define ZEND_SIZE_T_CAN_OVFL_UINT 1 -#endif - - -/* zend_long vs. (unsigned) int checks. */ -#ifdef ZEND_LONG_CAN_OVFL_INT -# define ZEND_LONG_INT_OVFL(zlong) UNEXPECTED((zlong) > (zend_long)INT_MAX) -# define ZEND_LONG_INT_UDFL(zlong) UNEXPECTED((zlong) < (zend_long)INT_MIN) -# define ZEND_LONG_EXCEEDS_INT(zlong) UNEXPECTED(ZEND_LONG_INT_OVFL(zlong) || ZEND_LONG_INT_UDFL(zlong)) -# define ZEND_LONG_UINT_OVFL(zlong) UNEXPECTED((zlong) < 0 || (zlong) > (zend_long)UINT_MAX) -#else -# define ZEND_LONG_INT_OVFL(zl) (0) -# define ZEND_LONG_INT_UDFL(zl) (0) -# define ZEND_LONG_EXCEEDS_INT(zlong) (0) -# define ZEND_LONG_UINT_OVFL(zl) (0) -#endif - -/* size_t vs (unsigned) int checks. */ -#define ZEND_SIZE_T_INT_OVFL(size) UNEXPECTED((size) > (size_t)INT_MAX) -#ifdef ZEND_SIZE_T_CAN_OVFL_UINT -# define ZEND_SIZE_T_UINT_OVFL(size) UNEXPECTED((size) > (size_t)UINT_MAX) -#else -# define ZEND_SIZE_T_UINT_OVFL(size) (0) -#endif - -/* Comparison zend_long vs size_t */ -#define ZEND_SIZE_T_GT_ZEND_LONG(size, zlong) ((zlong) < 0 || (size) > (size_t)(zlong)) -#define ZEND_SIZE_T_GTE_ZEND_LONG(size, zlong) ((zlong) < 0 || (size) >= (size_t)(zlong)) -#define ZEND_SIZE_T_LT_ZEND_LONG(size, zlong) ((zlong) >= 0 && (size) < (size_t)(zlong)) -#define ZEND_SIZE_T_LTE_ZEND_LONG(size, zlong) ((zlong) >= 0 && (size) <= (size_t)(zlong)) - -#endif /* ZEND_RANGE_CHECK_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_signal.h b/7.4.27/mac/include/php/Zend/zend_signal.h deleted file mode 100644 index 0bb191d..0000000 --- a/7.4.27/mac/include/php/Zend/zend_signal.h +++ /dev/null @@ -1,112 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Signal Handling | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Lucas Nealan | - | Arnaud Le Blanc | - +----------------------------------------------------------------------+ - - */ - -#ifndef ZEND_SIGNAL_H -#define ZEND_SIGNAL_H - -#ifdef ZEND_SIGNALS - -#include - -#ifndef NSIG -#define NSIG 65 -#endif - -#ifndef ZEND_SIGNAL_QUEUE_SIZE -#define ZEND_SIGNAL_QUEUE_SIZE 64 -#endif - -/* Signal structs */ -typedef struct _zend_signal_entry_t { - int flags; /* sigaction style flags */ - void* handler; /* signal handler or context */ -} zend_signal_entry_t; - -typedef struct _zend_signal_t { - int signo; - siginfo_t *siginfo; - void* context; -} zend_signal_t; - -typedef struct _zend_signal_queue_t { - zend_signal_t zend_signal; - struct _zend_signal_queue_t *next; -} zend_signal_queue_t; - -/* Signal Globals */ -typedef struct _zend_signal_globals_t { - int depth; - int blocked; /* 1==TRUE, 0==FALSE */ - int running; /* in signal handler execution */ - int active; /* internal signal handling is enabled */ - zend_bool check; /* check for replaced handlers on shutdown */ - zend_bool reset; /* reset signal handlers on each request */ - zend_signal_entry_t handlers[NSIG]; - zend_signal_queue_t pstorage[ZEND_SIGNAL_QUEUE_SIZE], *phead, *ptail, *pavail; /* pending queue */ -} zend_signal_globals_t; - -# ifdef ZTS -# define SIGG(v) ZEND_TSRMG_FAST(zend_signal_globals_offset, zend_signal_globals_t *, v) -BEGIN_EXTERN_C() -ZEND_API extern int zend_signal_globals_id; -ZEND_API extern size_t zend_signal_globals_offset; -END_EXTERN_C() -# else -# define SIGG(v) (zend_signal_globals.v) -BEGIN_EXTERN_C() -ZEND_API extern zend_signal_globals_t zend_signal_globals; -END_EXTERN_C() -# endif /* not ZTS */ - -# ifdef ZTS -# define ZEND_SIGNAL_BLOCK_INTERRUPTIONS() if (EXPECTED(zend_signal_globals_id)) { SIGG(depth)++; } -# define ZEND_SIGNAL_UNBLOCK_INTERRUPTIONS() if (EXPECTED(zend_signal_globals_id) && UNEXPECTED(((SIGG(depth)--) == SIGG(blocked)))) { zend_signal_handler_unblock(); } -# else /* ZTS */ -# define ZEND_SIGNAL_BLOCK_INTERRUPTIONS() SIGG(depth)++; -# define ZEND_SIGNAL_UNBLOCK_INTERRUPTIONS() if (((SIGG(depth)--) == SIGG(blocked))) { zend_signal_handler_unblock(); } -# endif /* not ZTS */ - -ZEND_API void zend_signal_handler_unblock(void); -void zend_signal_activate(void); -void zend_signal_deactivate(void); -BEGIN_EXTERN_C() -ZEND_API void zend_signal_startup(void); -END_EXTERN_C() -void zend_signal_init(void); - -ZEND_API int zend_signal(int signo, void (*handler)(int)); -ZEND_API int zend_sigaction(int signo, const struct sigaction *act, struct sigaction *oldact); - -#else /* ZEND_SIGNALS */ - -# define ZEND_SIGNAL_BLOCK_INTERRUPTIONS() -# define ZEND_SIGNAL_UNBLOCK_INTERRUPTIONS() - -# define zend_signal_activate() -# define zend_signal_deactivate() -# define zend_signal_startup() -# define zend_signal_init() - -# define zend_signal(signo, handler) signal(signo, handler) -# define zend_sigaction(signo, act, oldact) sigaction(signo, act, oldact) - -#endif /* ZEND_SIGNALS */ - -#endif /* ZEND_SIGNAL_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_smart_str.h b/7.4.27/mac/include/php/Zend/zend_smart_str.h deleted file mode 100644 index 2dab1f8..0000000 --- a/7.4.27/mac/include/php/Zend/zend_smart_str.h +++ /dev/null @@ -1,152 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - +----------------------------------------------------------------------+ - */ - -#ifndef ZEND_SMART_STR_H -#define ZEND_SMART_STR_H - -#include -#include "zend_globals.h" -#include "zend_smart_str_public.h" - -#define smart_str_appends_ex(dest, src, what) \ - smart_str_appendl_ex((dest), (src), strlen(src), (what)) -#define smart_str_appends(dest, src) \ - smart_str_appendl((dest), (src), strlen(src)) -#define smart_str_extend(dest, len) \ - smart_str_extend_ex((dest), (len), 0) -#define smart_str_appendc(dest, c) \ - smart_str_appendc_ex((dest), (c), 0) -#define smart_str_appendl(dest, src, len) \ - smart_str_appendl_ex((dest), (src), (len), 0) -#define smart_str_append(dest, src) \ - smart_str_append_ex((dest), (src), 0) -#define smart_str_append_smart_str(dest, src) \ - smart_str_append_smart_str_ex((dest), (src), 0) -#define smart_str_sets(dest, src) \ - smart_str_setl((dest), (src), strlen(src)); -#define smart_str_append_long(dest, val) \ - smart_str_append_long_ex((dest), (val), 0) -#define smart_str_append_unsigned(dest, val) \ - smart_str_append_unsigned_ex((dest), (val), 0) -#define smart_str_free(dest) \ - smart_str_free_ex((dest), 0) - -BEGIN_EXTERN_C() - -ZEND_API void ZEND_FASTCALL smart_str_erealloc(smart_str *str, size_t len); -ZEND_API void ZEND_FASTCALL smart_str_realloc(smart_str *str, size_t len); -ZEND_API void ZEND_FASTCALL smart_str_append_escaped(smart_str *str, const char *s, size_t l); -ZEND_API void smart_str_append_printf(smart_str *dest, const char *format, ...) - ZEND_ATTRIBUTE_FORMAT(printf, 2, 3); - -END_EXTERN_C() - -static zend_always_inline size_t smart_str_alloc(smart_str *str, size_t len, zend_bool persistent) { - if (UNEXPECTED(!str->s)) { - goto do_smart_str_realloc; - } else { - len += ZSTR_LEN(str->s); - if (UNEXPECTED(len >= str->a)) { -do_smart_str_realloc: - if (persistent) { - smart_str_realloc(str, len); - } else { - smart_str_erealloc(str, len); - } - } - } - return len; -} - -static zend_always_inline char* smart_str_extend_ex(smart_str *dest, size_t len, zend_bool persistent) { - size_t new_len = smart_str_alloc(dest, len, persistent); - char *ret = ZSTR_VAL(dest->s) + ZSTR_LEN(dest->s); - ZSTR_LEN(dest->s) = new_len; - return ret; -} - -static zend_always_inline void smart_str_free_ex(smart_str *str, zend_bool persistent) { - if (str->s) { - zend_string_release_ex(str->s, persistent); - str->s = NULL; - } - str->a = 0; -} - -static zend_always_inline void smart_str_0(smart_str *str) { - if (str->s) { - ZSTR_VAL(str->s)[ZSTR_LEN(str->s)] = '\0'; - } -} - -static zend_always_inline size_t smart_str_get_len(smart_str *str) { - return str->s ? ZSTR_LEN(str->s) : 0; -} - -static zend_always_inline zend_string *smart_str_extract(smart_str *str) { - if (str->s) { - zend_string *res; - smart_str_0(str); - res = str->s; - str->s = NULL; - return res; - } else { - return ZSTR_EMPTY_ALLOC(); - } -} - -static zend_always_inline void smart_str_appendc_ex(smart_str *dest, char ch, zend_bool persistent) { - size_t new_len = smart_str_alloc(dest, 1, persistent); - ZSTR_VAL(dest->s)[new_len - 1] = ch; - ZSTR_LEN(dest->s) = new_len; -} - -static zend_always_inline void smart_str_appendl_ex(smart_str *dest, const char *str, size_t len, zend_bool persistent) { - size_t new_len = smart_str_alloc(dest, len, persistent); - memcpy(ZSTR_VAL(dest->s) + ZSTR_LEN(dest->s), str, len); - ZSTR_LEN(dest->s) = new_len; -} - -static zend_always_inline void smart_str_append_ex(smart_str *dest, const zend_string *src, zend_bool persistent) { - smart_str_appendl_ex(dest, ZSTR_VAL(src), ZSTR_LEN(src), persistent); -} - -static zend_always_inline void smart_str_append_smart_str_ex(smart_str *dest, const smart_str *src, zend_bool persistent) { - if (src->s && ZSTR_LEN(src->s)) { - smart_str_append_ex(dest, src->s, persistent); - } -} - -static zend_always_inline void smart_str_append_long_ex(smart_str *dest, zend_long num, zend_bool persistent) { - char buf[32]; - char *result = zend_print_long_to_buf(buf + sizeof(buf) - 1, num); - smart_str_appendl_ex(dest, result, buf + sizeof(buf) - 1 - result, persistent); -} - -static zend_always_inline void smart_str_append_unsigned_ex(smart_str *dest, zend_ulong num, zend_bool persistent) { - char buf[32]; - char *result = zend_print_ulong_to_buf(buf + sizeof(buf) - 1, num); - smart_str_appendl_ex(dest, result, buf + sizeof(buf) - 1 - result, persistent); -} - -static zend_always_inline void smart_str_setl(smart_str *dest, const char *src, size_t len) { - smart_str_free(dest); - smart_str_appendl(dest, src, len); -} - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_smart_str_public.h b/7.4.27/mac/include/php/Zend/zend_smart_str_public.h deleted file mode 100644 index ba0b399..0000000 --- a/7.4.27/mac/include/php/Zend/zend_smart_str_public.h +++ /dev/null @@ -1,27 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - +----------------------------------------------------------------------+ - */ - -#ifndef ZEND_SMART_STR_PUBLIC_H -#define ZEND_SMART_STR_PUBLIC_H - -typedef struct { - zend_string *s; - size_t a; -} smart_str; - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_smart_string.h b/7.4.27/mac/include/php/Zend/zend_smart_string.h deleted file mode 100644 index 4580e43..0000000 --- a/7.4.27/mac/include/php/Zend/zend_smart_string.h +++ /dev/null @@ -1,115 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - | Xinchen Hui | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_SMART_STRING_H -#define PHP_SMART_STRING_H - -#include "zend_smart_string_public.h" - -#include -#include - -/* wrapper */ - -#define smart_string_appends_ex(str, src, what) \ - smart_string_appendl_ex((str), (src), strlen(src), (what)) -#define smart_string_appends(str, src) \ - smart_string_appendl((str), (src), strlen(src)) -#define smart_string_append_ex(str, src, what) \ - smart_string_appendl_ex((str), ((smart_string *)(src))->c, \ - ((smart_string *)(src))->len, (what)); -#define smart_string_sets(str, src) \ - smart_string_setl((str), (src), strlen(src)); - -#define smart_string_appendc(str, c) \ - smart_string_appendc_ex((str), (c), 0) -#define smart_string_free(s) \ - smart_string_free_ex((s), 0) -#define smart_string_appendl(str, src, len) \ - smart_string_appendl_ex((str), (src), (len), 0) -#define smart_string_append(str, src) \ - smart_string_append_ex((str), (src), 0) -#define smart_string_append_long(str, val) \ - smart_string_append_long_ex((str), (val), 0) -#define smart_string_append_unsigned(str, val) \ - smart_string_append_unsigned_ex((str), (val), 0) - -ZEND_API void ZEND_FASTCALL _smart_string_alloc_persistent(smart_string *str, size_t len); -ZEND_API void ZEND_FASTCALL _smart_string_alloc(smart_string *str, size_t len); - -static zend_always_inline size_t smart_string_alloc(smart_string *str, size_t len, zend_bool persistent) { - if (UNEXPECTED(!str->c) || UNEXPECTED(len >= str->a - str->len)) { - if (persistent) { - _smart_string_alloc_persistent(str, len); - } else { - _smart_string_alloc(str, len); - } - } - return str->len + len; -} - -static zend_always_inline void smart_string_free_ex(smart_string *str, zend_bool persistent) { - if (str->c) { - pefree(str->c, persistent); - str->c = NULL; - } - str->a = str->len = 0; -} - -static zend_always_inline void smart_string_0(smart_string *str) { - if (str->c) { - str->c[str->len] = '\0'; - } -} - -static zend_always_inline void smart_string_appendc_ex(smart_string *dest, char ch, zend_bool persistent) { - dest->len = smart_string_alloc(dest, 1, persistent); - dest->c[dest->len - 1] = ch; -} - -static zend_always_inline void smart_string_appendl_ex(smart_string *dest, const char *str, size_t len, zend_bool persistent) { - size_t new_len = smart_string_alloc(dest, len, persistent); - memcpy(dest->c + dest->len, str, len); - dest->len = new_len; - -} - -static zend_always_inline void smart_string_append_long_ex(smart_string *dest, zend_long num, zend_bool persistent) { - char buf[32]; - char *result = zend_print_long_to_buf(buf + sizeof(buf) - 1, num); - smart_string_appendl_ex(dest, result, buf + sizeof(buf) - 1 - result, persistent); -} - -static zend_always_inline void smart_string_append_unsigned_ex(smart_string *dest, zend_ulong num, zend_bool persistent) { - char buf[32]; - char *result = zend_print_ulong_to_buf(buf + sizeof(buf) - 1, num); - smart_string_appendl_ex(dest, result, buf + sizeof(buf) - 1 - result, persistent); -} - -static zend_always_inline void smart_string_setl(smart_string *dest, char *src, size_t len) { - dest->len = len; - dest->a = len + 1; - dest->c = src; -} - -static zend_always_inline void smart_string_reset(smart_string *str) { - str->len = 0; -} - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_smart_string_public.h b/7.4.27/mac/include/php/Zend/zend_smart_string_public.h deleted file mode 100644 index e39d67c..0000000 --- a/7.4.27/mac/include/php/Zend/zend_smart_string_public.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - | Xinchen Hui | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_SMART_STRING_PUBLIC_H -#define PHP_SMART_STRING_PUBLIC_H - -#include - -typedef struct { - char *c; - size_t len; - size_t a; -} smart_string; - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_sort.h b/7.4.27/mac/include/php/Zend/zend_sort.h deleted file mode 100644 index e2ef938..0000000 --- a/7.4.27/mac/include/php/Zend/zend_sort.h +++ /dev/null @@ -1,29 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Xinchen Hui | - | Sterling Hughes | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_SORT_H -#define ZEND_SORT_H - -BEGIN_EXTERN_C() -ZEND_API void zend_qsort(void *base, size_t nmemb, size_t siz, compare_func_t cmp, swap_func_t swp); -ZEND_API void zend_sort(void *base, size_t nmemb, size_t siz, compare_func_t cmp, swap_func_t swp); -ZEND_API void zend_insert_sort(void *base, size_t nmemb, size_t siz, compare_func_t cmp, swap_func_t swp); -END_EXTERN_C() - -#endif /* ZEND_SORT_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_stack.h b/7.4.27/mac/include/php/Zend/zend_stack.h deleted file mode 100644 index 912850a..0000000 --- a/7.4.27/mac/include/php/Zend/zend_stack.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_STACK_H -#define ZEND_STACK_H - -typedef struct _zend_stack { - int size, top, max; - void *elements; -} zend_stack; - - -#define STACK_BLOCK_SIZE 16 - -BEGIN_EXTERN_C() -ZEND_API int zend_stack_init(zend_stack *stack, int size); -ZEND_API int zend_stack_push(zend_stack *stack, const void *element); -ZEND_API void *zend_stack_top(const zend_stack *stack); -ZEND_API int zend_stack_del_top(zend_stack *stack); -ZEND_API int zend_stack_int_top(const zend_stack *stack); -ZEND_API int zend_stack_is_empty(const zend_stack *stack); -ZEND_API int zend_stack_destroy(zend_stack *stack); -ZEND_API void *zend_stack_base(const zend_stack *stack); -ZEND_API int zend_stack_count(const zend_stack *stack); -ZEND_API void zend_stack_apply(zend_stack *stack, int type, int (*apply_function)(void *element)); -ZEND_API void zend_stack_apply_with_argument(zend_stack *stack, int type, int (*apply_function)(void *element, void *arg), void *arg); -ZEND_API void zend_stack_clean(zend_stack *stack, void (*func)(void *), zend_bool free_elements); -END_EXTERN_C() - -#define ZEND_STACK_APPLY_TOPDOWN 1 -#define ZEND_STACK_APPLY_BOTTOMUP 2 - -#endif /* ZEND_STACK_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_stream.h b/7.4.27/mac/include/php/Zend/zend_stream.h deleted file mode 100644 index 51651ad..0000000 --- a/7.4.27/mac/include/php/Zend/zend_stream.h +++ /dev/null @@ -1,98 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Wez Furlong | - | Scott MacVicar | - | Nuno Lopes | - | Marcus Boerger | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_STREAM_H -#define ZEND_STREAM_H - -#include -#include - -/* Lightweight stream implementation for the ZE scanners. - * These functions are private to the engine. - * */ -typedef size_t (*zend_stream_fsizer_t)(void* handle); -typedef ssize_t (*zend_stream_reader_t)(void* handle, char *buf, size_t len); -typedef void (*zend_stream_closer_t)(void* handle); - -#define ZEND_MMAP_AHEAD 32 - -typedef enum { - ZEND_HANDLE_FILENAME, - ZEND_HANDLE_FP, - ZEND_HANDLE_STREAM -} zend_stream_type; - -typedef struct _zend_stream { - void *handle; - int isatty; - zend_stream_reader_t reader; - zend_stream_fsizer_t fsizer; - zend_stream_closer_t closer; -} zend_stream; - -typedef struct _zend_file_handle { - union { - FILE *fp; - zend_stream stream; - } handle; - const char *filename; - zend_string *opened_path; - zend_stream_type type; - /* free_filename is used by wincache */ - /* TODO: Clean up filename vs opened_path mess */ - zend_bool free_filename; - char *buf; - size_t len; -} zend_file_handle; - -BEGIN_EXTERN_C() -ZEND_API void zend_stream_init_fp(zend_file_handle *handle, FILE *fp, const char *filename); -ZEND_API void zend_stream_init_filename(zend_file_handle *handle, const char *filename); -ZEND_API int zend_stream_open(const char *filename, zend_file_handle *handle); -ZEND_API int zend_stream_fixup(zend_file_handle *file_handle, char **buf, size_t *len); -ZEND_API void zend_file_handle_dtor(zend_file_handle *fh); -ZEND_API int zend_compare_file_handles(zend_file_handle *fh1, zend_file_handle *fh2); -END_EXTERN_C() - -#ifdef ZEND_WIN32 -# include "win32/ioutil.h" -typedef php_win32_ioutil_stat_t zend_stat_t; -#ifdef _WIN64 -# define zend_fseek _fseeki64 -# define zend_ftell _ftelli64 -# define zend_lseek _lseeki64 -# else -# define zend_fseek fseek -# define zend_ftell ftell -# define zend_lseek lseek -# endif -# define zend_fstat php_win32_ioutil_fstat -# define zend_stat php_win32_ioutil_stat -#else -typedef struct stat zend_stat_t; -# define zend_fseek fseek -# define zend_ftell ftell -# define zend_lseek lseek -# define zend_fstat fstat -# define zend_stat stat -#endif - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_string.h b/7.4.27/mac/include/php/Zend/zend_string.h deleted file mode 100644 index ff6ada3..0000000 --- a/7.4.27/mac/include/php/Zend/zend_string.h +++ /dev/null @@ -1,526 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_STRING_H -#define ZEND_STRING_H - -#include "zend.h" - -BEGIN_EXTERN_C() - -typedef void (*zend_string_copy_storage_func_t)(void); -typedef zend_string *(ZEND_FASTCALL *zend_new_interned_string_func_t)(zend_string *str); -typedef zend_string *(ZEND_FASTCALL *zend_string_init_interned_func_t)(const char *str, size_t size, int permanent); - -ZEND_API extern zend_new_interned_string_func_t zend_new_interned_string; -ZEND_API extern zend_string_init_interned_func_t zend_string_init_interned; - -ZEND_API zend_ulong ZEND_FASTCALL zend_string_hash_func(zend_string *str); -ZEND_API zend_ulong ZEND_FASTCALL zend_hash_func(const char *str, size_t len); -ZEND_API zend_string* ZEND_FASTCALL zend_interned_string_find_permanent(zend_string *str); - -ZEND_API void zend_interned_strings_init(void); -ZEND_API void zend_interned_strings_dtor(void); -ZEND_API void zend_interned_strings_activate(void); -ZEND_API void zend_interned_strings_deactivate(void); -ZEND_API void zend_interned_strings_set_request_storage_handlers(zend_new_interned_string_func_t handler, zend_string_init_interned_func_t init_handler); -ZEND_API void zend_interned_strings_switch_storage(zend_bool request); - -ZEND_API extern zend_string *zend_empty_string; -ZEND_API extern zend_string *zend_one_char_string[256]; -ZEND_API extern zend_string **zend_known_strings; - -END_EXTERN_C() - -/* Shortcuts */ - -#define ZSTR_VAL(zstr) (zstr)->val -#define ZSTR_LEN(zstr) (zstr)->len -#define ZSTR_H(zstr) (zstr)->h -#define ZSTR_HASH(zstr) zend_string_hash_val(zstr) - -/* Compatibility macros */ - -#define IS_INTERNED(s) ZSTR_IS_INTERNED(s) -#define STR_EMPTY_ALLOC() ZSTR_EMPTY_ALLOC() -#define _STR_HEADER_SIZE _ZSTR_HEADER_SIZE -#define STR_ALLOCA_ALLOC(str, _len, use_heap) ZSTR_ALLOCA_ALLOC(str, _len, use_heap) -#define STR_ALLOCA_INIT(str, s, len, use_heap) ZSTR_ALLOCA_INIT(str, s, len, use_heap) -#define STR_ALLOCA_FREE(str, use_heap) ZSTR_ALLOCA_FREE(str, use_heap) - -/*---*/ - -#define ZSTR_IS_INTERNED(s) (GC_FLAGS(s) & IS_STR_INTERNED) - -#define ZSTR_EMPTY_ALLOC() zend_empty_string -#define ZSTR_CHAR(c) zend_one_char_string[c] -#define ZSTR_KNOWN(idx) zend_known_strings[idx] - -#define _ZSTR_HEADER_SIZE XtOffsetOf(zend_string, val) - -#define _ZSTR_STRUCT_SIZE(len) (_ZSTR_HEADER_SIZE + len + 1) - -#define ZSTR_MAX_OVERHEAD (ZEND_MM_ALIGNED_SIZE(_ZSTR_HEADER_SIZE + 1)) -#define ZSTR_MAX_LEN (SIZE_MAX - ZSTR_MAX_OVERHEAD) - -#define ZSTR_ALLOCA_ALLOC(str, _len, use_heap) do { \ - (str) = (zend_string *)do_alloca(ZEND_MM_ALIGNED_SIZE_EX(_ZSTR_STRUCT_SIZE(_len), 8), (use_heap)); \ - GC_SET_REFCOUNT(str, 1); \ - GC_TYPE_INFO(str) = IS_STRING; \ - ZSTR_H(str) = 0; \ - ZSTR_LEN(str) = _len; \ -} while (0) - -#define ZSTR_ALLOCA_INIT(str, s, len, use_heap) do { \ - ZSTR_ALLOCA_ALLOC(str, len, use_heap); \ - memcpy(ZSTR_VAL(str), (s), (len)); \ - ZSTR_VAL(str)[(len)] = '\0'; \ -} while (0) - -#define ZSTR_ALLOCA_FREE(str, use_heap) free_alloca(str, use_heap) - -/*---*/ - -static zend_always_inline zend_ulong zend_string_hash_val(zend_string *s) -{ - return ZSTR_H(s) ? ZSTR_H(s) : zend_string_hash_func(s); -} - -static zend_always_inline void zend_string_forget_hash_val(zend_string *s) -{ - ZSTR_H(s) = 0; - GC_DEL_FLAGS(s, IS_STR_VALID_UTF8); -} - -static zend_always_inline uint32_t zend_string_refcount(const zend_string *s) -{ - if (!ZSTR_IS_INTERNED(s)) { - return GC_REFCOUNT(s); - } - return 1; -} - -static zend_always_inline uint32_t zend_string_addref(zend_string *s) -{ - if (!ZSTR_IS_INTERNED(s)) { - return GC_ADDREF(s); - } - return 1; -} - -static zend_always_inline uint32_t zend_string_delref(zend_string *s) -{ - if (!ZSTR_IS_INTERNED(s)) { - return GC_DELREF(s); - } - return 1; -} - -static zend_always_inline zend_string *zend_string_alloc(size_t len, int persistent) -{ - zend_string *ret = (zend_string *)pemalloc(ZEND_MM_ALIGNED_SIZE(_ZSTR_STRUCT_SIZE(len)), persistent); - - GC_SET_REFCOUNT(ret, 1); - GC_TYPE_INFO(ret) = IS_STRING | ((persistent ? IS_STR_PERSISTENT : 0) << GC_FLAGS_SHIFT); - ZSTR_H(ret) = 0; - ZSTR_LEN(ret) = len; - return ret; -} - -static zend_always_inline zend_string *zend_string_safe_alloc(size_t n, size_t m, size_t l, int persistent) -{ - zend_string *ret = (zend_string *)safe_pemalloc(n, m, ZEND_MM_ALIGNED_SIZE(_ZSTR_STRUCT_SIZE(l)), persistent); - - GC_SET_REFCOUNT(ret, 1); - GC_TYPE_INFO(ret) = IS_STRING | ((persistent ? IS_STR_PERSISTENT : 0) << GC_FLAGS_SHIFT); - ZSTR_H(ret) = 0; - ZSTR_LEN(ret) = (n * m) + l; - return ret; -} - -static zend_always_inline zend_string *zend_string_init(const char *str, size_t len, int persistent) -{ - zend_string *ret = zend_string_alloc(len, persistent); - - memcpy(ZSTR_VAL(ret), str, len); - ZSTR_VAL(ret)[len] = '\0'; - return ret; -} - -static zend_always_inline zend_string *zend_string_copy(zend_string *s) -{ - if (!ZSTR_IS_INTERNED(s)) { - GC_ADDREF(s); - } - return s; -} - -static zend_always_inline zend_string *zend_string_dup(zend_string *s, int persistent) -{ - if (ZSTR_IS_INTERNED(s)) { - return s; - } else { - return zend_string_init(ZSTR_VAL(s), ZSTR_LEN(s), persistent); - } -} - -static zend_always_inline zend_string *zend_string_realloc(zend_string *s, size_t len, int persistent) -{ - zend_string *ret; - - if (!ZSTR_IS_INTERNED(s)) { - if (EXPECTED(GC_REFCOUNT(s) == 1)) { - ret = (zend_string *)perealloc(s, ZEND_MM_ALIGNED_SIZE(_ZSTR_STRUCT_SIZE(len)), persistent); - ZSTR_LEN(ret) = len; - zend_string_forget_hash_val(ret); - return ret; - } - } - ret = zend_string_alloc(len, persistent); - memcpy(ZSTR_VAL(ret), ZSTR_VAL(s), MIN(len, ZSTR_LEN(s)) + 1); - if (!ZSTR_IS_INTERNED(s)) { - GC_DELREF(s); - } - return ret; -} - -static zend_always_inline zend_string *zend_string_extend(zend_string *s, size_t len, int persistent) -{ - zend_string *ret; - - ZEND_ASSERT(len >= ZSTR_LEN(s)); - if (!ZSTR_IS_INTERNED(s)) { - if (EXPECTED(GC_REFCOUNT(s) == 1)) { - ret = (zend_string *)perealloc(s, ZEND_MM_ALIGNED_SIZE(_ZSTR_STRUCT_SIZE(len)), persistent); - ZSTR_LEN(ret) = len; - zend_string_forget_hash_val(ret); - return ret; - } - } - ret = zend_string_alloc(len, persistent); - memcpy(ZSTR_VAL(ret), ZSTR_VAL(s), ZSTR_LEN(s) + 1); - if (!ZSTR_IS_INTERNED(s)) { - GC_DELREF(s); - } - return ret; -} - -static zend_always_inline zend_string *zend_string_truncate(zend_string *s, size_t len, int persistent) -{ - zend_string *ret; - - ZEND_ASSERT(len <= ZSTR_LEN(s)); - if (!ZSTR_IS_INTERNED(s)) { - if (EXPECTED(GC_REFCOUNT(s) == 1)) { - ret = (zend_string *)perealloc(s, ZEND_MM_ALIGNED_SIZE(_ZSTR_STRUCT_SIZE(len)), persistent); - ZSTR_LEN(ret) = len; - zend_string_forget_hash_val(ret); - return ret; - } - } - ret = zend_string_alloc(len, persistent); - memcpy(ZSTR_VAL(ret), ZSTR_VAL(s), len + 1); - if (!ZSTR_IS_INTERNED(s)) { - GC_DELREF(s); - } - return ret; -} - -static zend_always_inline zend_string *zend_string_safe_realloc(zend_string *s, size_t n, size_t m, size_t l, int persistent) -{ - zend_string *ret; - - if (!ZSTR_IS_INTERNED(s)) { - if (GC_REFCOUNT(s) == 1) { - ret = (zend_string *)safe_perealloc(s, n, m, ZEND_MM_ALIGNED_SIZE(_ZSTR_STRUCT_SIZE(l)), persistent); - ZSTR_LEN(ret) = (n * m) + l; - zend_string_forget_hash_val(ret); - return ret; - } - } - ret = zend_string_safe_alloc(n, m, l, persistent); - memcpy(ZSTR_VAL(ret), ZSTR_VAL(s), MIN((n * m) + l, ZSTR_LEN(s)) + 1); - if (!ZSTR_IS_INTERNED(s)) { - GC_DELREF(s); - } - return ret; -} - -static zend_always_inline void zend_string_free(zend_string *s) -{ - if (!ZSTR_IS_INTERNED(s)) { - ZEND_ASSERT(GC_REFCOUNT(s) <= 1); - pefree(s, GC_FLAGS(s) & IS_STR_PERSISTENT); - } -} - -static zend_always_inline void zend_string_efree(zend_string *s) -{ - ZEND_ASSERT(!ZSTR_IS_INTERNED(s)); - ZEND_ASSERT(GC_REFCOUNT(s) <= 1); - ZEND_ASSERT(!(GC_FLAGS(s) & IS_STR_PERSISTENT)); - efree(s); -} - -static zend_always_inline void zend_string_release(zend_string *s) -{ - if (!ZSTR_IS_INTERNED(s)) { - if (GC_DELREF(s) == 0) { - pefree(s, GC_FLAGS(s) & IS_STR_PERSISTENT); - } - } -} - -static zend_always_inline void zend_string_release_ex(zend_string *s, int persistent) -{ - if (!ZSTR_IS_INTERNED(s)) { - if (GC_DELREF(s) == 0) { - if (persistent) { - ZEND_ASSERT(GC_FLAGS(s) & IS_STR_PERSISTENT); - free(s); - } else { - ZEND_ASSERT(!(GC_FLAGS(s) & IS_STR_PERSISTENT)); - efree(s); - } - } - } -} - -#if defined(__GNUC__) && (defined(__i386__) || (defined(__x86_64__) && !defined(__ILP32__))) -BEGIN_EXTERN_C() -ZEND_API zend_bool ZEND_FASTCALL zend_string_equal_val(zend_string *s1, zend_string *s2); -END_EXTERN_C() -#else -static zend_always_inline zend_bool zend_string_equal_val(zend_string *s1, zend_string *s2) -{ - return !memcmp(ZSTR_VAL(s1), ZSTR_VAL(s2), ZSTR_LEN(s1)); -} -#endif - -static zend_always_inline zend_bool zend_string_equal_content(zend_string *s1, zend_string *s2) -{ - return ZSTR_LEN(s1) == ZSTR_LEN(s2) && zend_string_equal_val(s1, s2); -} - -static zend_always_inline zend_bool zend_string_equals(zend_string *s1, zend_string *s2) -{ - return s1 == s2 || zend_string_equal_content(s1, s2); -} - -#define zend_string_equals_ci(s1, s2) \ - (ZSTR_LEN(s1) == ZSTR_LEN(s2) && !zend_binary_strcasecmp(ZSTR_VAL(s1), ZSTR_LEN(s1), ZSTR_VAL(s2), ZSTR_LEN(s2))) - -#define zend_string_equals_literal_ci(str, c) \ - (ZSTR_LEN(str) == sizeof(c) - 1 && !zend_binary_strcasecmp(ZSTR_VAL(str), ZSTR_LEN(str), (c), sizeof(c) - 1)) - -#define zend_string_equals_literal(str, literal) \ - (ZSTR_LEN(str) == sizeof(literal)-1 && !memcmp(ZSTR_VAL(str), literal, sizeof(literal) - 1)) - -/* - * DJBX33A (Daniel J. Bernstein, Times 33 with Addition) - * - * This is Daniel J. Bernstein's popular `times 33' hash function as - * posted by him years ago on comp.lang.c. It basically uses a function - * like ``hash(i) = hash(i-1) * 33 + str[i]''. This is one of the best - * known hash functions for strings. Because it is both computed very - * fast and distributes very well. - * - * The magic of number 33, i.e. why it works better than many other - * constants, prime or not, has never been adequately explained by - * anyone. So I try an explanation: if one experimentally tests all - * multipliers between 1 and 256 (as RSE did now) one detects that even - * numbers are not usable at all. The remaining 128 odd numbers - * (except for the number 1) work more or less all equally well. They - * all distribute in an acceptable way and this way fill a hash table - * with an average percent of approx. 86%. - * - * If one compares the Chi^2 values of the variants, the number 33 not - * even has the best value. But the number 33 and a few other equally - * good numbers like 17, 31, 63, 127 and 129 have nevertheless a great - * advantage to the remaining numbers in the large set of possible - * multipliers: their multiply operation can be replaced by a faster - * operation based on just one shift plus either a single addition - * or subtraction operation. And because a hash function has to both - * distribute good _and_ has to be very fast to compute, those few - * numbers should be preferred and seems to be the reason why Daniel J. - * Bernstein also preferred it. - * - * - * -- Ralf S. Engelschall - */ - -static zend_always_inline zend_ulong zend_inline_hash_func(const char *str, size_t len) -{ - zend_ulong hash = Z_UL(5381); - -#if defined(_WIN32) || defined(__i386__) || defined(__x86_64__) || defined(__aarch64__) - /* Version with multiplication works better on modern CPU */ - for (; len >= 8; len -= 8, str += 8) { -# if defined(__aarch64__) && !defined(WORDS_BIGENDIAN) - /* On some architectures it is beneficial to load 8 bytes at a - time and extract each byte with a bit field extract instr. */ - uint64_t chunk; - - memcpy(&chunk, str, sizeof(chunk)); - hash = - hash * 33 * 33 * 33 * 33 + - ((chunk >> (8 * 0)) & 0xff) * 33 * 33 * 33 + - ((chunk >> (8 * 1)) & 0xff) * 33 * 33 + - ((chunk >> (8 * 2)) & 0xff) * 33 + - ((chunk >> (8 * 3)) & 0xff); - hash = - hash * 33 * 33 * 33 * 33 + - ((chunk >> (8 * 4)) & 0xff) * 33 * 33 * 33 + - ((chunk >> (8 * 5)) & 0xff) * 33 * 33 + - ((chunk >> (8 * 6)) & 0xff) * 33 + - ((chunk >> (8 * 7)) & 0xff); -# else - hash = - hash * 33 * 33 * 33 * 33 + - str[0] * 33 * 33 * 33 + - str[1] * 33 * 33 + - str[2] * 33 + - str[3]; - hash = - hash * 33 * 33 * 33 * 33 + - str[4] * 33 * 33 * 33 + - str[5] * 33 * 33 + - str[6] * 33 + - str[7]; -# endif - } - if (len >= 4) { - hash = - hash * 33 * 33 * 33 * 33 + - str[0] * 33 * 33 * 33 + - str[1] * 33 * 33 + - str[2] * 33 + - str[3]; - len -= 4; - str += 4; - } - if (len >= 2) { - if (len > 2) { - hash = - hash * 33 * 33 * 33 + - str[0] * 33 * 33 + - str[1] * 33 + - str[2]; - } else { - hash = - hash * 33 * 33 + - str[0] * 33 + - str[1]; - } - } else if (len != 0) { - hash = hash * 33 + *str; - } -#else - /* variant with the hash unrolled eight times */ - for (; len >= 8; len -= 8) { - hash = ((hash << 5) + hash) + *str++; - hash = ((hash << 5) + hash) + *str++; - hash = ((hash << 5) + hash) + *str++; - hash = ((hash << 5) + hash) + *str++; - hash = ((hash << 5) + hash) + *str++; - hash = ((hash << 5) + hash) + *str++; - hash = ((hash << 5) + hash) + *str++; - hash = ((hash << 5) + hash) + *str++; - } - switch (len) { - case 7: hash = ((hash << 5) + hash) + *str++; /* fallthrough... */ - case 6: hash = ((hash << 5) + hash) + *str++; /* fallthrough... */ - case 5: hash = ((hash << 5) + hash) + *str++; /* fallthrough... */ - case 4: hash = ((hash << 5) + hash) + *str++; /* fallthrough... */ - case 3: hash = ((hash << 5) + hash) + *str++; /* fallthrough... */ - case 2: hash = ((hash << 5) + hash) + *str++; /* fallthrough... */ - case 1: hash = ((hash << 5) + hash) + *str++; break; - case 0: break; -EMPTY_SWITCH_DEFAULT_CASE() - } -#endif - - /* Hash value can't be zero, so we always set the high bit */ -#if SIZEOF_ZEND_LONG == 8 - return hash | Z_UL(0x8000000000000000); -#elif SIZEOF_ZEND_LONG == 4 - return hash | Z_UL(0x80000000); -#else -# error "Unknown SIZEOF_ZEND_LONG" -#endif -} - -#define ZEND_KNOWN_STRINGS(_) \ - _(ZEND_STR_FILE, "file") \ - _(ZEND_STR_LINE, "line") \ - _(ZEND_STR_FUNCTION, "function") \ - _(ZEND_STR_CLASS, "class") \ - _(ZEND_STR_OBJECT, "object") \ - _(ZEND_STR_TYPE, "type") \ - _(ZEND_STR_OBJECT_OPERATOR, "->") \ - _(ZEND_STR_PAAMAYIM_NEKUDOTAYIM, "::") \ - _(ZEND_STR_ARGS, "args") \ - _(ZEND_STR_UNKNOWN, "unknown") \ - _(ZEND_STR_EVAL, "eval") \ - _(ZEND_STR_INCLUDE, "include") \ - _(ZEND_STR_REQUIRE, "require") \ - _(ZEND_STR_INCLUDE_ONCE, "include_once") \ - _(ZEND_STR_REQUIRE_ONCE, "require_once") \ - _(ZEND_STR_SCALAR, "scalar") \ - _(ZEND_STR_ERROR_REPORTING, "error_reporting") \ - _(ZEND_STR_STATIC, "static") \ - _(ZEND_STR_THIS, "this") \ - _(ZEND_STR_VALUE, "value") \ - _(ZEND_STR_KEY, "key") \ - _(ZEND_STR_MAGIC_AUTOLOAD, "__autoload") \ - _(ZEND_STR_MAGIC_INVOKE, "__invoke") \ - _(ZEND_STR_PREVIOUS, "previous") \ - _(ZEND_STR_CODE, "code") \ - _(ZEND_STR_MESSAGE, "message") \ - _(ZEND_STR_SEVERITY, "severity") \ - _(ZEND_STR_STRING, "string") \ - _(ZEND_STR_TRACE, "trace") \ - _(ZEND_STR_SCHEME, "scheme") \ - _(ZEND_STR_HOST, "host") \ - _(ZEND_STR_PORT, "port") \ - _(ZEND_STR_USER, "user") \ - _(ZEND_STR_PASS, "pass") \ - _(ZEND_STR_PATH, "path") \ - _(ZEND_STR_QUERY, "query") \ - _(ZEND_STR_FRAGMENT, "fragment") \ - _(ZEND_STR_NULL, "NULL") \ - _(ZEND_STR_BOOLEAN, "boolean") \ - _(ZEND_STR_INTEGER, "integer") \ - _(ZEND_STR_DOUBLE, "double") \ - _(ZEND_STR_ARRAY, "array") \ - _(ZEND_STR_RESOURCE, "resource") \ - _(ZEND_STR_CLOSED_RESOURCE, "resource (closed)") \ - _(ZEND_STR_NAME, "name") \ - _(ZEND_STR_ARGV, "argv") \ - _(ZEND_STR_ARGC, "argc") \ - _(ZEND_STR_ARRAY_CAPITALIZED, "Array") \ - - -typedef enum _zend_known_string_id { -#define _ZEND_STR_ID(id, str) id, -ZEND_KNOWN_STRINGS(_ZEND_STR_ID) -#undef _ZEND_STR_ID - ZEND_STR_LAST_KNOWN -} zend_known_string_id; - -#endif /* ZEND_STRING_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_strtod.h b/7.4.27/mac/include/php/Zend/zend_strtod.h deleted file mode 100644 index ea81827..0000000 --- a/7.4.27/mac/include/php/Zend/zend_strtod.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Derick Rethans | - +----------------------------------------------------------------------+ -*/ - -/* This is a header file for the strtod implementation by David M. Gay which - * can be found in zend_strtod.c */ -#ifndef ZEND_STRTOD_H -#define ZEND_STRTOD_H -#include - -BEGIN_EXTERN_C() -ZEND_API void zend_freedtoa(char *s); -ZEND_API char * zend_dtoa(double _d, int mode, int ndigits, int *decpt, int *sign, char **rve); -ZEND_API double zend_strtod(const char *s00, const char **se); -ZEND_API double zend_hex_strtod(const char *str, const char **endptr); -ZEND_API double zend_oct_strtod(const char *str, const char **endptr); -ZEND_API double zend_bin_strtod(const char *str, const char **endptr); -ZEND_API int zend_startup_strtod(void); -ZEND_API int zend_shutdown_strtod(void); -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_strtod_int.h b/7.4.27/mac/include/php/Zend/zend_strtod_int.h deleted file mode 100644 index 5fe31f9..0000000 --- a/7.4.27/mac/include/php/Zend/zend_strtod_int.h +++ /dev/null @@ -1,147 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Anatol Belski | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_STRTOD_INT_H -#define ZEND_STRTOD_INT_H - -#ifdef ZTS -#include -#endif - -#include -#include -#include -#include -#include - -#ifdef HAVE_SYS_TYPES_H -#include -#endif - -/* TODO check to undef this option, this might - make more perf. destroy_freelist() - should be adapted then. */ -#define Omit_Private_Memory 1 - -/* HEX strings aren't supported as per - https://wiki.php.net/rfc/remove_hex_support_in_numeric_strings */ -#define NO_HEX_FP 1 - -#if defined(HAVE_INTTYPES_H) -#include -#elif defined(HAVE_STDINT_H) -#include -#endif - -#ifndef HAVE_INT32_T -# if SIZEOF_INT == 4 -typedef int int32_t; -# elif SIZEOF_LONG == 4 -typedef long int int32_t; -# endif -#endif - -#ifndef HAVE_UINT32_T -# if SIZEOF_INT == 4 -typedef unsigned int uint32_t; -# elif SIZEOF_LONG == 4 -typedef unsigned long int uint32_t; -# endif -#endif - -#ifdef USE_LOCALE -#undef USE_LOCALE -#endif - -#ifndef NO_INFNAN_CHECK -#define NO_INFNAN_CHECK -#endif - -#ifndef NO_ERRNO -#define NO_ERRNO -#endif - -#ifdef WORDS_BIGENDIAN -#define IEEE_BIG_ENDIAN 1 -#else -#define IEEE_LITTLE_ENDIAN 1 -#endif - -#if (defined(__APPLE__) || defined(__APPLE_CC__)) && (defined(__BIG_ENDIAN__) || defined(__LITTLE_ENDIAN__)) -# if defined(__LITTLE_ENDIAN__) -# undef WORDS_BIGENDIAN -# else -# if defined(__BIG_ENDIAN__) -# define WORDS_BIGENDIAN -# endif -# endif -#endif - -#if defined(__arm__) && !defined(__VFP_FP__) -/* - * * Although the CPU is little endian the FP has different - * * byte and word endianness. The byte order is still little endian - * * but the word order is big endian. - * */ -#define IEEE_BIG_ENDIAN -#undef IEEE_LITTLE_ENDIAN -#endif - -#ifdef __vax__ -#define VAX -#undef IEEE_LITTLE_ENDIAN -#endif - -#ifdef IEEE_LITTLE_ENDIAN -#define IEEE_8087 1 -#endif - -#ifdef IEEE_BIG_ENDIAN -#define IEEE_MC68k 1 -#endif - -#if defined(_MSC_VER) -#ifndef int32_t -#define int32_t __int32 -#endif -#ifndef uint32_t -#define uint32_t unsigned __int32 -#endif -#endif - -#ifdef ZTS -#define MULTIPLE_THREADS 1 - -#define ACQUIRE_DTOA_LOCK(x) \ - if (0 == x) { \ - tsrm_mutex_lock(dtoa_mutex); \ - } else if (1 == x) { \ - tsrm_mutex_lock(pow5mult_mutex); \ - } - -#define FREE_DTOA_LOCK(x) \ - if (0 == x) { \ - tsrm_mutex_unlock(dtoa_mutex); \ - } else if (1 == x) { \ - tsrm_mutex_unlock(pow5mult_mutex); \ - } - - -#endif - -#endif /* ZEND_STRTOD_INT_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_ts_hash.h b/7.4.27/mac/include/php/Zend/zend_ts_hash.h deleted file mode 100644 index 35a4250..0000000 --- a/7.4.27/mac/include/php/Zend/zend_ts_hash.h +++ /dev/null @@ -1,138 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Harald Radi | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_TS_HASH_H -#define ZEND_TS_HASH_H - -#include "zend.h" - -typedef struct _zend_ts_hashtable { - HashTable hash; - uint32_t reader; -#ifdef ZTS - MUTEX_T mx_reader; - MUTEX_T mx_writer; -#endif -} TsHashTable; - -BEGIN_EXTERN_C() - -#define TS_HASH(table) (&(table->hash)) - -/* startup/shutdown */ -ZEND_API void _zend_ts_hash_init(TsHashTable *ht, uint32_t nSize, dtor_func_t pDestructor, zend_bool persistent); -ZEND_API void zend_ts_hash_destroy(TsHashTable *ht); -ZEND_API void zend_ts_hash_clean(TsHashTable *ht); - -#define zend_ts_hash_init(ht, nSize, pHashFunction, pDestructor, persistent) \ - _zend_ts_hash_init(ht, nSize, pDestructor, persistent) -#define zend_ts_hash_init_ex(ht, nSize, pHashFunction, pDestructor, persistent, bApplyProtection) \ - _zend_ts_hash_init(ht, nSize, pDestructor, persistent) - - -/* additions/updates/changes */ -ZEND_API zval *zend_ts_hash_update(TsHashTable *ht, zend_string *key, zval *pData); -ZEND_API zval *zend_ts_hash_add(TsHashTable *ht, zend_string *key, zval *pData); -ZEND_API zval *zend_ts_hash_index_update(TsHashTable *ht, zend_ulong h, zval *pData); -ZEND_API zval *zend_ts_hash_next_index_insert(TsHashTable *ht, zval *pData); -ZEND_API zval* zend_ts_hash_add_empty_element(TsHashTable *ht, zend_string *key); - -ZEND_API void zend_ts_hash_graceful_destroy(TsHashTable *ht); -ZEND_API void zend_ts_hash_apply(TsHashTable *ht, apply_func_t apply_func); -ZEND_API void zend_ts_hash_apply_with_argument(TsHashTable *ht, apply_func_arg_t apply_func, void *); -ZEND_API void zend_ts_hash_apply_with_arguments(TsHashTable *ht, apply_func_args_t apply_func, int, ...); - -ZEND_API void zend_ts_hash_reverse_apply(TsHashTable *ht, apply_func_t apply_func); - - -/* Deletes */ -ZEND_API int zend_ts_hash_del(TsHashTable *ht, zend_string *key); -ZEND_API int zend_ts_hash_index_del(TsHashTable *ht, zend_ulong h); - -/* Data retrieval */ -ZEND_API zval *zend_ts_hash_find(TsHashTable *ht, zend_string *key); -ZEND_API zval *zend_ts_hash_index_find(TsHashTable *ht, zend_ulong); - -/* Copying, merging and sorting */ -ZEND_API void zend_ts_hash_copy(TsHashTable *target, TsHashTable *source, copy_ctor_func_t pCopyConstructor); -ZEND_API void zend_ts_hash_copy_to_hash(HashTable *target, TsHashTable *source, copy_ctor_func_t pCopyConstructor); -ZEND_API void zend_ts_hash_merge(TsHashTable *target, TsHashTable *source, copy_ctor_func_t pCopyConstructor, int overwrite); -ZEND_API void zend_ts_hash_merge_ex(TsHashTable *target, TsHashTable *source, copy_ctor_func_t pCopyConstructor, merge_checker_func_t pMergeSource, void *pParam); -ZEND_API int zend_ts_hash_sort(TsHashTable *ht, sort_func_t sort_func, compare_func_t compare_func, int renumber); -ZEND_API int zend_ts_hash_compare(TsHashTable *ht1, TsHashTable *ht2, compare_func_t compar, zend_bool ordered); -ZEND_API zval *zend_ts_hash_minmax(TsHashTable *ht, compare_func_t compar, int flag); - -ZEND_API int zend_ts_hash_num_elements(TsHashTable *ht); - -ZEND_API int zend_ts_hash_rehash(TsHashTable *ht); - -#if ZEND_DEBUG -/* debug */ -void zend_ts_hash_display_pListTail(TsHashTable *ht); -void zend_ts_hash_display(TsHashTable *ht); -#endif - -ZEND_API zval *zend_ts_hash_str_find(TsHashTable *ht, const char *key, size_t len); -ZEND_API zval *zend_ts_hash_str_update(TsHashTable *ht, const char *key, size_t len, zval *pData); -ZEND_API zval *zend_ts_hash_str_add(TsHashTable *ht, const char *key, size_t len, zval *pData); - -static zend_always_inline void *zend_ts_hash_str_find_ptr(TsHashTable *ht, const char *str, size_t len) -{ - zval *zv; - - zv = zend_ts_hash_str_find(ht, str, len); - return zv ? Z_PTR_P(zv) : NULL; -} - -static zend_always_inline void *zend_ts_hash_str_update_ptr(TsHashTable *ht, const char *str, size_t len, void *pData) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, pData); - zv = zend_ts_hash_str_update(ht, str, len, &tmp); - return zv ? Z_PTR_P(zv) : NULL; -} - -static zend_always_inline void *zend_ts_hash_str_add_ptr(TsHashTable *ht, const char *str, size_t len, void *pData) -{ - zval tmp, *zv; - - ZVAL_PTR(&tmp, pData); - zv = zend_ts_hash_str_add(ht, str, len, &tmp); - return zv ? Z_PTR_P(zv) : NULL; -} - -static zend_always_inline int zend_ts_hash_exists(TsHashTable *ht, zend_string *key) -{ - return zend_ts_hash_find(ht, key) != NULL; -} - -static zend_always_inline int zend_ts_hash_index_exists(TsHashTable *ht, zend_ulong h) -{ - return zend_ts_hash_index_find(ht, h) != NULL; -} - -END_EXTERN_C() - -#define ZEND_TS_INIT_SYMTABLE(ht) \ - ZEND_TS_INIT_SYMTABLE_EX(ht, 2, 0) - -#define ZEND_TS_INIT_SYMTABLE_EX(ht, n, persistent) \ - zend_ts_hash_init(ht, n, NULL, ZVAL_PTR_DTOR, persistent) - -#endif /* ZEND_HASH_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_type_info.h b/7.4.27/mac/include/php/Zend/zend_type_info.h deleted file mode 100644 index 72550b6..0000000 --- a/7.4.27/mac/include/php/Zend/zend_type_info.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_TYPE_INFO_H -#define ZEND_TYPE_INFO_H - -#include "zend_types.h" - -#define MAY_BE_UNDEF (1 << IS_UNDEF) -#define MAY_BE_NULL (1 << IS_NULL) -#define MAY_BE_FALSE (1 << IS_FALSE) -#define MAY_BE_TRUE (1 << IS_TRUE) -#define MAY_BE_LONG (1 << IS_LONG) -#define MAY_BE_DOUBLE (1 << IS_DOUBLE) -#define MAY_BE_STRING (1 << IS_STRING) -#define MAY_BE_ARRAY (1 << IS_ARRAY) -#define MAY_BE_OBJECT (1 << IS_OBJECT) -#define MAY_BE_RESOURCE (1 << IS_RESOURCE) -#define MAY_BE_ANY (MAY_BE_NULL|MAY_BE_FALSE|MAY_BE_TRUE|MAY_BE_LONG|MAY_BE_DOUBLE|MAY_BE_STRING|MAY_BE_ARRAY|MAY_BE_OBJECT|MAY_BE_RESOURCE) -#define MAY_BE_REF (1 << IS_REFERENCE) /* may be reference */ - -#define MAY_BE_ARRAY_SHIFT (IS_REFERENCE) - -#define MAY_BE_ARRAY_OF_NULL (MAY_BE_NULL << MAY_BE_ARRAY_SHIFT) -#define MAY_BE_ARRAY_OF_FALSE (MAY_BE_FALSE << MAY_BE_ARRAY_SHIFT) -#define MAY_BE_ARRAY_OF_TRUE (MAY_BE_TRUE << MAY_BE_ARRAY_SHIFT) -#define MAY_BE_ARRAY_OF_LONG (MAY_BE_LONG << MAY_BE_ARRAY_SHIFT) -#define MAY_BE_ARRAY_OF_DOUBLE (MAY_BE_DOUBLE << MAY_BE_ARRAY_SHIFT) -#define MAY_BE_ARRAY_OF_STRING (MAY_BE_STRING << MAY_BE_ARRAY_SHIFT) -#define MAY_BE_ARRAY_OF_ARRAY (MAY_BE_ARRAY << MAY_BE_ARRAY_SHIFT) -#define MAY_BE_ARRAY_OF_OBJECT (MAY_BE_OBJECT << MAY_BE_ARRAY_SHIFT) -#define MAY_BE_ARRAY_OF_RESOURCE (MAY_BE_RESOURCE << MAY_BE_ARRAY_SHIFT) -#define MAY_BE_ARRAY_OF_ANY (MAY_BE_ANY << MAY_BE_ARRAY_SHIFT) -#define MAY_BE_ARRAY_OF_REF (MAY_BE_REF << MAY_BE_ARRAY_SHIFT) - -#define MAY_BE_ARRAY_KEY_LONG (1<<21) -#define MAY_BE_ARRAY_KEY_STRING (1<<22) -#define MAY_BE_ARRAY_KEY_ANY (MAY_BE_ARRAY_KEY_LONG | MAY_BE_ARRAY_KEY_STRING) - -#define MAY_BE_ERROR (1<<23) -#define MAY_BE_CLASS (1<<24) - -#endif /* ZEND_TYPE_INFO_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_types.h b/7.4.27/mac/include/php/Zend/zend_types.h deleted file mode 100644 index 7b8c079..0000000 --- a/7.4.27/mac/include/php/Zend/zend_types.h +++ /dev/null @@ -1,1283 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - | Dmitry Stogov | - | Xinchen Hui | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_TYPES_H -#define ZEND_TYPES_H - -#include "zend_portability.h" -#include "zend_long.h" - -#ifdef __SSE2__ -# include -# include -#endif - -#ifdef WORDS_BIGENDIAN -# define ZEND_ENDIAN_LOHI(lo, hi) hi; lo; -# define ZEND_ENDIAN_LOHI_3(lo, mi, hi) hi; mi; lo; -# define ZEND_ENDIAN_LOHI_4(a, b, c, d) d; c; b; a; -# define ZEND_ENDIAN_LOHI_C(lo, hi) hi, lo -# define ZEND_ENDIAN_LOHI_C_3(lo, mi, hi) hi, mi, lo, -# define ZEND_ENDIAN_LOHI_C_4(a, b, c, d) d, c, b, a -#else -# define ZEND_ENDIAN_LOHI(lo, hi) lo; hi; -# define ZEND_ENDIAN_LOHI_3(lo, mi, hi) lo; mi; hi; -# define ZEND_ENDIAN_LOHI_4(a, b, c, d) a; b; c; d; -# define ZEND_ENDIAN_LOHI_C(lo, hi) lo, hi -# define ZEND_ENDIAN_LOHI_C_3(lo, mi, hi) lo, mi, hi, -# define ZEND_ENDIAN_LOHI_C_4(a, b, c, d) a, b, c, d -#endif - -typedef unsigned char zend_bool; -typedef unsigned char zend_uchar; - -typedef enum { - SUCCESS = 0, - FAILURE = -1, /* this MUST stay a negative number, or it may affect functions! */ -} ZEND_RESULT_CODE; - -#ifdef ZEND_ENABLE_ZVAL_LONG64 -# ifdef ZEND_WIN32 -# define ZEND_SIZE_MAX _UI64_MAX -# else -# define ZEND_SIZE_MAX SIZE_MAX -# endif -#else -# if defined(ZEND_WIN32) -# define ZEND_SIZE_MAX _UI32_MAX -# else -# define ZEND_SIZE_MAX SIZE_MAX -# endif -#endif - -typedef intptr_t zend_intptr_t; -typedef uintptr_t zend_uintptr_t; - -#ifdef ZTS -#define ZEND_TLS static TSRM_TLS -#define ZEND_EXT_TLS TSRM_TLS -#else -#define ZEND_TLS static -#define ZEND_EXT_TLS -#endif - -typedef struct _zend_object_handlers zend_object_handlers; -typedef struct _zend_class_entry zend_class_entry; -typedef union _zend_function zend_function; -typedef struct _zend_execute_data zend_execute_data; - -typedef struct _zval_struct zval; - -typedef struct _zend_refcounted zend_refcounted; -typedef struct _zend_string zend_string; -typedef struct _zend_array zend_array; -typedef struct _zend_object zend_object; -typedef struct _zend_resource zend_resource; -typedef struct _zend_reference zend_reference; -typedef struct _zend_ast_ref zend_ast_ref; -typedef struct _zend_ast zend_ast; - -typedef int (*compare_func_t)(const void *, const void *); -typedef void (*swap_func_t)(void *, void *); -typedef void (*sort_func_t)(void *, size_t, size_t, compare_func_t, swap_func_t); -typedef void (*dtor_func_t)(zval *pDest); -typedef void (*copy_ctor_func_t)(zval *pElement); - -/* - * zend_type - is an abstraction layer to represent information about type hint. - * It shouldn't be used directly. Only through ZEND_TYPE_* macros. - * - * ZEND_TYPE_IS_SET() - checks if type-hint exists - * ZEND_TYPE_IS_CODE() - checks if type-hint refer to standard type - * ZEND_TYPE_IS_CLASS() - checks if type-hint refer to some class - * ZEND_TYPE_IS_CE() - checks if type-hint refer to some class by zend_class_entry * - * ZEND_TYPE_IS_NAME() - checks if type-hint refer to some class by zend_string * - * - * ZEND_TYPE_NAME() - returns referenced class name - * ZEND_TYPE_CE() - returns referenced class entry - * ZEND_TYPE_CODE() - returns standard type code (e.g. IS_LONG, _IS_BOOL) - * - * ZEND_TYPE_ALLOW_NULL() - checks if NULL is allowed - * - * ZEND_TYPE_ENCODE() and ZEND_TYPE_ENCODE_CLASS() should be used for - * construction. - */ - -typedef uintptr_t zend_type; - -#define ZEND_TYPE_IS_SET(t) \ - ((t) > Z_L(0x3)) - -#define ZEND_TYPE_IS_CODE(t) \ - (((t) > Z_L(0x3)) && ((t) <= Z_L(0x3ff))) - -#define ZEND_TYPE_IS_CLASS(t) \ - ((t) > Z_L(0x3ff)) - -#define ZEND_TYPE_IS_CE(t) \ - (((t) & Z_L(0x2)) != 0) - -#define ZEND_TYPE_IS_NAME(t) \ - (ZEND_TYPE_IS_CLASS(t) && !ZEND_TYPE_IS_CE(t)) - -#define ZEND_TYPE_NAME(t) \ - ((zend_string*)((t) & ~Z_L(0x3))) - -#define ZEND_TYPE_CE(t) \ - ((zend_class_entry*)((t) & ~Z_L(0x3))) - -#define ZEND_TYPE_CODE(t) \ - ((t) >> Z_L(2)) - -#define ZEND_TYPE_ALLOW_NULL(t) \ - (((t) & Z_L(0x1)) != 0) - -#define ZEND_TYPE_WITHOUT_NULL(t) \ - ((t) & ~Z_L(0x1)) - -#define ZEND_TYPE_ENCODE(code, allow_null) \ - (((code) << Z_L(2)) | ((allow_null) ? Z_L(0x1) : Z_L(0x0))) - -#define ZEND_TYPE_ENCODE_CE(ce, allow_null) \ - (((uintptr_t)(ce)) | ((allow_null) ? Z_L(0x3) : Z_L(0x2))) - -#define ZEND_TYPE_ENCODE_CLASS(class_name, allow_null) \ - (((uintptr_t)(class_name)) | ((allow_null) ? Z_L(0x1) : Z_L(0x0))) - -#define ZEND_TYPE_ENCODE_CLASS_CONST_0(class_name) \ - ((zend_type) class_name) -#define ZEND_TYPE_ENCODE_CLASS_CONST_1(class_name) \ - ((zend_type) "?" class_name) -#define ZEND_TYPE_ENCODE_CLASS_CONST_Q2(macro, class_name) \ - macro(class_name) -#define ZEND_TYPE_ENCODE_CLASS_CONST_Q1(allow_null, class_name) \ - ZEND_TYPE_ENCODE_CLASS_CONST_Q2(ZEND_TYPE_ENCODE_CLASS_CONST_ ##allow_null, class_name) -#define ZEND_TYPE_ENCODE_CLASS_CONST(class_name, allow_null) \ - ZEND_TYPE_ENCODE_CLASS_CONST_Q1(allow_null, class_name) - -typedef union _zend_value { - zend_long lval; /* long value */ - double dval; /* double value */ - zend_refcounted *counted; - zend_string *str; - zend_array *arr; - zend_object *obj; - zend_resource *res; - zend_reference *ref; - zend_ast_ref *ast; - zval *zv; - void *ptr; - zend_class_entry *ce; - zend_function *func; - struct { - uint32_t w1; - uint32_t w2; - } ww; -} zend_value; - -struct _zval_struct { - zend_value value; /* value */ - union { - struct { - ZEND_ENDIAN_LOHI_3( - zend_uchar type, /* active type */ - zend_uchar type_flags, - union { - uint16_t extra; /* not further specified */ - } u) - } v; - uint32_t type_info; - } u1; - union { - uint32_t next; /* hash collision chain */ - uint32_t cache_slot; /* cache slot (for RECV_INIT) */ - uint32_t opline_num; /* opline number (for FAST_CALL) */ - uint32_t lineno; /* line number (for ast nodes) */ - uint32_t num_args; /* arguments number for EX(This) */ - uint32_t fe_pos; /* foreach position */ - uint32_t fe_iter_idx; /* foreach iterator index */ - uint32_t access_flags; /* class constant access flags */ - uint32_t property_guard; /* single property guard */ - uint32_t constant_flags; /* constant flags */ - uint32_t extra; /* not further specified */ - } u2; -}; - -typedef struct _zend_refcounted_h { - uint32_t refcount; /* reference counter 32-bit */ - union { - uint32_t type_info; - } u; -} zend_refcounted_h; - -struct _zend_refcounted { - zend_refcounted_h gc; -}; - -struct _zend_string { - zend_refcounted_h gc; - zend_ulong h; /* hash value */ - size_t len; - char val[1]; -}; - -typedef struct _Bucket { - zval val; - zend_ulong h; /* hash value (or numeric index) */ - zend_string *key; /* string key or NULL for numerics */ -} Bucket; - -typedef struct _zend_array HashTable; - -struct _zend_array { - zend_refcounted_h gc; - union { - struct { - ZEND_ENDIAN_LOHI_4( - zend_uchar flags, - zend_uchar _unused, - zend_uchar nIteratorsCount, - zend_uchar _unused2) - } v; - uint32_t flags; - } u; - uint32_t nTableMask; - Bucket *arData; - uint32_t nNumUsed; - uint32_t nNumOfElements; - uint32_t nTableSize; - uint32_t nInternalPointer; - zend_long nNextFreeElement; - dtor_func_t pDestructor; -}; - -/* - * HashTable Data Layout - * ===================== - * - * +=============================+ - * | HT_HASH(ht, ht->nTableMask) | - * | ... | - * | HT_HASH(ht, -1) | - * +-----------------------------+ - * ht->arData ---> | Bucket[0] | - * | ... | - * | Bucket[ht->nTableSize-1] | - * +=============================+ - */ - -#define HT_INVALID_IDX ((uint32_t) -1) - -#define HT_MIN_MASK ((uint32_t) -2) -#define HT_MIN_SIZE 8 - -#if SIZEOF_SIZE_T == 4 -# define HT_MAX_SIZE 0x04000000 /* small enough to avoid overflow checks */ -# define HT_HASH_TO_BUCKET_EX(data, idx) \ - ((Bucket*)((char*)(data) + (idx))) -# define HT_IDX_TO_HASH(idx) \ - ((idx) * sizeof(Bucket)) -# define HT_HASH_TO_IDX(idx) \ - ((idx) / sizeof(Bucket)) -#elif SIZEOF_SIZE_T == 8 -# define HT_MAX_SIZE 0x80000000 -# define HT_HASH_TO_BUCKET_EX(data, idx) \ - ((data) + (idx)) -# define HT_IDX_TO_HASH(idx) \ - (idx) -# define HT_HASH_TO_IDX(idx) \ - (idx) -#else -# error "Unknown SIZEOF_SIZE_T" -#endif - -#define HT_HASH_EX(data, idx) \ - ((uint32_t*)(data))[(int32_t)(idx)] -#define HT_HASH(ht, idx) \ - HT_HASH_EX((ht)->arData, idx) - -#define HT_SIZE_TO_MASK(nTableSize) \ - ((uint32_t)(-((nTableSize) + (nTableSize)))) -#define HT_HASH_SIZE(nTableMask) \ - (((size_t)(uint32_t)-(int32_t)(nTableMask)) * sizeof(uint32_t)) -#define HT_DATA_SIZE(nTableSize) \ - ((size_t)(nTableSize) * sizeof(Bucket)) -#define HT_SIZE_EX(nTableSize, nTableMask) \ - (HT_DATA_SIZE((nTableSize)) + HT_HASH_SIZE((nTableMask))) -#define HT_SIZE(ht) \ - HT_SIZE_EX((ht)->nTableSize, (ht)->nTableMask) -#define HT_USED_SIZE(ht) \ - (HT_HASH_SIZE((ht)->nTableMask) + ((size_t)(ht)->nNumUsed * sizeof(Bucket))) -#ifdef __SSE2__ -# define HT_HASH_RESET(ht) do { \ - char *p = (char*)&HT_HASH(ht, (ht)->nTableMask); \ - size_t size = HT_HASH_SIZE((ht)->nTableMask); \ - __m128i xmm0 = _mm_setzero_si128(); \ - xmm0 = _mm_cmpeq_epi8(xmm0, xmm0); \ - ZEND_ASSERT(size >= 64 && ((size & 0x3f) == 0)); \ - do { \ - _mm_storeu_si128((__m128i*)p, xmm0); \ - _mm_storeu_si128((__m128i*)(p+16), xmm0); \ - _mm_storeu_si128((__m128i*)(p+32), xmm0); \ - _mm_storeu_si128((__m128i*)(p+48), xmm0); \ - p += 64; \ - size -= 64; \ - } while (size != 0); \ - } while (0) -#else -# define HT_HASH_RESET(ht) \ - memset(&HT_HASH(ht, (ht)->nTableMask), HT_INVALID_IDX, HT_HASH_SIZE((ht)->nTableMask)) -#endif -#define HT_HASH_RESET_PACKED(ht) do { \ - HT_HASH(ht, -2) = HT_INVALID_IDX; \ - HT_HASH(ht, -1) = HT_INVALID_IDX; \ - } while (0) -#define HT_HASH_TO_BUCKET(ht, idx) \ - HT_HASH_TO_BUCKET_EX((ht)->arData, idx) - -#define HT_SET_DATA_ADDR(ht, ptr) do { \ - (ht)->arData = (Bucket*)(((char*)(ptr)) + HT_HASH_SIZE((ht)->nTableMask)); \ - } while (0) -#define HT_GET_DATA_ADDR(ht) \ - ((char*)((ht)->arData) - HT_HASH_SIZE((ht)->nTableMask)) - -typedef uint32_t HashPosition; - -typedef struct _HashTableIterator { - HashTable *ht; - HashPosition pos; -} HashTableIterator; - -struct _zend_object { - zend_refcounted_h gc; - uint32_t handle; // TODO: may be removed ??? - zend_class_entry *ce; - const zend_object_handlers *handlers; - HashTable *properties; - zval properties_table[1]; -}; - -struct _zend_resource { - zend_refcounted_h gc; - int handle; // TODO: may be removed ??? - int type; - void *ptr; -}; - -typedef struct { - size_t num; - size_t num_allocated; - struct _zend_property_info *ptr[1]; -} zend_property_info_list; - -typedef union { - struct _zend_property_info *ptr; - uintptr_t list; -} zend_property_info_source_list; - -#define ZEND_PROPERTY_INFO_SOURCE_FROM_LIST(list) (0x1 | (uintptr_t) (list)) -#define ZEND_PROPERTY_INFO_SOURCE_TO_LIST(list) ((zend_property_info_list *) ((list) & ~0x1)) -#define ZEND_PROPERTY_INFO_SOURCE_IS_LIST(list) ((list) & 0x1) - -struct _zend_reference { - zend_refcounted_h gc; - zval val; - zend_property_info_source_list sources; -}; - -struct _zend_ast_ref { - zend_refcounted_h gc; - /*zend_ast ast; zend_ast follows the zend_ast_ref structure */ -}; - -/* regular data types */ -#define IS_UNDEF 0 -#define IS_NULL 1 -#define IS_FALSE 2 -#define IS_TRUE 3 -#define IS_LONG 4 -#define IS_DOUBLE 5 -#define IS_STRING 6 -#define IS_ARRAY 7 -#define IS_OBJECT 8 -#define IS_RESOURCE 9 -#define IS_REFERENCE 10 - -/* constant expressions */ -#define IS_CONSTANT_AST 11 - -/* internal types */ -#define IS_INDIRECT 13 -#define IS_PTR 14 -#define IS_ALIAS_PTR 15 -#define _IS_ERROR 15 - -/* fake types used only for type hinting (Z_TYPE(zv) can not use them) */ -#define _IS_BOOL 16 -#define IS_CALLABLE 17 -#define IS_ITERABLE 18 -#define IS_VOID 19 -#define _IS_NUMBER 20 - -static zend_always_inline zend_uchar zval_get_type(const zval* pz) { - return pz->u1.v.type; -} - -#define ZEND_SAME_FAKE_TYPE(faketype, realtype) ( \ - (faketype) == (realtype) \ - || ((faketype) == _IS_BOOL && ((realtype) == IS_TRUE || (realtype) == IS_FALSE)) \ -) - -/* we should never set just Z_TYPE, we should set Z_TYPE_INFO */ -#define Z_TYPE(zval) zval_get_type(&(zval)) -#define Z_TYPE_P(zval_p) Z_TYPE(*(zval_p)) - -#define Z_TYPE_FLAGS(zval) (zval).u1.v.type_flags -#define Z_TYPE_FLAGS_P(zval_p) Z_TYPE_FLAGS(*(zval_p)) - -#define Z_TYPE_INFO(zval) (zval).u1.type_info -#define Z_TYPE_INFO_P(zval_p) Z_TYPE_INFO(*(zval_p)) - -#define Z_NEXT(zval) (zval).u2.next -#define Z_NEXT_P(zval_p) Z_NEXT(*(zval_p)) - -#define Z_CACHE_SLOT(zval) (zval).u2.cache_slot -#define Z_CACHE_SLOT_P(zval_p) Z_CACHE_SLOT(*(zval_p)) - -#define Z_LINENO(zval) (zval).u2.lineno -#define Z_LINENO_P(zval_p) Z_LINENO(*(zval_p)) - -#define Z_OPLINE_NUM(zval) (zval).u2.opline_num -#define Z_OPLINE_NUM_P(zval_p) Z_OPLINE_NUM(*(zval_p)) - -#define Z_FE_POS(zval) (zval).u2.fe_pos -#define Z_FE_POS_P(zval_p) Z_FE_POS(*(zval_p)) - -#define Z_FE_ITER(zval) (zval).u2.fe_iter_idx -#define Z_FE_ITER_P(zval_p) Z_FE_ITER(*(zval_p)) - -#define Z_ACCESS_FLAGS(zval) (zval).u2.access_flags -#define Z_ACCESS_FLAGS_P(zval_p) Z_ACCESS_FLAGS(*(zval_p)) - -#define Z_PROPERTY_GUARD(zval) (zval).u2.property_guard -#define Z_PROPERTY_GUARD_P(zval_p) Z_PROPERTY_GUARD(*(zval_p)) - -#define Z_CONSTANT_FLAGS(zval) (zval).u2.constant_flags -#define Z_CONSTANT_FLAGS_P(zval_p) Z_CONSTANT_FLAGS(*(zval_p)) - -#define Z_EXTRA(zval) (zval).u2.extra -#define Z_EXTRA_P(zval_p) Z_EXTRA(*(zval_p)) - -#define Z_COUNTED(zval) (zval).value.counted -#define Z_COUNTED_P(zval_p) Z_COUNTED(*(zval_p)) - -#define Z_TYPE_MASK 0xff -#define Z_TYPE_FLAGS_MASK 0xff00 - -#define Z_TYPE_FLAGS_SHIFT 8 - -#define GC_REFCOUNT(p) zend_gc_refcount(&(p)->gc) -#define GC_SET_REFCOUNT(p, rc) zend_gc_set_refcount(&(p)->gc, rc) -#define GC_ADDREF(p) zend_gc_addref(&(p)->gc) -#define GC_DELREF(p) zend_gc_delref(&(p)->gc) -#define GC_ADDREF_EX(p, rc) zend_gc_addref_ex(&(p)->gc, rc) -#define GC_DELREF_EX(p, rc) zend_gc_delref_ex(&(p)->gc, rc) - -#define GC_TYPE_MASK 0x0000000f -#define GC_FLAGS_MASK 0x000003f0 -#define GC_INFO_MASK 0xfffffc00 -#define GC_FLAGS_SHIFT 0 -#define GC_INFO_SHIFT 10 - -static zend_always_inline zend_uchar zval_gc_type(uint32_t gc_type_info) { - return (gc_type_info & GC_TYPE_MASK); -} - -static zend_always_inline uint32_t zval_gc_flags(uint32_t gc_type_info) { - return (gc_type_info >> GC_FLAGS_SHIFT) & (GC_FLAGS_MASK >> GC_FLAGS_SHIFT); -} - -static zend_always_inline uint32_t zval_gc_info(uint32_t gc_type_info) { - return (gc_type_info >> GC_INFO_SHIFT); -} - -#define GC_TYPE_INFO(p) (p)->gc.u.type_info -#define GC_TYPE(p) zval_gc_type(GC_TYPE_INFO(p)) -#define GC_FLAGS(p) zval_gc_flags(GC_TYPE_INFO(p)) -#define GC_INFO(p) zval_gc_info(GC_TYPE_INFO(p)) - -#define GC_ADD_FLAGS(p, flags) do { \ - GC_TYPE_INFO(p) |= (flags) << GC_FLAGS_SHIFT; \ - } while (0) -#define GC_DEL_FLAGS(p, flags) do { \ - GC_TYPE_INFO(p) &= ~((flags) << GC_FLAGS_SHIFT); \ - } while (0) - -#define Z_GC_TYPE(zval) GC_TYPE(Z_COUNTED(zval)) -#define Z_GC_TYPE_P(zval_p) Z_GC_TYPE(*(zval_p)) - -#define Z_GC_FLAGS(zval) GC_FLAGS(Z_COUNTED(zval)) -#define Z_GC_FLAGS_P(zval_p) Z_GC_FLAGS(*(zval_p)) - -#define Z_GC_INFO(zval) GC_INFO(Z_COUNTED(zval)) -#define Z_GC_INFO_P(zval_p) Z_GC_INFO(*(zval_p)) -#define Z_GC_TYPE_INFO(zval) GC_TYPE_INFO(Z_COUNTED(zval)) -#define Z_GC_TYPE_INFO_P(zval_p) Z_GC_TYPE_INFO(*(zval_p)) - -/* zval_gc_flags(zval.value->gc.u.type_info) (common flags) */ -#define GC_COLLECTABLE (1<<4) -#define GC_PROTECTED (1<<5) /* used for recursion detection */ -#define GC_IMMUTABLE (1<<6) /* can't be canged in place */ -#define GC_PERSISTENT (1<<7) /* allocated using malloc */ -#define GC_PERSISTENT_LOCAL (1<<8) /* persistent, but thread-local */ - -#define GC_ARRAY (IS_ARRAY | (GC_COLLECTABLE << GC_FLAGS_SHIFT)) -#define GC_OBJECT (IS_OBJECT | (GC_COLLECTABLE << GC_FLAGS_SHIFT)) - -/* zval.u1.v.type_flags */ -#define IS_TYPE_REFCOUNTED (1<<0) -#define IS_TYPE_COLLECTABLE (1<<1) - -#if 1 -/* This optimized version assumes that we have a single "type_flag" */ -/* IS_TYPE_COLLECTABLE may be used only with IS_TYPE_REFCOUNTED */ -# define Z_TYPE_INFO_REFCOUNTED(t) (((t) & Z_TYPE_FLAGS_MASK) != 0) -#else -# define Z_TYPE_INFO_REFCOUNTED(t) (((t) & (IS_TYPE_REFCOUNTED << Z_TYPE_FLAGS_SHIFT)) != 0) -#endif - -/* extended types */ -#define IS_INTERNED_STRING_EX IS_STRING - -#define IS_STRING_EX (IS_STRING | (IS_TYPE_REFCOUNTED << Z_TYPE_FLAGS_SHIFT)) -#define IS_ARRAY_EX (IS_ARRAY | (IS_TYPE_REFCOUNTED << Z_TYPE_FLAGS_SHIFT) | (IS_TYPE_COLLECTABLE << Z_TYPE_FLAGS_SHIFT)) -#define IS_OBJECT_EX (IS_OBJECT | (IS_TYPE_REFCOUNTED << Z_TYPE_FLAGS_SHIFT) | (IS_TYPE_COLLECTABLE << Z_TYPE_FLAGS_SHIFT)) -#define IS_RESOURCE_EX (IS_RESOURCE | (IS_TYPE_REFCOUNTED << Z_TYPE_FLAGS_SHIFT)) -#define IS_REFERENCE_EX (IS_REFERENCE | (IS_TYPE_REFCOUNTED << Z_TYPE_FLAGS_SHIFT)) - -#define IS_CONSTANT_AST_EX (IS_CONSTANT_AST | (IS_TYPE_REFCOUNTED << Z_TYPE_FLAGS_SHIFT)) - -/* string flags (zval.value->gc.u.flags) */ -#define IS_STR_INTERNED GC_IMMUTABLE /* interned string */ -#define IS_STR_PERSISTENT GC_PERSISTENT /* allocated using malloc */ -#define IS_STR_PERMANENT (1<<8) /* relives request boundary */ -#define IS_STR_VALID_UTF8 (1<<9) /* valid UTF-8 according to PCRE */ - -/* array flags */ -#define IS_ARRAY_IMMUTABLE GC_IMMUTABLE -#define IS_ARRAY_PERSISTENT GC_PERSISTENT - -/* object flags (zval.value->gc.u.flags) */ -#define IS_OBJ_WEAKLY_REFERENCED GC_PERSISTENT -#define IS_OBJ_DESTRUCTOR_CALLED (1<<8) -#define IS_OBJ_FREE_CALLED (1<<9) - -#define OBJ_FLAGS(obj) GC_FLAGS(obj) - -/* Recursion protection macros must be used only for arrays and objects */ -#define GC_IS_RECURSIVE(p) \ - (GC_FLAGS(p) & GC_PROTECTED) - -#define GC_PROTECT_RECURSION(p) do { \ - GC_ADD_FLAGS(p, GC_PROTECTED); \ - } while (0) - -#define GC_UNPROTECT_RECURSION(p) do { \ - GC_DEL_FLAGS(p, GC_PROTECTED); \ - } while (0) - -#define GC_TRY_PROTECT_RECURSION(p) do { \ - if (!(GC_FLAGS(p) & GC_IMMUTABLE)) GC_PROTECT_RECURSION(p); \ - } while (0) - -#define GC_TRY_UNPROTECT_RECURSION(p) do { \ - if (!(GC_FLAGS(p) & GC_IMMUTABLE)) GC_UNPROTECT_RECURSION(p); \ - } while (0) - -#define Z_IS_RECURSIVE(zval) GC_IS_RECURSIVE(Z_COUNTED(zval)) -#define Z_PROTECT_RECURSION(zval) GC_PROTECT_RECURSION(Z_COUNTED(zval)) -#define Z_UNPROTECT_RECURSION(zval) GC_UNPROTECT_RECURSION(Z_COUNTED(zval)) -#define Z_IS_RECURSIVE_P(zv) Z_IS_RECURSIVE(*(zv)) -#define Z_PROTECT_RECURSION_P(zv) Z_PROTECT_RECURSION(*(zv)) -#define Z_UNPROTECT_RECURSION_P(zv) Z_UNPROTECT_RECURSION(*(zv)) - -/* All data types < IS_STRING have their constructor/destructors skipped */ -#define Z_CONSTANT(zval) (Z_TYPE(zval) == IS_CONSTANT_AST) -#define Z_CONSTANT_P(zval_p) Z_CONSTANT(*(zval_p)) - -#if 1 -/* This optimized version assumes that we have a single "type_flag" */ -/* IS_TYPE_COLLECTABLE may be used only with IS_TYPE_REFCOUNTED */ -#define Z_REFCOUNTED(zval) (Z_TYPE_FLAGS(zval) != 0) -#else -#define Z_REFCOUNTED(zval) ((Z_TYPE_FLAGS(zval) & IS_TYPE_REFCOUNTED) != 0) -#endif -#define Z_REFCOUNTED_P(zval_p) Z_REFCOUNTED(*(zval_p)) - -#define Z_COLLECTABLE(zval) ((Z_TYPE_FLAGS(zval) & IS_TYPE_COLLECTABLE) != 0) -#define Z_COLLECTABLE_P(zval_p) Z_COLLECTABLE(*(zval_p)) - -/* deprecated: (COPYABLE is the same as IS_ARRAY) */ -#define Z_COPYABLE(zval) (Z_TYPE(zval) == IS_ARRAY) -#define Z_COPYABLE_P(zval_p) Z_COPYABLE(*(zval_p)) - -/* deprecated: (IMMUTABLE is the same as IS_ARRAY && !REFCOUNTED) */ -#define Z_IMMUTABLE(zval) (Z_TYPE_INFO(zval) == IS_ARRAY) -#define Z_IMMUTABLE_P(zval_p) Z_IMMUTABLE(*(zval_p)) -#define Z_OPT_IMMUTABLE(zval) Z_IMMUTABLE(zval_p) -#define Z_OPT_IMMUTABLE_P(zval_p) Z_IMMUTABLE(*(zval_p)) - -/* the following Z_OPT_* macros make better code when Z_TYPE_INFO accessed before */ -#define Z_OPT_TYPE(zval) (Z_TYPE_INFO(zval) & Z_TYPE_MASK) -#define Z_OPT_TYPE_P(zval_p) Z_OPT_TYPE(*(zval_p)) - -#define Z_OPT_CONSTANT(zval) (Z_OPT_TYPE(zval) == IS_CONSTANT_AST) -#define Z_OPT_CONSTANT_P(zval_p) Z_OPT_CONSTANT(*(zval_p)) - -#define Z_OPT_REFCOUNTED(zval) Z_TYPE_INFO_REFCOUNTED(Z_TYPE_INFO(zval)) -#define Z_OPT_REFCOUNTED_P(zval_p) Z_OPT_REFCOUNTED(*(zval_p)) - -/* deprecated: (COPYABLE is the same as IS_ARRAY) */ -#define Z_OPT_COPYABLE(zval) (Z_OPT_TYPE(zval) == IS_ARRAY) -#define Z_OPT_COPYABLE_P(zval_p) Z_OPT_COPYABLE(*(zval_p)) - -#define Z_OPT_ISREF(zval) (Z_OPT_TYPE(zval) == IS_REFERENCE) -#define Z_OPT_ISREF_P(zval_p) Z_OPT_ISREF(*(zval_p)) - -#define Z_ISREF(zval) (Z_TYPE(zval) == IS_REFERENCE) -#define Z_ISREF_P(zval_p) Z_ISREF(*(zval_p)) - -#define Z_ISUNDEF(zval) (Z_TYPE(zval) == IS_UNDEF) -#define Z_ISUNDEF_P(zval_p) Z_ISUNDEF(*(zval_p)) - -#define Z_ISNULL(zval) (Z_TYPE(zval) == IS_NULL) -#define Z_ISNULL_P(zval_p) Z_ISNULL(*(zval_p)) - -#define Z_ISERROR(zval) (Z_TYPE(zval) == _IS_ERROR) -#define Z_ISERROR_P(zval_p) Z_ISERROR(*(zval_p)) - -#define Z_LVAL(zval) (zval).value.lval -#define Z_LVAL_P(zval_p) Z_LVAL(*(zval_p)) - -#define Z_DVAL(zval) (zval).value.dval -#define Z_DVAL_P(zval_p) Z_DVAL(*(zval_p)) - -#define Z_STR(zval) (zval).value.str -#define Z_STR_P(zval_p) Z_STR(*(zval_p)) - -#define Z_STRVAL(zval) ZSTR_VAL(Z_STR(zval)) -#define Z_STRVAL_P(zval_p) Z_STRVAL(*(zval_p)) - -#define Z_STRLEN(zval) ZSTR_LEN(Z_STR(zval)) -#define Z_STRLEN_P(zval_p) Z_STRLEN(*(zval_p)) - -#define Z_STRHASH(zval) ZSTR_HASH(Z_STR(zval)) -#define Z_STRHASH_P(zval_p) Z_STRHASH(*(zval_p)) - -#define Z_ARR(zval) (zval).value.arr -#define Z_ARR_P(zval_p) Z_ARR(*(zval_p)) - -#define Z_ARRVAL(zval) Z_ARR(zval) -#define Z_ARRVAL_P(zval_p) Z_ARRVAL(*(zval_p)) - -#define Z_OBJ(zval) (zval).value.obj -#define Z_OBJ_P(zval_p) Z_OBJ(*(zval_p)) - -#define Z_OBJ_HT(zval) Z_OBJ(zval)->handlers -#define Z_OBJ_HT_P(zval_p) Z_OBJ_HT(*(zval_p)) - -#define Z_OBJ_HANDLER(zval, hf) Z_OBJ_HT((zval))->hf -#define Z_OBJ_HANDLER_P(zv_p, hf) Z_OBJ_HANDLER(*(zv_p), hf) - -#define Z_OBJ_HANDLE(zval) (Z_OBJ((zval)))->handle -#define Z_OBJ_HANDLE_P(zval_p) Z_OBJ_HANDLE(*(zval_p)) - -#define Z_OBJCE(zval) (Z_OBJ(zval)->ce) -#define Z_OBJCE_P(zval_p) Z_OBJCE(*(zval_p)) - -#define Z_OBJPROP(zval) Z_OBJ_HT((zval))->get_properties(&(zval)) -#define Z_OBJPROP_P(zval_p) Z_OBJPROP(*(zval_p)) - -#define Z_RES(zval) (zval).value.res -#define Z_RES_P(zval_p) Z_RES(*zval_p) - -#define Z_RES_HANDLE(zval) Z_RES(zval)->handle -#define Z_RES_HANDLE_P(zval_p) Z_RES_HANDLE(*zval_p) - -#define Z_RES_TYPE(zval) Z_RES(zval)->type -#define Z_RES_TYPE_P(zval_p) Z_RES_TYPE(*zval_p) - -#define Z_RES_VAL(zval) Z_RES(zval)->ptr -#define Z_RES_VAL_P(zval_p) Z_RES_VAL(*zval_p) - -#define Z_REF(zval) (zval).value.ref -#define Z_REF_P(zval_p) Z_REF(*(zval_p)) - -#define Z_REFVAL(zval) &Z_REF(zval)->val -#define Z_REFVAL_P(zval_p) Z_REFVAL(*(zval_p)) - -#define Z_AST(zval) (zval).value.ast -#define Z_AST_P(zval_p) Z_AST(*(zval_p)) - -#define GC_AST(p) ((zend_ast*)(((char*)p) + sizeof(zend_ast_ref))) - -#define Z_ASTVAL(zval) GC_AST(Z_AST(zval)) -#define Z_ASTVAL_P(zval_p) Z_ASTVAL(*(zval_p)) - -#define Z_INDIRECT(zval) (zval).value.zv -#define Z_INDIRECT_P(zval_p) Z_INDIRECT(*(zval_p)) - -#define Z_CE(zval) (zval).value.ce -#define Z_CE_P(zval_p) Z_CE(*(zval_p)) - -#define Z_FUNC(zval) (zval).value.func -#define Z_FUNC_P(zval_p) Z_FUNC(*(zval_p)) - -#define Z_PTR(zval) (zval).value.ptr -#define Z_PTR_P(zval_p) Z_PTR(*(zval_p)) - -#define ZVAL_UNDEF(z) do { \ - Z_TYPE_INFO_P(z) = IS_UNDEF; \ - } while (0) - -#define ZVAL_NULL(z) do { \ - Z_TYPE_INFO_P(z) = IS_NULL; \ - } while (0) - -#define ZVAL_FALSE(z) do { \ - Z_TYPE_INFO_P(z) = IS_FALSE; \ - } while (0) - -#define ZVAL_TRUE(z) do { \ - Z_TYPE_INFO_P(z) = IS_TRUE; \ - } while (0) - -#define ZVAL_BOOL(z, b) do { \ - Z_TYPE_INFO_P(z) = \ - (b) ? IS_TRUE : IS_FALSE; \ - } while (0) - -#define ZVAL_LONG(z, l) { \ - zval *__z = (z); \ - Z_LVAL_P(__z) = l; \ - Z_TYPE_INFO_P(__z) = IS_LONG; \ - } - -#define ZVAL_DOUBLE(z, d) { \ - zval *__z = (z); \ - Z_DVAL_P(__z) = d; \ - Z_TYPE_INFO_P(__z) = IS_DOUBLE; \ - } - -#define ZVAL_STR(z, s) do { \ - zval *__z = (z); \ - zend_string *__s = (s); \ - Z_STR_P(__z) = __s; \ - /* interned strings support */ \ - Z_TYPE_INFO_P(__z) = ZSTR_IS_INTERNED(__s) ? \ - IS_INTERNED_STRING_EX : \ - IS_STRING_EX; \ - } while (0) - -#define ZVAL_INTERNED_STR(z, s) do { \ - zval *__z = (z); \ - zend_string *__s = (s); \ - Z_STR_P(__z) = __s; \ - Z_TYPE_INFO_P(__z) = IS_INTERNED_STRING_EX; \ - } while (0) - -#define ZVAL_NEW_STR(z, s) do { \ - zval *__z = (z); \ - zend_string *__s = (s); \ - Z_STR_P(__z) = __s; \ - Z_TYPE_INFO_P(__z) = IS_STRING_EX; \ - } while (0) - -#define ZVAL_STR_COPY(z, s) do { \ - zval *__z = (z); \ - zend_string *__s = (s); \ - Z_STR_P(__z) = __s; \ - /* interned strings support */ \ - if (ZSTR_IS_INTERNED(__s)) { \ - Z_TYPE_INFO_P(__z) = IS_INTERNED_STRING_EX; \ - } else { \ - GC_ADDREF(__s); \ - Z_TYPE_INFO_P(__z) = IS_STRING_EX; \ - } \ - } while (0) - -#define ZVAL_ARR(z, a) do { \ - zend_array *__arr = (a); \ - zval *__z = (z); \ - Z_ARR_P(__z) = __arr; \ - Z_TYPE_INFO_P(__z) = IS_ARRAY_EX; \ - } while (0) - -#define ZVAL_NEW_ARR(z) do { \ - zval *__z = (z); \ - zend_array *_arr = \ - (zend_array *) emalloc(sizeof(zend_array)); \ - Z_ARR_P(__z) = _arr; \ - Z_TYPE_INFO_P(__z) = IS_ARRAY_EX; \ - } while (0) - -#define ZVAL_NEW_PERSISTENT_ARR(z) do { \ - zval *__z = (z); \ - zend_array *_arr = \ - (zend_array *) malloc(sizeof(zend_array)); \ - Z_ARR_P(__z) = _arr; \ - Z_TYPE_INFO_P(__z) = IS_ARRAY_EX; \ - } while (0) - -#define ZVAL_OBJ(z, o) do { \ - zval *__z = (z); \ - Z_OBJ_P(__z) = (o); \ - Z_TYPE_INFO_P(__z) = IS_OBJECT_EX; \ - } while (0) - -#define ZVAL_RES(z, r) do { \ - zval *__z = (z); \ - Z_RES_P(__z) = (r); \ - Z_TYPE_INFO_P(__z) = IS_RESOURCE_EX; \ - } while (0) - -#define ZVAL_NEW_RES(z, h, p, t) do { \ - zend_resource *_res = \ - (zend_resource *) emalloc(sizeof(zend_resource)); \ - zval *__z; \ - GC_SET_REFCOUNT(_res, 1); \ - GC_TYPE_INFO(_res) = IS_RESOURCE; \ - _res->handle = (h); \ - _res->type = (t); \ - _res->ptr = (p); \ - __z = (z); \ - Z_RES_P(__z) = _res; \ - Z_TYPE_INFO_P(__z) = IS_RESOURCE_EX; \ - } while (0) - -#define ZVAL_NEW_PERSISTENT_RES(z, h, p, t) do { \ - zend_resource *_res = \ - (zend_resource *) malloc(sizeof(zend_resource)); \ - zval *__z; \ - GC_SET_REFCOUNT(_res, 1); \ - GC_TYPE_INFO(_res) = IS_RESOURCE | \ - (GC_PERSISTENT << GC_FLAGS_SHIFT); \ - _res->handle = (h); \ - _res->type = (t); \ - _res->ptr = (p); \ - __z = (z); \ - Z_RES_P(__z) = _res; \ - Z_TYPE_INFO_P(__z) = IS_RESOURCE_EX; \ - } while (0) - -#define ZVAL_REF(z, r) do { \ - zval *__z = (z); \ - Z_REF_P(__z) = (r); \ - Z_TYPE_INFO_P(__z) = IS_REFERENCE_EX; \ - } while (0) - -#define ZVAL_NEW_EMPTY_REF(z) do { \ - zend_reference *_ref = \ - (zend_reference *) emalloc(sizeof(zend_reference)); \ - GC_SET_REFCOUNT(_ref, 1); \ - GC_TYPE_INFO(_ref) = IS_REFERENCE; \ - _ref->sources.ptr = NULL; \ - Z_REF_P(z) = _ref; \ - Z_TYPE_INFO_P(z) = IS_REFERENCE_EX; \ - } while (0) - -#define ZVAL_NEW_REF(z, r) do { \ - zend_reference *_ref = \ - (zend_reference *) emalloc(sizeof(zend_reference)); \ - GC_SET_REFCOUNT(_ref, 1); \ - GC_TYPE_INFO(_ref) = IS_REFERENCE; \ - ZVAL_COPY_VALUE(&_ref->val, r); \ - _ref->sources.ptr = NULL; \ - Z_REF_P(z) = _ref; \ - Z_TYPE_INFO_P(z) = IS_REFERENCE_EX; \ - } while (0) - -#define ZVAL_MAKE_REF_EX(z, refcount) do { \ - zval *_z = (z); \ - zend_reference *_ref = \ - (zend_reference *) emalloc(sizeof(zend_reference)); \ - GC_SET_REFCOUNT(_ref, (refcount)); \ - GC_TYPE_INFO(_ref) = IS_REFERENCE; \ - ZVAL_COPY_VALUE(&_ref->val, _z); \ - _ref->sources.ptr = NULL; \ - Z_REF_P(_z) = _ref; \ - Z_TYPE_INFO_P(_z) = IS_REFERENCE_EX; \ - } while (0) - -#define ZVAL_NEW_PERSISTENT_REF(z, r) do { \ - zend_reference *_ref = \ - (zend_reference *) malloc(sizeof(zend_reference)); \ - GC_SET_REFCOUNT(_ref, 1); \ - GC_TYPE_INFO(_ref) = IS_REFERENCE | \ - (GC_PERSISTENT << GC_FLAGS_SHIFT); \ - ZVAL_COPY_VALUE(&_ref->val, r); \ - _ref->sources.ptr = NULL; \ - Z_REF_P(z) = _ref; \ - Z_TYPE_INFO_P(z) = IS_REFERENCE_EX; \ - } while (0) - -#define ZVAL_AST(z, ast) do { \ - zval *__z = (z); \ - Z_AST_P(__z) = ast; \ - Z_TYPE_INFO_P(__z) = IS_CONSTANT_AST_EX; \ - } while (0) - -#define ZVAL_INDIRECT(z, v) do { \ - Z_INDIRECT_P(z) = (v); \ - Z_TYPE_INFO_P(z) = IS_INDIRECT; \ - } while (0) - -#define ZVAL_PTR(z, p) do { \ - Z_PTR_P(z) = (p); \ - Z_TYPE_INFO_P(z) = IS_PTR; \ - } while (0) - -#define ZVAL_FUNC(z, f) do { \ - Z_FUNC_P(z) = (f); \ - Z_TYPE_INFO_P(z) = IS_PTR; \ - } while (0) - -#define ZVAL_CE(z, c) do { \ - Z_CE_P(z) = (c); \ - Z_TYPE_INFO_P(z) = IS_PTR; \ - } while (0) - -#define ZVAL_ALIAS_PTR(z, p) do { \ - Z_PTR_P(z) = (p); \ - Z_TYPE_INFO_P(z) = IS_ALIAS_PTR; \ - } while (0) - -#define ZVAL_ERROR(z) do { \ - Z_TYPE_INFO_P(z) = _IS_ERROR; \ - } while (0) - -#define Z_REFCOUNT_P(pz) zval_refcount_p(pz) -#define Z_SET_REFCOUNT_P(pz, rc) zval_set_refcount_p(pz, rc) -#define Z_ADDREF_P(pz) zval_addref_p(pz) -#define Z_DELREF_P(pz) zval_delref_p(pz) - -#define Z_REFCOUNT(z) Z_REFCOUNT_P(&(z)) -#define Z_SET_REFCOUNT(z, rc) Z_SET_REFCOUNT_P(&(z), rc) -#define Z_ADDREF(z) Z_ADDREF_P(&(z)) -#define Z_DELREF(z) Z_DELREF_P(&(z)) - -#define Z_TRY_ADDREF_P(pz) do { \ - if (Z_REFCOUNTED_P((pz))) { \ - Z_ADDREF_P((pz)); \ - } \ -} while (0) - -#define Z_TRY_DELREF_P(pz) do { \ - if (Z_REFCOUNTED_P((pz))) { \ - Z_DELREF_P((pz)); \ - } \ -} while (0) - -#define Z_TRY_ADDREF(z) Z_TRY_ADDREF_P(&(z)) -#define Z_TRY_DELREF(z) Z_TRY_DELREF_P(&(z)) - -#ifndef ZEND_RC_DEBUG -# define ZEND_RC_DEBUG 0 -#endif - -#if ZEND_RC_DEBUG -extern ZEND_API zend_bool zend_rc_debug; -# define ZEND_RC_MOD_CHECK(p) do { \ - if (zend_rc_debug && zval_gc_type((p)->u.type_info) != IS_OBJECT) { \ - ZEND_ASSERT(!(zval_gc_flags((p)->u.type_info) & GC_IMMUTABLE)); \ - ZEND_ASSERT((zval_gc_flags((p)->u.type_info) & (GC_PERSISTENT|GC_PERSISTENT_LOCAL)) != GC_PERSISTENT); \ - } \ - } while (0) -# define GC_MAKE_PERSISTENT_LOCAL(p) do { \ - GC_ADD_FLAGS(p, GC_PERSISTENT_LOCAL); \ - } while (0) -#else -# define ZEND_RC_MOD_CHECK(p) \ - do { } while (0) -# define GC_MAKE_PERSISTENT_LOCAL(p) \ - do { } while (0) -#endif - -static zend_always_inline uint32_t zend_gc_refcount(const zend_refcounted_h *p) { - return p->refcount; -} - -static zend_always_inline uint32_t zend_gc_set_refcount(zend_refcounted_h *p, uint32_t rc) { - p->refcount = rc; - return p->refcount; -} - -static zend_always_inline uint32_t zend_gc_addref(zend_refcounted_h *p) { - ZEND_RC_MOD_CHECK(p); - return ++(p->refcount); -} - -static zend_always_inline uint32_t zend_gc_delref(zend_refcounted_h *p) { - ZEND_ASSERT(p->refcount > 0); - ZEND_RC_MOD_CHECK(p); - return --(p->refcount); -} - -static zend_always_inline uint32_t zend_gc_addref_ex(zend_refcounted_h *p, uint32_t rc) { - ZEND_RC_MOD_CHECK(p); - p->refcount += rc; - return p->refcount; -} - -static zend_always_inline uint32_t zend_gc_delref_ex(zend_refcounted_h *p, uint32_t rc) { - ZEND_RC_MOD_CHECK(p); - p->refcount -= rc; - return p->refcount; -} - -static zend_always_inline uint32_t zval_refcount_p(const zval* pz) { -#if ZEND_DEBUG - ZEND_ASSERT(Z_REFCOUNTED_P(pz) || Z_TYPE_P(pz) == IS_ARRAY); -#endif - return GC_REFCOUNT(Z_COUNTED_P(pz)); -} - -static zend_always_inline uint32_t zval_set_refcount_p(zval* pz, uint32_t rc) { - ZEND_ASSERT(Z_REFCOUNTED_P(pz)); - return GC_SET_REFCOUNT(Z_COUNTED_P(pz), rc); -} - -static zend_always_inline uint32_t zval_addref_p(zval* pz) { - ZEND_ASSERT(Z_REFCOUNTED_P(pz)); - return GC_ADDREF(Z_COUNTED_P(pz)); -} - -static zend_always_inline uint32_t zval_delref_p(zval* pz) { - ZEND_ASSERT(Z_REFCOUNTED_P(pz)); - return GC_DELREF(Z_COUNTED_P(pz)); -} - -#if SIZEOF_SIZE_T == 4 -# define ZVAL_COPY_VALUE_EX(z, v, gc, t) \ - do { \ - uint32_t _w2 = v->value.ww.w2; \ - Z_COUNTED_P(z) = gc; \ - z->value.ww.w2 = _w2; \ - Z_TYPE_INFO_P(z) = t; \ - } while (0) -#elif SIZEOF_SIZE_T == 8 -# define ZVAL_COPY_VALUE_EX(z, v, gc, t) \ - do { \ - Z_COUNTED_P(z) = gc; \ - Z_TYPE_INFO_P(z) = t; \ - } while (0) -#else -# error "Unknown SIZEOF_SIZE_T" -#endif - -#define ZVAL_COPY_VALUE(z, v) \ - do { \ - zval *_z1 = (z); \ - const zval *_z2 = (v); \ - zend_refcounted *_gc = Z_COUNTED_P(_z2); \ - uint32_t _t = Z_TYPE_INFO_P(_z2); \ - ZVAL_COPY_VALUE_EX(_z1, _z2, _gc, _t); \ - } while (0) - -#define ZVAL_COPY(z, v) \ - do { \ - zval *_z1 = (z); \ - const zval *_z2 = (v); \ - zend_refcounted *_gc = Z_COUNTED_P(_z2); \ - uint32_t _t = Z_TYPE_INFO_P(_z2); \ - ZVAL_COPY_VALUE_EX(_z1, _z2, _gc, _t); \ - if (Z_TYPE_INFO_REFCOUNTED(_t)) { \ - GC_ADDREF(_gc); \ - } \ - } while (0) - -#define ZVAL_DUP(z, v) \ - do { \ - zval *_z1 = (z); \ - const zval *_z2 = (v); \ - zend_refcounted *_gc = Z_COUNTED_P(_z2); \ - uint32_t _t = Z_TYPE_INFO_P(_z2); \ - if ((_t & Z_TYPE_MASK) == IS_ARRAY) { \ - ZVAL_ARR(_z1, zend_array_dup((zend_array*)_gc));\ - } else { \ - if (Z_TYPE_INFO_REFCOUNTED(_t)) { \ - GC_ADDREF(_gc); \ - } \ - ZVAL_COPY_VALUE_EX(_z1, _z2, _gc, _t); \ - } \ - } while (0) - - -/* ZVAL_COPY_OR_DUP() should be used instead of ZVAL_COPY() and ZVAL_DUP() - * in all places where the source may be a persistent zval. - */ -#define ZVAL_COPY_OR_DUP(z, v) \ - do { \ - zval *_z1 = (z); \ - const zval *_z2 = (v); \ - zend_refcounted *_gc = Z_COUNTED_P(_z2); \ - uint32_t _t = Z_TYPE_INFO_P(_z2); \ - ZVAL_COPY_VALUE_EX(_z1, _z2, _gc, _t); \ - if (Z_TYPE_INFO_REFCOUNTED(_t)) { \ - if (EXPECTED(!(GC_FLAGS(_gc) & GC_PERSISTENT))) { \ - GC_ADDREF(_gc); \ - } else { \ - zval_copy_ctor_func(_z1); \ - } \ - } \ - } while (0) - -#define ZVAL_DEREF(z) do { \ - if (UNEXPECTED(Z_ISREF_P(z))) { \ - (z) = Z_REFVAL_P(z); \ - } \ - } while (0) - -#define ZVAL_DEINDIRECT(z) do { \ - if (Z_TYPE_P(z) == IS_INDIRECT) { \ - (z) = Z_INDIRECT_P(z); \ - } \ - } while (0) - -#define ZVAL_OPT_DEREF(z) do { \ - if (UNEXPECTED(Z_OPT_ISREF_P(z))) { \ - (z) = Z_REFVAL_P(z); \ - } \ - } while (0) - -#define ZVAL_MAKE_REF(zv) do { \ - zval *__zv = (zv); \ - if (!Z_ISREF_P(__zv)) { \ - ZVAL_NEW_REF(__zv, __zv); \ - } \ - } while (0) - -#define ZVAL_UNREF(z) do { \ - zval *_z = (z); \ - zend_reference *ref; \ - ZEND_ASSERT(Z_ISREF_P(_z)); \ - ref = Z_REF_P(_z); \ - ZVAL_COPY_VALUE(_z, &ref->val); \ - efree_size(ref, sizeof(zend_reference)); \ - } while (0) - -#define ZVAL_COPY_DEREF(z, v) do { \ - zval *_z3 = (v); \ - if (Z_OPT_REFCOUNTED_P(_z3)) { \ - if (UNEXPECTED(Z_OPT_ISREF_P(_z3))) { \ - _z3 = Z_REFVAL_P(_z3); \ - if (Z_OPT_REFCOUNTED_P(_z3)) { \ - Z_ADDREF_P(_z3); \ - } \ - } else { \ - Z_ADDREF_P(_z3); \ - } \ - } \ - ZVAL_COPY_VALUE(z, _z3); \ - } while (0) - - -#define SEPARATE_STRING(zv) do { \ - zval *_zv = (zv); \ - if (Z_REFCOUNT_P(_zv) > 1) { \ - zend_string *_str = Z_STR_P(_zv); \ - ZEND_ASSERT(Z_REFCOUNTED_P(_zv)); \ - ZEND_ASSERT(!ZSTR_IS_INTERNED(_str)); \ - Z_DELREF_P(_zv); \ - ZVAL_NEW_STR(_zv, zend_string_init( \ - ZSTR_VAL(_str), ZSTR_LEN(_str), 0)); \ - } \ - } while (0) - -#define SEPARATE_ARRAY(zv) do { \ - zval *_zv = (zv); \ - zend_array *_arr = Z_ARR_P(_zv); \ - if (UNEXPECTED(GC_REFCOUNT(_arr) > 1)) { \ - if (Z_REFCOUNTED_P(_zv)) { \ - GC_DELREF(_arr); \ - } \ - ZVAL_ARR(_zv, zend_array_dup(_arr)); \ - } \ - } while (0) - -#define SEPARATE_ZVAL_IF_NOT_REF(zv) do { \ - zval *__zv = (zv); \ - if (Z_TYPE_P(__zv) == IS_ARRAY) { \ - if (Z_REFCOUNT_P(__zv) > 1) { \ - if (Z_REFCOUNTED_P(__zv)) { \ - Z_DELREF_P(__zv); \ - } \ - ZVAL_ARR(__zv, zend_array_dup(Z_ARR_P(__zv)));\ - } \ - } \ - } while (0) - -#define SEPARATE_ZVAL_NOREF(zv) do { \ - zval *_zv = (zv); \ - ZEND_ASSERT(Z_TYPE_P(_zv) != IS_REFERENCE); \ - SEPARATE_ZVAL_IF_NOT_REF(_zv); \ - } while (0) - -#define SEPARATE_ZVAL(zv) do { \ - zval *_zv = (zv); \ - if (Z_ISREF_P(_zv)) { \ - zend_reference *_r = Z_REF_P(_zv); \ - ZVAL_COPY_VALUE(_zv, &_r->val); \ - if (GC_DELREF(_r) == 0) { \ - efree_size(_r, sizeof(zend_reference)); \ - } else if (Z_OPT_TYPE_P(_zv) == IS_ARRAY) { \ - ZVAL_ARR(_zv, zend_array_dup(Z_ARR_P(_zv)));\ - break; \ - } else if (Z_OPT_REFCOUNTED_P(_zv)) { \ - Z_ADDREF_P(_zv); \ - break; \ - } \ - } \ - SEPARATE_ZVAL_IF_NOT_REF(_zv); \ - } while (0) - -#define SEPARATE_ARG_IF_REF(varptr) do { \ - ZVAL_DEREF(varptr); \ - if (Z_REFCOUNTED_P(varptr)) { \ - Z_ADDREF_P(varptr); \ - } \ - } while (0) - -/* Properties store a flag distinguishing unset and unintialized properties - * (both use IS_UNDEF type) in the Z_EXTRA space. As such we also need to copy - * the Z_EXTRA space when copying property default values etc. We define separate - * macros for this purpose, so this workaround is easier to remove in the future. */ -#define IS_PROP_UNINIT 1 -#define Z_PROP_FLAG_P(z) Z_EXTRA_P(z) -#define ZVAL_COPY_VALUE_PROP(z, v) \ - do { *(z) = *(v); } while (0) -#define ZVAL_COPY_PROP(z, v) \ - do { ZVAL_COPY(z, v); Z_PROP_FLAG_P(z) = Z_PROP_FLAG_P(v); } while (0) -#define ZVAL_COPY_OR_DUP_PROP(z, v) \ - do { ZVAL_COPY_OR_DUP(z, v); Z_PROP_FLAG_P(z) = Z_PROP_FLAG_P(v); } while (0) - - -#endif /* ZEND_TYPES_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_variables.h b/7.4.27/mac/include/php/Zend/zend_variables.h deleted file mode 100644 index bdee8b1..0000000 --- a/7.4.27/mac/include/php/Zend/zend_variables.h +++ /dev/null @@ -1,96 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - | Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_VARIABLES_H -#define ZEND_VARIABLES_H - -#include "zend_types.h" -#include "zend_gc.h" - -BEGIN_EXTERN_C() - -ZEND_API void ZEND_FASTCALL rc_dtor_func(zend_refcounted *p); -ZEND_API void ZEND_FASTCALL zval_copy_ctor_func(zval *zvalue); - -static zend_always_inline void zval_ptr_dtor_nogc(zval *zval_ptr) -{ - if (Z_REFCOUNTED_P(zval_ptr) && !Z_DELREF_P(zval_ptr)) { - rc_dtor_func(Z_COUNTED_P(zval_ptr)); - } -} - -static zend_always_inline void i_zval_ptr_dtor(zval *zval_ptr) -{ - if (Z_REFCOUNTED_P(zval_ptr)) { - zend_refcounted *ref = Z_COUNTED_P(zval_ptr); - if (!GC_DELREF(ref)) { - rc_dtor_func(ref); - } else { - gc_check_possible_root(ref); - } - } -} - -static zend_always_inline void zval_copy_ctor(zval *zvalue) -{ - if (Z_TYPE_P(zvalue) == IS_ARRAY) { - ZVAL_ARR(zvalue, zend_array_dup(Z_ARR_P(zvalue))); - } else if (Z_REFCOUNTED_P(zvalue)) { - Z_ADDREF_P(zvalue); - } -} - -static zend_always_inline void zval_opt_copy_ctor(zval *zvalue) -{ - if (Z_OPT_TYPE_P(zvalue) == IS_ARRAY) { - ZVAL_ARR(zvalue, zend_array_dup(Z_ARR_P(zvalue))); - } else if (Z_OPT_REFCOUNTED_P(zvalue)) { - Z_ADDREF_P(zvalue); - } -} - -static zend_always_inline void zval_ptr_dtor_str(zval *zval_ptr) -{ - if (Z_REFCOUNTED_P(zval_ptr) && !Z_DELREF_P(zval_ptr)) { - ZEND_ASSERT(Z_TYPE_P(zval_ptr) == IS_STRING); - ZEND_ASSERT(!ZSTR_IS_INTERNED(Z_STR_P(zval_ptr))); - ZEND_ASSERT(!(GC_FLAGS(Z_STR_P(zval_ptr)) & IS_STR_PERSISTENT)); - efree(Z_STR_P(zval_ptr)); - } -} - -ZEND_API void zval_ptr_dtor(zval *zval_ptr); -ZEND_API void zval_internal_ptr_dtor(zval *zvalue); - -/* Kept for compatibility */ -#define zval_dtor(zvalue) zval_ptr_dtor_nogc(zvalue) -#define zval_internal_dtor(zvalue) zval_internal_ptr_dtor(zvalue) -#define zval_dtor_func rc_dtor_func -#define zval_ptr_dtor_wrapper zval_ptr_dtor -#define zval_internal_ptr_dtor_wrapper zval_internal_ptr_dtor - -ZEND_API void zval_add_ref(zval *p); - -END_EXTERN_C() - -#define ZVAL_PTR_DTOR zval_ptr_dtor -#define ZVAL_INTERNAL_PTR_DTOR zval_internal_ptr_dtor - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_virtual_cwd.h b/7.4.27/mac/include/php/Zend/zend_virtual_cwd.h deleted file mode 100644 index 574bee9..0000000 --- a/7.4.27/mac/include/php/Zend/zend_virtual_cwd.h +++ /dev/null @@ -1,385 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Sascha Schumann | - | Pierre Joye | - +----------------------------------------------------------------------+ -*/ - -#ifndef VIRTUAL_CWD_H -#define VIRTUAL_CWD_H - -#include "TSRM.h" - -#include -#include -#include - -#ifdef HAVE_UTIME_H -#include -#endif - -#include -#include - -#if HAVE_SYS_PARAM_H -# include -#endif - -#ifndef MAXPATHLEN -# if _WIN32 -# include "win32/ioutil.h" -# define MAXPATHLEN PHP_WIN32_IOUTIL_MAXPATHLEN -# elif PATH_MAX -# define MAXPATHLEN PATH_MAX -# elif defined(MAX_PATH) -# define MAXPATHLEN MAX_PATH -# else -# define MAXPATHLEN 256 -# endif -#endif - -#ifdef ZTS -#define VIRTUAL_DIR -#endif - -#ifndef ZEND_WIN32 -#include -#else -#include -#endif - -#if defined(__osf__) || defined(_AIX) -#include -#endif - -#ifdef ZEND_WIN32 -#include "win32/readdir.h" -#include -#include "win32/ioutil.h" -/* mode_t isn't defined on Windows */ -typedef unsigned short mode_t; - -#define DEFAULT_SLASH '\\' -#define DEFAULT_DIR_SEPARATOR ';' -#define IS_SLASH(c) ((c) == '/' || (c) == '\\') -#define IS_SLASH_P(c) (*(c) == '/' || \ - (*(c) == '\\' && !IsDBCSLeadByte(*(c-1)))) - -/* COPY_WHEN_ABSOLUTE is 2 under Win32 because by chance both regular absolute paths - in the file system and UNC paths need copying of two characters */ -#define COPY_WHEN_ABSOLUTE(path) 2 -#define IS_UNC_PATH(path, len) \ - (len >= 2 && IS_SLASH(path[0]) && IS_SLASH(path[1])) -#define IS_ABSOLUTE_PATH(path, len) \ - (len >= 2 && (/* is local */isalpha(path[0]) && path[1] == ':' || /* is UNC */IS_SLASH(path[0]) && IS_SLASH(path[1]))) - -#else -#ifdef HAVE_DIRENT_H -#include -#endif - -#define DEFAULT_SLASH '/' - -#ifdef __riscos__ -#define DEFAULT_DIR_SEPARATOR ';' -#else -#define DEFAULT_DIR_SEPARATOR ':' -#endif - -#define IS_SLASH(c) ((c) == '/') -#define IS_SLASH_P(c) (*(c) == '/') - -#endif - - -#ifndef COPY_WHEN_ABSOLUTE -#define COPY_WHEN_ABSOLUTE(path) 0 -#endif - -#ifndef IS_ABSOLUTE_PATH -#define IS_ABSOLUTE_PATH(path, len) \ - (IS_SLASH(path[0])) -#endif - -#ifdef TSRM_EXPORTS -#define CWD_EXPORTS -#endif - -#ifdef ZEND_WIN32 -# ifdef CWD_EXPORTS -# define CWD_API __declspec(dllexport) -# else -# define CWD_API __declspec(dllimport) -# endif -#elif defined(__GNUC__) && __GNUC__ >= 4 -# define CWD_API __attribute__ ((visibility("default"))) -#else -# define CWD_API -#endif - -#ifdef ZEND_WIN32 -# define php_sys_stat_ex php_win32_ioutil_stat_ex -# define php_sys_stat php_win32_ioutil_stat -# define php_sys_lstat php_win32_ioutil_lstat -# define php_sys_fstat php_win32_ioutil_fstat -# define php_sys_readlink php_win32_ioutil_readlink -# define php_sys_symlink php_win32_ioutil_symlink -# define php_sys_link php_win32_ioutil_link -#else -# define php_sys_stat stat -# define php_sys_lstat lstat -# define php_sys_fstat fstat -# ifdef HAVE_SYMLINK -# define php_sys_readlink(link, target, target_len) readlink(link, target, target_len) -# define php_sys_symlink symlink -# define php_sys_link link -# endif -#endif - -typedef struct _cwd_state { - char *cwd; - size_t cwd_length; -} cwd_state; - -typedef int (*verify_path_func)(const cwd_state *); - -CWD_API void virtual_cwd_startup(void); -CWD_API void virtual_cwd_shutdown(void); -CWD_API int virtual_cwd_activate(void); -CWD_API int virtual_cwd_deactivate(void); -CWD_API char *virtual_getcwd_ex(size_t *length); -CWD_API char *virtual_getcwd(char *buf, size_t size); -CWD_API int virtual_chdir(const char *path); -CWD_API int virtual_chdir_file(const char *path, int (*p_chdir)(const char *path)); -CWD_API int virtual_filepath(const char *path, char **filepath); -CWD_API int virtual_filepath_ex(const char *path, char **filepath, verify_path_func verify_path); -CWD_API char *virtual_realpath(const char *path, char *real_path); -CWD_API FILE *virtual_fopen(const char *path, const char *mode); -CWD_API int virtual_open(const char *path, int flags, ...); -CWD_API int virtual_creat(const char *path, mode_t mode); -CWD_API int virtual_rename(const char *oldname, const char *newname); -CWD_API int virtual_stat(const char *path, zend_stat_t *buf); -CWD_API int virtual_lstat(const char *path, zend_stat_t *buf); -CWD_API int virtual_unlink(const char *path); -CWD_API int virtual_mkdir(const char *pathname, mode_t mode); -CWD_API int virtual_rmdir(const char *pathname); -CWD_API DIR *virtual_opendir(const char *pathname); -CWD_API FILE *virtual_popen(const char *command, const char *type); -CWD_API int virtual_access(const char *pathname, int mode); - -#if HAVE_UTIME -CWD_API int virtual_utime(const char *filename, struct utimbuf *buf); -#endif -CWD_API int virtual_chmod(const char *filename, mode_t mode); -#if !defined(ZEND_WIN32) -CWD_API int virtual_chown(const char *filename, uid_t owner, gid_t group, int link); -#endif - -/* One of the following constants must be used as the last argument - in virtual_file_ex() call. */ - -#define CWD_EXPAND 0 /* expand "." and ".." but don't resolve symlinks */ -#define CWD_FILEPATH 1 /* resolve symlinks if file is exist otherwise expand */ -#define CWD_REALPATH 2 /* call realpath(), resolve symlinks. File must exist */ - -CWD_API int virtual_file_ex(cwd_state *state, const char *path, verify_path_func verify_path, int use_realpath); - -CWD_API char *tsrm_realpath(const char *path, char *real_path); - -#define REALPATH_CACHE_TTL (2*60) /* 2 minutes */ -#define REALPATH_CACHE_SIZE 0 /* disabled while php.ini isn't loaded */ - -typedef struct _realpath_cache_bucket { - zend_ulong key; - char *path; - char *realpath; - struct _realpath_cache_bucket *next; - time_t expires; - uint16_t path_len; - uint16_t realpath_len; - uint8_t is_dir:1; -#ifdef ZEND_WIN32 - uint8_t is_rvalid:1; - uint8_t is_readable:1; - uint8_t is_wvalid:1; - uint8_t is_writable:1; -#endif -} realpath_cache_bucket; - -typedef struct _virtual_cwd_globals { - cwd_state cwd; - zend_long realpath_cache_size; - zend_long realpath_cache_size_limit; - zend_long realpath_cache_ttl; - realpath_cache_bucket *realpath_cache[1024]; -} virtual_cwd_globals; - -#ifdef ZTS -extern ts_rsrc_id cwd_globals_id; -extern size_t cwd_globals_offset; -# define CWDG(v) ZEND_TSRMG_FAST(cwd_globals_offset, virtual_cwd_globals *, v) -#else -extern virtual_cwd_globals cwd_globals; -# define CWDG(v) (cwd_globals.v) -#endif - -CWD_API void realpath_cache_clean(void); -CWD_API void realpath_cache_del(const char *path, size_t path_len); -CWD_API realpath_cache_bucket* realpath_cache_lookup(const char *path, size_t path_len, time_t t); -CWD_API zend_long realpath_cache_size(void); -CWD_API zend_long realpath_cache_max_buckets(void); -CWD_API realpath_cache_bucket** realpath_cache_get_buckets(void); - -#ifdef CWD_EXPORTS -extern void virtual_cwd_main_cwd_init(uint8_t); -#endif - -/* The actual macros to be used in programs using TSRM - * If the program defines VIRTUAL_DIR it will use the - * virtual_* functions - */ - -#ifdef VIRTUAL_DIR - -#define VCWD_GETCWD(buff, size) virtual_getcwd(buff, size) -#define VCWD_FOPEN(path, mode) virtual_fopen(path, mode) -/* Because open() has two modes, we have to macros to replace it */ -#define VCWD_OPEN(path, flags) virtual_open(path, flags) -#define VCWD_OPEN_MODE(path, flags, mode) virtual_open(path, flags, mode) -#define VCWD_CREAT(path, mode) virtual_creat(path, mode) -#define VCWD_CHDIR(path) virtual_chdir(path) -#define VCWD_CHDIR_FILE(path) virtual_chdir_file(path, virtual_chdir) -#define VCWD_GETWD(buf) -#define VCWD_REALPATH(path, real_path) virtual_realpath(path, real_path) -#define VCWD_RENAME(oldname, newname) virtual_rename(oldname, newname) -#define VCWD_STAT(path, buff) virtual_stat(path, buff) -# define VCWD_LSTAT(path, buff) virtual_lstat(path, buff) -#define VCWD_UNLINK(path) virtual_unlink(path) -#define VCWD_MKDIR(pathname, mode) virtual_mkdir(pathname, mode) -#define VCWD_RMDIR(pathname) virtual_rmdir(pathname) -#define VCWD_OPENDIR(pathname) virtual_opendir(pathname) -#define VCWD_POPEN(command, type) virtual_popen(command, type) -#define VCWD_ACCESS(pathname, mode) virtual_access(pathname, mode) -#if HAVE_UTIME -#define VCWD_UTIME(path, time) virtual_utime(path, time) -#endif -#define VCWD_CHMOD(path, mode) virtual_chmod(path, mode) -#if !defined(ZEND_WIN32) -#define VCWD_CHOWN(path, owner, group) virtual_chown(path, owner, group, 0) -#if HAVE_LCHOWN -#define VCWD_LCHOWN(path, owner, group) virtual_chown(path, owner, group, 1) -#endif -#endif - -#else - -#define VCWD_CREAT(path, mode) creat(path, mode) -/* rename on windows will fail if newname already exists. - MoveFileEx has to be used */ -#if defined(ZEND_WIN32) -#define VCWD_FOPEN(path, mode) php_win32_ioutil_fopen(path, mode) -#define VCWD_OPEN(path, flags) php_win32_ioutil_open(path, flags) -#define VCWD_OPEN_MODE(path, flags, mode) php_win32_ioutil_open(path, flags, mode) -# define VCWD_RENAME(oldname, newname) php_win32_ioutil_rename(oldname, newname) -#define VCWD_MKDIR(pathname, mode) php_win32_ioutil_mkdir(pathname, mode) -#define VCWD_RMDIR(pathname) php_win32_ioutil_rmdir(pathname) -#define VCWD_UNLINK(path) php_win32_ioutil_unlink(path) -#define VCWD_CHDIR(path) php_win32_ioutil_chdir(path) -#define VCWD_ACCESS(pathname, mode) tsrm_win32_access(pathname, mode) -#define VCWD_GETCWD(buff, size) php_win32_ioutil_getcwd(buff, size) -#define VCWD_CHMOD(path, mode) php_win32_ioutil_chmod(path, mode) -#else -#define VCWD_FOPEN(path, mode) fopen(path, mode) -#define VCWD_OPEN(path, flags) open(path, flags) -#define VCWD_OPEN_MODE(path, flags, mode) open(path, flags, mode) -# define VCWD_RENAME(oldname, newname) rename(oldname, newname) -#define VCWD_MKDIR(pathname, mode) mkdir(pathname, mode) -#define VCWD_RMDIR(pathname) rmdir(pathname) -#define VCWD_UNLINK(path) unlink(path) -#define VCWD_CHDIR(path) chdir(path) -#define VCWD_ACCESS(pathname, mode) access(pathname, mode) -#define VCWD_GETCWD(buff, size) getcwd(buff, size) -#define VCWD_CHMOD(path, mode) chmod(path, mode) -#endif - -#define VCWD_CHDIR_FILE(path) virtual_chdir_file(path, chdir) -#define VCWD_GETWD(buf) getwd(buf) -#define VCWD_STAT(path, buff) php_sys_stat(path, buff) -#define VCWD_LSTAT(path, buff) lstat(path, buff) -#define VCWD_OPENDIR(pathname) opendir(pathname) -#define VCWD_POPEN(command, type) popen(command, type) - -#define VCWD_REALPATH(path, real_path) tsrm_realpath(path, real_path) - -#if HAVE_UTIME -# ifdef ZEND_WIN32 -# define VCWD_UTIME(path, time) win32_utime(path, time) -# else -# define VCWD_UTIME(path, time) utime(path, time) -# endif -#endif - -#if !defined(ZEND_WIN32) -#define VCWD_CHOWN(path, owner, group) chown(path, owner, group) -#if HAVE_LCHOWN -#define VCWD_LCHOWN(path, owner, group) lchown(path, owner, group) -#endif -#endif - -#endif - -/* Global stat declarations */ -#ifndef _S_IFDIR -#define _S_IFDIR S_IFDIR -#endif - -#ifndef _S_IFREG -#define _S_IFREG S_IFREG -#endif - -#ifndef S_IFLNK -#define _IFLNK 0120000 /* symbolic link */ -#define S_IFLNK _IFLNK -#endif - -#ifndef S_ISDIR -#define S_ISDIR(mode) (((mode)&S_IFMT) == S_IFDIR) -#endif - -#ifndef S_ISREG -#define S_ISREG(mode) (((mode)&S_IFMT) == S_IFREG) -#endif - -#ifndef S_ISLNK -#define S_ISLNK(mode) (((mode)&S_IFMT) == S_IFLNK) -#endif - -#ifndef S_IXROOT -#define S_IXROOT ( S_IXUSR | S_IXGRP | S_IXOTH ) -#endif - -/* XXX should be _S_IFIFO? */ -#ifndef S_IFIFO -#define _IFIFO 0010000 /* fifo */ -#define S_IFIFO _IFIFO -#endif - -#ifndef S_IFBLK -#define _IFBLK 0060000 /* block special */ -#define S_IFBLK _IFBLK -#endif - -#endif /* VIRTUAL_CWD_H */ diff --git a/7.4.27/mac/include/php/Zend/zend_vm.h b/7.4.27/mac/include/php/Zend/zend_vm.h deleted file mode 100644 index f246e7f..0000000 --- a/7.4.27/mac/include/php/Zend/zend_vm.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_VM_H -#define ZEND_VM_H - -BEGIN_EXTERN_C() - -ZEND_API void ZEND_FASTCALL zend_vm_set_opcode_handler(zend_op* opcode); -ZEND_API void ZEND_FASTCALL zend_vm_set_opcode_handler_ex(zend_op* opcode, uint32_t op1_info, uint32_t op2_info, uint32_t res_info); -ZEND_API void ZEND_FASTCALL zend_serialize_opcode_handler(zend_op *op); -ZEND_API void ZEND_FASTCALL zend_deserialize_opcode_handler(zend_op *op); -ZEND_API const void* ZEND_FASTCALL zend_get_opcode_handler_func(const zend_op *op); -ZEND_API const zend_op *zend_get_halt_op(void); -ZEND_API int ZEND_FASTCALL zend_vm_call_opcode_handler(zend_execute_data *ex); -ZEND_API int zend_vm_kind(void); - -void zend_vm_init(void); -void zend_vm_dtor(void); - -END_EXTERN_C() - -#define ZEND_VM_SET_OPCODE_HANDLER(opline) zend_vm_set_opcode_handler(opline) - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_vm_def.h b/7.4.27/mac/include/php/Zend/zend_vm_def.h deleted file mode 100644 index d362b01..0000000 --- a/7.4.27/mac/include/php/Zend/zend_vm_def.h +++ /dev/null @@ -1,9423 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - | Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -/* If you change this file, please regenerate the zend_vm_execute.h and - * zend_vm_opcodes.h files by running: - * php zend_vm_gen.php - */ - -ZEND_VM_HELPER(zend_add_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - add_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_NOCONSTCONST_HANDLER(1, ZEND_ADD, CONST|TMPVARCV, CONST|TMPVARCV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2, *result; - double d1, d2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (ZEND_VM_SPEC && OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - fast_long_add_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - ZEND_VM_C_GOTO(add_double); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -ZEND_VM_C_LABEL(add_double): - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 + d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - ZEND_VM_C_GOTO(add_double); - } - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_add_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_HELPER(zend_sub_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - sub_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_NOCONSTCONST_HANDLER(2, ZEND_SUB, CONST|TMPVARCV, CONST|TMPVARCV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2, *result; - double d1, d2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (ZEND_VM_SPEC && OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - fast_long_sub_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - ZEND_VM_C_GOTO(sub_double); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -ZEND_VM_C_LABEL(sub_double): - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 - d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - ZEND_VM_C_GOTO(sub_double); - } - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_sub_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_HELPER(zend_mul_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - mul_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(3, ZEND_MUL, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(COMMUTATIVE)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2, *result; - double d1, d2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (ZEND_VM_SPEC && OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - zend_long overflow; - - result = EX_VAR(opline->result.var); - ZEND_SIGNED_MULTIPLY_LONG(Z_LVAL_P(op1), Z_LVAL_P(op2), Z_LVAL_P(result), Z_DVAL_P(result), overflow); - Z_TYPE_INFO_P(result) = overflow ? IS_DOUBLE : IS_LONG; - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - ZEND_VM_C_GOTO(mul_double); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -ZEND_VM_C_LABEL(mul_double): - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 * d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - ZEND_VM_C_GOTO(mul_double); - } - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_mul_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(4, ZEND_DIV, CONST|TMPVAR|CV, CONST|TMPVAR|CV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = GET_OP1_ZVAL_PTR(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR(BP_VAR_R); - fast_div_function(EX_VAR(opline->result.var), op1, op2); - FREE_OP1(); - FREE_OP2(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_HELPER(zend_mod_by_zero_helper, ANY, ANY) -{ - USE_OPLINE - - SAVE_OPLINE(); - zend_throw_exception_ex(zend_ce_division_by_zero_error, 0, "Modulo by zero"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); -} - -ZEND_VM_HELPER(zend_mod_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - mod_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(5, ZEND_MOD, CONST|TMPVARCV, CONST|TMPVARCV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2, *result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (ZEND_VM_SPEC && OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - if (UNEXPECTED(Z_LVAL_P(op2) == 0)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_mod_by_zero_helper); - } else if (UNEXPECTED(Z_LVAL_P(op2) == -1)) { - /* Prevent overflow error/crash if op1==ZEND_LONG_MIN */ - ZVAL_LONG(result, 0); - } else { - ZVAL_LONG(result, Z_LVAL_P(op1) % Z_LVAL_P(op2)); - } - ZEND_VM_NEXT_OPCODE(); - } - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_mod_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_HELPER(zend_shift_left_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - shift_left_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(6, ZEND_SL, CONST|TMPVARCV, CONST|TMPVARCV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (ZEND_VM_SPEC && OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG) - && EXPECTED((zend_ulong)Z_LVAL_P(op2) < SIZEOF_ZEND_LONG * 8)) { - /* Perform shift on unsigned numbers to get well-defined wrap behavior. */ - ZVAL_LONG(EX_VAR(opline->result.var), - (zend_long) ((zend_ulong) Z_LVAL_P(op1) << Z_LVAL_P(op2))); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_shift_left_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_HELPER(zend_shift_right_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - shift_right_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(7, ZEND_SR, CONST|TMPVARCV, CONST|TMPVARCV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (ZEND_VM_SPEC && OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG) - && EXPECTED((zend_ulong)Z_LVAL_P(op2) < SIZEOF_ZEND_LONG * 8)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) >> Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_shift_right_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(12, ZEND_POW, CONST|TMPVAR|CV, CONST|TMPVAR|CV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = GET_OP1_ZVAL_PTR(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR(BP_VAR_R); - pow_function(EX_VAR(opline->result.var), op1, op2); - FREE_OP1(); - FREE_OP2(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(8, ZEND_CONCAT, CONST|TMPVAR|CV, CONST|TMPVAR|CV, SPEC(NO_CONST_CONST)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - - if ((OP1_TYPE == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - (OP2_TYPE == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if (OP1_TYPE != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (OP2_TYPE == IS_CONST || OP2_TYPE == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if (OP2_TYPE != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (OP1_TYPE == IS_CONST || OP1_TYPE == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if (OP1_TYPE != IS_CONST && OP1_TYPE != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - if (UNEXPECTED(len > ZSTR_MAX_LEN - ZSTR_LEN(op2_str))) { - zend_error_noreturn(E_ERROR, "Integer overflow in memory allocation"); - } - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } else { - SAVE_OPLINE(); - - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = ZVAL_UNDEFINED_OP1(); - } - if (OP2_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - op2 = ZVAL_UNDEFINED_OP2(); - } - concat_function(EX_VAR(opline->result.var), op1, op2); - FREE_OP1(); - FREE_OP2(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(16, ZEND_IS_IDENTICAL, CONST|TMP|VAR|CV, CONST|TMP|VAR|CV, SPEC(COMMUTATIVE)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_DEREF(BP_VAR_R); - result = fast_is_identical_function(op1, op2); - FREE_OP1(); - FREE_OP2(); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(17, ZEND_IS_NOT_IDENTICAL, CONST|TMP|VAR|CV, CONST|TMP|VAR|CV, SPEC(COMMUTATIVE)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_DEREF(BP_VAR_R); - result = fast_is_not_identical_function(op1, op2); - FREE_OP1(); - FREE_OP2(); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HELPER(zend_is_equal_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - compare_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - if (Z_LVAL_P(EX_VAR(opline->result.var)) == 0) { - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(18, ZEND_IS_EQUAL, CONST|TMPVAR|CV, CONST|TMPVAR|CV, SPEC(SMART_BRANCH,COMMUTATIVE)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (ZEND_VM_SPEC && OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -ZEND_VM_C_LABEL(is_equal_true): - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -ZEND_VM_C_LABEL(is_equal_false): - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - ZEND_VM_C_GOTO(is_equal_double); - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -ZEND_VM_C_LABEL(is_equal_double): - if (d1 == d2) { - ZEND_VM_C_GOTO(is_equal_true); - } else { - ZEND_VM_C_GOTO(is_equal_false); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - ZEND_VM_C_GOTO(is_equal_double); - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - ZEND_VM_C_GOTO(is_equal_true); - } else { - ZEND_VM_C_GOTO(is_equal_false); - } - } - } - ZEND_VM_DISPATCH_TO_HELPER(zend_is_equal_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_HELPER(zend_is_not_equal_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - compare_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - if (Z_LVAL_P(EX_VAR(opline->result.var)) != 0) { - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(19, ZEND_IS_NOT_EQUAL, CONST|TMPVAR|CV, CONST|TMPVAR|CV, SPEC(SMART_BRANCH,COMMUTATIVE)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (ZEND_VM_SPEC && OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -ZEND_VM_C_LABEL(is_not_equal_true): - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -ZEND_VM_C_LABEL(is_not_equal_false): - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - ZEND_VM_C_GOTO(is_not_equal_double); - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -ZEND_VM_C_LABEL(is_not_equal_double): - if (d1 != d2) { - ZEND_VM_C_GOTO(is_not_equal_true); - } else { - ZEND_VM_C_GOTO(is_not_equal_false); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - ZEND_VM_C_GOTO(is_not_equal_double); - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - ZEND_VM_C_GOTO(is_not_equal_true); - } else { - ZEND_VM_C_GOTO(is_not_equal_false); - } - } - } - ZEND_VM_DISPATCH_TO_HELPER(zend_is_not_equal_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_HELPER(zend_is_smaller_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - compare_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - if (Z_LVAL_P(EX_VAR(opline->result.var)) < 0) { - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } -} - -ZEND_VM_HOT_NOCONSTCONST_HANDLER(20, ZEND_IS_SMALLER, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (ZEND_VM_SPEC && OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) < Z_LVAL_P(op2))) { -ZEND_VM_C_LABEL(is_smaller_true): - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -ZEND_VM_C_LABEL(is_smaller_false): - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - ZEND_VM_C_GOTO(is_smaller_double); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -ZEND_VM_C_LABEL(is_smaller_double): - if (d1 < d2) { - ZEND_VM_C_GOTO(is_smaller_true); - } else { - ZEND_VM_C_GOTO(is_smaller_false); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - ZEND_VM_C_GOTO(is_smaller_double); - } - } - ZEND_VM_DISPATCH_TO_HELPER(zend_is_smaller_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_HELPER(zend_is_smaller_or_equal_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - compare_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - if (Z_LVAL_P(EX_VAR(opline->result.var)) <= 0) { - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } -} - -ZEND_VM_HOT_NOCONSTCONST_HANDLER(21, ZEND_IS_SMALLER_OR_EQUAL, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (ZEND_VM_SPEC && OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) <= Z_LVAL_P(op2))) { -ZEND_VM_C_LABEL(is_smaller_or_equal_true): - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -ZEND_VM_C_LABEL(is_smaller_or_equal_false): - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - ZEND_VM_C_GOTO(is_smaller_or_equal_double); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -ZEND_VM_C_LABEL(is_smaller_or_equal_double): - if (d1 <= d2) { - ZEND_VM_C_GOTO(is_smaller_or_equal_true); - } else { - ZEND_VM_C_GOTO(is_smaller_or_equal_false); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - ZEND_VM_C_GOTO(is_smaller_or_equal_double); - } - } - ZEND_VM_DISPATCH_TO_HELPER(zend_is_smaller_or_equal_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(170, ZEND_SPACESHIP, CONST|TMPVAR|CV, CONST|TMPVAR|CV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = GET_OP1_ZVAL_PTR(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR(BP_VAR_R); - compare_function(EX_VAR(opline->result.var), op1, op2); - FREE_OP1(); - FREE_OP2(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HELPER(zend_bw_or_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - bitwise_or_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(9, ZEND_BW_OR, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(COMMUTATIVE)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (ZEND_VM_SPEC && OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) | Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_bw_or_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_HELPER(zend_bw_and_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - bitwise_and_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(10, ZEND_BW_AND, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(COMMUTATIVE)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (ZEND_VM_SPEC && OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) & Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_bw_and_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_HELPER(zend_bw_xor_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - bitwise_xor_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(11, ZEND_BW_XOR, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(COMMUTATIVE)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (ZEND_VM_SPEC && OP1_TYPE == IS_CONST && OP2_TYPE == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) ^ Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_bw_xor_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(15, ZEND_BOOL_XOR, CONST|TMPVAR|CV, CONST|TMPVAR|CV, SPEC(COMMUTATIVE)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = GET_OP1_ZVAL_PTR(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR(BP_VAR_R); - boolean_xor_function(EX_VAR(opline->result.var), op1, op2); - FREE_OP1(); - FREE_OP2(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONST_HANDLER(13, ZEND_BW_NOT, CONST|TMPVAR|CV, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), ~Z_LVAL_P(op1)); - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = ZVAL_UNDEFINED_OP1(); - } - bitwise_not_function(EX_VAR(opline->result.var), op1); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONST_HANDLER(14, ZEND_BOOL_NOT, CONST|TMPVAR|CV, ANY) -{ - USE_OPLINE - zval *val; - zend_free_op free_op1; - - val = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - /* The result and op1 can be the same cv zval */ - const uint32_t orig_val_type = Z_TYPE_INFO_P(val); - ZVAL_TRUE(EX_VAR(opline->result.var)); - if (OP1_TYPE == IS_CV && UNEXPECTED(orig_val_type == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } else { - SAVE_OPLINE(); - ZVAL_BOOL(EX_VAR(opline->result.var), !i_zend_is_true(val)); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_COLD_HELPER(zend_this_not_in_object_context_helper, ANY, ANY) -{ - USE_OPLINE - - SAVE_OPLINE(); - zend_throw_error(NULL, "Using $this when not in object context"); - if ((opline+1)->opcode == ZEND_OP_DATA) { - FREE_UNFETCHED_OP_DATA(); - } - FREE_UNFETCHED_OP2(); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); -} - -ZEND_VM_COLD_HELPER(zend_undefined_function_helper, ANY, ANY) -{ - USE_OPLINE - zval *function_name; - - SAVE_OPLINE(); - function_name = RT_CONSTANT(opline, opline->op2); - zend_throw_error(NULL, "Call to undefined function %s()", Z_STRVAL_P(function_name)); - HANDLE_EXCEPTION(); -} - -ZEND_VM_HANDLER(28, ZEND_ASSIGN_OBJ_OP, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, OP) -{ - USE_OPLINE - zend_free_op free_op1, free_op2, free_op_data; - zval *object; - zval *property; - zval *value; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = GET_OP1_OBJ_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - - property = GET_OP2_ZVAL_PTR(BP_VAR_R); - - do { - value = GET_OP_DATA_ZVAL_PTR(BP_VAR_R); - - if (OP1_TYPE != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - ZEND_VM_C_GOTO(assign_op_object); - } - if (OP1_TYPE == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -ZEND_VM_C_LABEL(assign_op_object): - /* here we are sure we are dealing with an object */ - cache_slot = (OP2_TYPE == IS_CONST) ? CACHE_ADDR((opline+1)->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - zval *orig_zptr = zptr; - zend_reference *ref; - - do { - if (UNEXPECTED(Z_ISREF_P(zptr))) { - ref = Z_REF_P(zptr); - zptr = Z_REFVAL_P(zptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - - if (OP2_TYPE == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), orig_zptr); - } - if (UNEXPECTED(prop_info)) { - /* special case for typed properties */ - zend_binary_assign_op_typed_prop(prop_info, zptr, value OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_binary_op(zptr, zptr, value OPLINE_CC); - } - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), zptr); - } - } - } else { - zend_assign_op_overloaded_property(object, property, cache_slot, value OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - FREE_OP_DATA(); - FREE_OP2(); - FREE_OP1_VAR_PTR(); - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMP|VAR|CV, UNUSED|CONST|TMPVAR) */ -ZEND_VM_HANDLER(29, ZEND_ASSIGN_STATIC_PROP_OP, ANY, ANY, OP) -{ - /* This helper actually never will receive IS_VAR as second op, and has the same handling for VAR and TMP in the first op, but for interoperability with the other binary_assign_op helpers, it is necessary to "include" it */ - - USE_OPLINE - zend_free_op free_op_data; - zval *prop, *value; - zend_property_info *prop_info; - zend_reference *ref; - - SAVE_OPLINE(); - - if (UNEXPECTED(zend_fetch_static_property_address(&prop, &prop_info, (opline+1)->extended_value, BP_VAR_RW, 0 OPLINE_CC EXECUTE_DATA_CC) != SUCCESS)) { - ZEND_ASSERT(EG(exception)); - UNDEF_RESULT(); - FREE_UNFETCHED_OP_DATA(); - HANDLE_EXCEPTION(); - } - - value = GET_OP_DATA_ZVAL_PTR(BP_VAR_R); - - do { - if (UNEXPECTED(Z_ISREF_P(prop))) { - ref = Z_REF_P(prop); - prop = Z_REFVAL_P(prop); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - - if (UNEXPECTED(prop_info->type)) { - /* special case for typed properties */ - zend_binary_assign_op_typed_prop(prop_info, prop, value OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_binary_op(prop, prop, value OPLINE_CC); - } - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), prop); - } - - FREE_OP_DATA(); - /* assign_static_prop has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -ZEND_VM_HANDLER(27, ZEND_ASSIGN_DIM_OP, VAR|CV, CONST|TMPVAR|UNUSED|NEXT|CV, OP) -{ - USE_OPLINE - zend_free_op free_op1, free_op2, free_op_data1; - zval *var_ptr; - zval *value, *container, *dim; - - SAVE_OPLINE(); - container = GET_OP1_OBJ_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -ZEND_VM_C_LABEL(assign_dim_op_array): - SEPARATE_ARRAY(container); -ZEND_VM_C_LABEL(assign_dim_op_new_array): - dim = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (OP2_TYPE == IS_UNUSED) { - var_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(container), &EG(uninitialized_zval)); - if (UNEXPECTED(!var_ptr)) { - zend_cannot_add_element(); - ZEND_VM_C_GOTO(assign_dim_op_ret_null); - } - } else { - if (OP2_TYPE == IS_CONST) { - var_ptr = zend_fetch_dimension_address_inner_RW_CONST(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } else { - var_ptr = zend_fetch_dimension_address_inner_RW(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(!var_ptr)) { - ZEND_VM_C_GOTO(assign_dim_op_ret_null); - } - } - - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data1); - - do { - if (OP2_TYPE != IS_UNUSED && UNEXPECTED(Z_ISREF_P(var_ptr))) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - FREE_OP(free_op_data1); - } else { - if (EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - ZEND_VM_C_GOTO(assign_dim_op_array); - } - } - - dim = GET_OP2_ZVAL_PTR(BP_VAR_R); - - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if (OP2_TYPE == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_binary_assign_op_obj_dim(container, dim OPLINE_CC EXECUTE_DATA_CC); - } else if (EXPECTED(Z_TYPE_P(container) <= IS_FALSE)) { - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - ZVAL_ARR(container, zend_new_array(8)); - ZEND_VM_C_GOTO(assign_dim_op_new_array); - } else { - zend_binary_assign_op_dim_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); -ZEND_VM_C_LABEL(assign_dim_op_ret_null): - FREE_UNFETCHED_OP_DATA(); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - - FREE_OP2(); - FREE_OP1_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -ZEND_VM_HANDLER(26, ZEND_ASSIGN_OP, VAR|CV, CONST|TMPVAR|CV, OP) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *var_ptr; - zval *value; - - SAVE_OPLINE(); - value = GET_OP2_ZVAL_PTR(BP_VAR_R); - var_ptr = GET_OP1_ZVAL_PTR_PTR(BP_VAR_RW); - - if (OP1_TYPE == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - } - - FREE_OP2(); - FREE_OP1_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(132, ZEND_PRE_INC_OBJ, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = GET_OP1_OBJ_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - - property = GET_OP2_ZVAL_PTR(BP_VAR_R); - - do { - if (OP1_TYPE != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - ZEND_VM_C_GOTO(pre_incdec_object); - } - if (OP1_TYPE == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -ZEND_VM_C_LABEL(pre_incdec_object): - /* here we are sure we are dealing with an object */ - cache_slot = (OP2_TYPE == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - if (OP2_TYPE == IS_CONST) { - prop_info = (zend_property_info *) CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - FREE_OP2(); - FREE_OP1_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(133, ZEND_PRE_DEC_OBJ, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT) -{ - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_PRE_INC_OBJ); -} - -ZEND_VM_HANDLER(134, ZEND_POST_INC_OBJ, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = GET_OP1_OBJ_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - - property = GET_OP2_ZVAL_PTR(BP_VAR_R); - - do { - if (OP1_TYPE != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - ZEND_VM_C_GOTO(post_incdec_object); - } - if (OP1_TYPE == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -ZEND_VM_C_LABEL(post_incdec_object): - /* here we are sure we are dealing with an object */ - cache_slot = (OP2_TYPE == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } else { - if (OP2_TYPE == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - - zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - FREE_OP2(); - FREE_OP1_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(135, ZEND_POST_DEC_OBJ, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT) -{ - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_POST_INC_OBJ); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -ZEND_VM_HANDLER(38, ZEND_PRE_INC_STATIC_PROP, ANY, ANY, CACHE_SLOT) -{ - USE_OPLINE - zval *prop; - zend_property_info *prop_info; - - SAVE_OPLINE(); - - if (zend_fetch_static_property_address(&prop, &prop_info, opline->extended_value, BP_VAR_RW, 0 OPLINE_CC EXECUTE_DATA_CC) != SUCCESS) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - zend_pre_incdec_property_zval(prop, prop_info->type ? prop_info : NULL OPLINE_CC EXECUTE_DATA_CC); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -ZEND_VM_HANDLER(39, ZEND_PRE_DEC_STATIC_PROP, ANY, ANY, CACHE_SLOT) -{ - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_PRE_INC_STATIC_PROP); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -ZEND_VM_HANDLER(40, ZEND_POST_INC_STATIC_PROP, ANY, ANY, CACHE_SLOT) -{ - USE_OPLINE - zval *prop; - zend_property_info *prop_info; - - SAVE_OPLINE(); - - if (zend_fetch_static_property_address(&prop, &prop_info, opline->extended_value, BP_VAR_RW, 0 OPLINE_CC EXECUTE_DATA_CC) != SUCCESS) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - zend_post_incdec_property_zval(prop, prop_info->type ? prop_info : NULL OPLINE_CC EXECUTE_DATA_CC); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -ZEND_VM_HANDLER(41, ZEND_POST_DEC_STATIC_PROP, ANY, ANY, CACHE_SLOT) -{ - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_POST_INC_STATIC_PROP); -} - -ZEND_VM_HELPER(zend_pre_inc_helper, VAR|CV, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - - if (OP1_TYPE == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(var_ptr) == IS_UNDEF)) { - ZVAL_NULL(var_ptr); - ZVAL_UNDEFINED_OP1(); - } - - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - increment_function(var_ptr); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - - FREE_OP1_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_HANDLER(34, ZEND_PRE_INC, VAR|CV, ANY, SPEC(RETVAL)) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - fast_long_increment_function(var_ptr); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_pre_inc_helper); -} - -ZEND_VM_HELPER(zend_pre_dec_helper, VAR|CV, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - - if (OP1_TYPE == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(var_ptr) == IS_UNDEF)) { - ZVAL_NULL(var_ptr); - ZVAL_UNDEFINED_OP1(); - } - - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - decrement_function(var_ptr); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - - FREE_OP1_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_HANDLER(35, ZEND_PRE_DEC, VAR|CV, ANY, SPEC(RETVAL)) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - fast_long_decrement_function(var_ptr); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_pre_dec_helper); -} - -ZEND_VM_HELPER(zend_post_inc_helper, VAR|CV, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - - if (OP1_TYPE == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(var_ptr) == IS_UNDEF)) { - ZVAL_NULL(var_ptr); - ZVAL_UNDEFINED_OP1(); - } - - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_incdec_typed_ref(ref, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - - increment_function(var_ptr); - } while (0); - - FREE_OP1_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_HANDLER(36, ZEND_POST_INC, VAR|CV, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - fast_long_increment_function(var_ptr); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_post_inc_helper); -} - -ZEND_VM_HELPER(zend_post_dec_helper, VAR|CV, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - - if (OP1_TYPE == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(var_ptr) == IS_UNDEF)) { - ZVAL_NULL(var_ptr); - ZVAL_UNDEFINED_OP1(); - } - - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_incdec_typed_ref(ref, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - - decrement_function(var_ptr); - } while (0); - - FREE_OP1_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_HANDLER(37, ZEND_POST_DEC, VAR|CV, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - fast_long_decrement_function(var_ptr); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_post_dec_helper); -} - -ZEND_VM_HANDLER(136, ZEND_ECHO, CONST|TMPVAR|CV, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *z; - - SAVE_OPLINE(); - z = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (Z_TYPE_P(z) == IS_STRING) { - zend_string *str = Z_STR_P(z); - - if (ZSTR_LEN(str) != 0) { - zend_write(ZSTR_VAL(str), ZSTR_LEN(str)); - } - } else { - zend_string *str = zval_get_string_func(z); - - if (ZSTR_LEN(str) != 0) { - zend_write(ZSTR_VAL(str), ZSTR_LEN(str)); - } else if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(z) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - zend_string_release_ex(str, 0); - } - - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HELPER(zend_fetch_var_address_helper, CONST|TMPVAR|CV, UNUSED, int type) -{ - USE_OPLINE - zend_free_op free_op1; - zval *varname; - zval *retval; - zend_string *name, *tmp_name; - HashTable *target_symbol_table; - - SAVE_OPLINE(); - varname = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (OP1_TYPE == IS_CONST) { - name = Z_STR_P(varname); - } else if (EXPECTED(Z_TYPE_P(varname) == IS_STRING)) { - name = Z_STR_P(varname); - tmp_name = NULL; - } else { - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(varname) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - name = zval_try_get_tmp_string(varname, &tmp_name); - if (UNEXPECTED(!name)) { - FREE_OP1(); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - - target_symbol_table = zend_get_target_symbol_table(opline->extended_value EXECUTE_DATA_CC); - retval = zend_hash_find_ex(target_symbol_table, name, OP1_TYPE == IS_CONST); - if (retval == NULL) { - if (UNEXPECTED(zend_string_equals(name, ZSTR_KNOWN(ZEND_STR_THIS)))) { -ZEND_VM_C_LABEL(fetch_this): - zend_fetch_this_var(type OPLINE_CC EXECUTE_DATA_CC); - if (OP1_TYPE != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - if (type == BP_VAR_W) { - retval = zend_hash_add_new(target_symbol_table, name, &EG(uninitialized_zval)); - } else if (type == BP_VAR_IS) { - retval = &EG(uninitialized_zval); - } else { - zend_error(E_NOTICE,"Undefined variable: %s", ZSTR_VAL(name)); - if (type == BP_VAR_RW) { - retval = zend_hash_update(target_symbol_table, name, &EG(uninitialized_zval)); - } else { - retval = &EG(uninitialized_zval); - } - } - /* GLOBAL or $$name variable may be an INDIRECT pointer to CV */ - } else if (Z_TYPE_P(retval) == IS_INDIRECT) { - retval = Z_INDIRECT_P(retval); - if (Z_TYPE_P(retval) == IS_UNDEF) { - if (UNEXPECTED(zend_string_equals(name, ZSTR_KNOWN(ZEND_STR_THIS)))) { - ZEND_VM_C_GOTO(fetch_this); - } - if (type == BP_VAR_W) { - ZVAL_NULL(retval); - } else if (type == BP_VAR_IS) { - retval = &EG(uninitialized_zval); - } else { - zend_error(E_NOTICE,"Undefined variable: %s", ZSTR_VAL(name)); - if (type == BP_VAR_RW) { - ZVAL_NULL(retval); - } else { - retval = &EG(uninitialized_zval); - } - } - } - } - - if (!(opline->extended_value & ZEND_FETCH_GLOBAL_LOCK)) { - FREE_OP1(); - } - - if (OP1_TYPE != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - - ZEND_ASSERT(retval != NULL); - if (type == BP_VAR_R || type == BP_VAR_IS) { - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else { - ZVAL_INDIRECT(EX_VAR(opline->result.var), retval); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(80, ZEND_FETCH_R, CONST|TMPVAR|CV, UNUSED, VAR_FETCH) -{ - ZEND_VM_DISPATCH_TO_HELPER(zend_fetch_var_address_helper, type, BP_VAR_R); -} - -ZEND_VM_HANDLER(83, ZEND_FETCH_W, CONST|TMPVAR|CV, UNUSED, VAR_FETCH) -{ - ZEND_VM_DISPATCH_TO_HELPER(zend_fetch_var_address_helper, type, BP_VAR_W); -} - -ZEND_VM_HANDLER(86, ZEND_FETCH_RW, CONST|TMPVAR|CV, UNUSED, VAR_FETCH) -{ - ZEND_VM_DISPATCH_TO_HELPER(zend_fetch_var_address_helper, type, BP_VAR_RW); -} - -ZEND_VM_HANDLER(92, ZEND_FETCH_FUNC_ARG, CONST|TMPVAR|CV, UNUSED, VAR_FETCH) -{ - int fetch_type = - (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) ? - BP_VAR_W : BP_VAR_R; - ZEND_VM_DISPATCH_TO_HELPER(zend_fetch_var_address_helper, type, fetch_type); -} - -ZEND_VM_HANDLER(95, ZEND_FETCH_UNSET, CONST|TMPVAR|CV, UNUSED, VAR_FETCH) -{ - ZEND_VM_DISPATCH_TO_HELPER(zend_fetch_var_address_helper, type, BP_VAR_UNSET); -} - -ZEND_VM_HANDLER(89, ZEND_FETCH_IS, CONST|TMPVAR|CV, UNUSED, VAR_FETCH) -{ - ZEND_VM_DISPATCH_TO_HELPER(zend_fetch_var_address_helper, type, BP_VAR_IS); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -ZEND_VM_HELPER(zend_fetch_static_prop_helper, ANY, ANY, int type) -{ - USE_OPLINE - zval *prop; - - SAVE_OPLINE(); - - if (UNEXPECTED(zend_fetch_static_property_address(&prop, NULL, opline->extended_value & ~ZEND_FETCH_OBJ_FLAGS, type, opline->extended_value & ZEND_FETCH_OBJ_FLAGS OPLINE_CC EXECUTE_DATA_CC) != SUCCESS)) { - ZEND_ASSERT(EG(exception) || (type == BP_VAR_IS)); - prop = &EG(uninitialized_zval); - } - - if (type == BP_VAR_R || type == BP_VAR_IS) { - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), prop); - } else { - ZVAL_INDIRECT(EX_VAR(opline->result.var), prop); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -ZEND_VM_HANDLER(173, ZEND_FETCH_STATIC_PROP_R, ANY, CLASS_FETCH, CACHE_SLOT) -{ - ZEND_VM_DISPATCH_TO_HELPER(zend_fetch_static_prop_helper, type, BP_VAR_R); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -ZEND_VM_HANDLER(174, ZEND_FETCH_STATIC_PROP_W, ANY, CLASS_FETCH, FETCH_REF|DIM_OBJ_WRITE|CACHE_SLOT) -{ - ZEND_VM_DISPATCH_TO_HELPER(zend_fetch_static_prop_helper, type, BP_VAR_W); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -ZEND_VM_HANDLER(175, ZEND_FETCH_STATIC_PROP_RW, ANY, CLASS_FETCH, CACHE_SLOT) -{ - ZEND_VM_DISPATCH_TO_HELPER(zend_fetch_static_prop_helper, type, BP_VAR_RW); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -ZEND_VM_HANDLER(177, ZEND_FETCH_STATIC_PROP_FUNC_ARG, ANY, CLASS_FETCH, FETCH_REF|CACHE_SLOT) -{ - int fetch_type = - (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) ? - BP_VAR_W : BP_VAR_R; - ZEND_VM_DISPATCH_TO_HELPER(zend_fetch_static_prop_helper, type, fetch_type); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -ZEND_VM_HANDLER(178, ZEND_FETCH_STATIC_PROP_UNSET, ANY, CLASS_FETCH, CACHE_SLOT) -{ - ZEND_VM_DISPATCH_TO_HELPER(zend_fetch_static_prop_helper, type, BP_VAR_UNSET); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -ZEND_VM_HANDLER(176, ZEND_FETCH_STATIC_PROP_IS, ANY, CLASS_FETCH, CACHE_SLOT) -{ - ZEND_VM_DISPATCH_TO_HELPER(zend_fetch_static_prop_helper, type, BP_VAR_IS); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(81, ZEND_FETCH_DIM_R, CONST|TMPVAR|CV, CONST|TMPVAR|CV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container, *dim, *value; - - SAVE_OPLINE(); - container = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - dim = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (OP1_TYPE != IS_CONST) { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -ZEND_VM_C_LABEL(fetch_dim_r_array): - value = zend_fetch_dimension_address_inner(Z_ARRVAL_P(container), dim, OP2_TYPE, BP_VAR_R EXECUTE_DATA_CC); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - } else if (EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - ZEND_VM_C_GOTO(fetch_dim_r_array); - } else { - ZEND_VM_C_GOTO(fetch_dim_r_slow); - } - } else { -ZEND_VM_C_LABEL(fetch_dim_r_slow): - if (OP2_TYPE == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_fetch_dimension_address_read_R(container, dim, OP2_TYPE OPLINE_CC EXECUTE_DATA_CC); - } - FREE_OP2(); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(84, ZEND_FETCH_DIM_W, VAR|CV, CONST|TMPVAR|UNUSED|NEXT|CV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - - SAVE_OPLINE(); - container = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_W); - zend_fetch_dimension_address_W(container, GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R), OP2_TYPE OPLINE_CC EXECUTE_DATA_CC); - FREE_OP2(); - if (OP1_TYPE == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(87, ZEND_FETCH_DIM_RW, VAR|CV, CONST|TMPVAR|UNUSED|NEXT|CV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - - SAVE_OPLINE(); - container = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - zend_fetch_dimension_address_RW(container, GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R), OP2_TYPE OPLINE_CC EXECUTE_DATA_CC); - FREE_OP2(); - if (OP1_TYPE == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(90, ZEND_FETCH_DIM_IS, CONST|TMPVAR|CV, CONST|TMPVAR|CV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - - SAVE_OPLINE(); - container = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_IS); - zend_fetch_dimension_address_read_IS(container, GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R), OP2_TYPE OPLINE_CC EXECUTE_DATA_CC); - FREE_OP2(); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_HELPER(zend_use_tmp_in_write_context_helper, ANY, ANY) -{ - USE_OPLINE - - SAVE_OPLINE(); - zend_throw_error(NULL, "Cannot use temporary expression in write context"); - FREE_UNFETCHED_OP2(); - FREE_UNFETCHED_OP1(); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); -} - -ZEND_VM_COLD_HELPER(zend_use_undef_in_read_context_helper, ANY, ANY) -{ - USE_OPLINE - - SAVE_OPLINE(); - zend_throw_error(NULL, "Cannot use [] for reading"); - FREE_UNFETCHED_OP2(); - FREE_UNFETCHED_OP1(); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(93, ZEND_FETCH_DIM_FUNC_ARG, CONST|TMP|VAR|CV, CONST|TMPVAR|UNUSED|NEXT|CV) -{ -#if !ZEND_VM_SPEC - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((OP1_TYPE & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_DISPATCH_TO_HELPER(zend_use_tmp_in_write_context_helper); - } - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_FETCH_DIM_W); - } else { - if (OP2_TYPE == IS_UNUSED) { - ZEND_VM_DISPATCH_TO_HELPER(zend_use_undef_in_read_context_helper); - } - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_FETCH_DIM_R); - } -} - -ZEND_VM_HANDLER(96, ZEND_FETCH_DIM_UNSET, VAR|CV, CONST|TMPVAR|CV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - - SAVE_OPLINE(); - container = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_UNSET); - zend_fetch_dimension_address_UNSET(container, GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R), OP2_TYPE OPLINE_CC EXECUTE_DATA_CC); - FREE_OP2(); - if (OP1_TYPE == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_OBJ_HANDLER(82, ZEND_FETCH_OBJ_R, CONST|TMPVAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - zend_free_op free_op2; - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = GET_OP1_OBJ_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - - offset = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (OP1_TYPE == IS_CONST || - (OP1_TYPE != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((OP1_TYPE & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - if (OP2_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - zend_wrong_property_read(offset); - ZVAL_NULL(EX_VAR(opline->result.var)); - ZEND_VM_C_GOTO(fetch_obj_r_finish); - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (OP2_TYPE == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_REF /* FUNC_ARG fetch may contain it */); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_INFO_P(retval) != IS_UNDEF)) { - if (!ZEND_VM_SPEC || (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) != 0) { - ZEND_VM_C_GOTO(fetch_obj_r_copy); - } else { -ZEND_VM_C_LABEL(fetch_obj_r_fast_copy): - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (!ZEND_VM_SPEC || (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) != 0) { - ZEND_VM_C_GOTO(fetch_obj_r_copy); - } else { - ZEND_VM_C_GOTO(fetch_obj_r_fast_copy); - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (!ZEND_VM_SPEC || (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) != 0) { - ZEND_VM_C_GOTO(fetch_obj_r_copy); - } else { - ZEND_VM_C_GOTO(fetch_obj_r_fast_copy); - } - } - } - } - } else if (OP2_TYPE == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_R, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -ZEND_VM_C_LABEL(fetch_obj_r_copy): - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -ZEND_VM_C_LABEL(fetch_obj_r_finish): - FREE_OP2(); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(85, ZEND_FETCH_OBJ_W, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, FETCH_REF|DIM_OBJ_WRITE|CACHE_SLOT) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *property, *container, *result; - - SAVE_OPLINE(); - - container = GET_OP1_OBJ_ZVAL_PTR_PTR_UNDEF(BP_VAR_W); - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - - property = GET_OP2_ZVAL_PTR(BP_VAR_R); - result = EX_VAR(opline->result.var); - zend_fetch_property_address( - result, container, OP1_TYPE, property, OP2_TYPE, - ((OP2_TYPE == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_OBJ_FLAGS) : NULL), - BP_VAR_W, opline->extended_value & ZEND_FETCH_OBJ_FLAGS, 1 OPLINE_CC EXECUTE_DATA_CC); - FREE_OP2(); - if (OP1_TYPE == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(88, ZEND_FETCH_OBJ_RW, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *property, *container, *result; - - SAVE_OPLINE(); - container = GET_OP1_OBJ_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - property = GET_OP2_ZVAL_PTR(BP_VAR_R); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, OP1_TYPE, property, OP2_TYPE, ((OP2_TYPE == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_RW, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - FREE_OP2(); - if (OP1_TYPE == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONST_HANDLER(91, ZEND_FETCH_OBJ_IS, CONST|TMPVAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - zend_free_op free_op2; - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = GET_OP1_OBJ_ZVAL_PTR(BP_VAR_IS); - - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - - offset = GET_OP2_ZVAL_PTR(BP_VAR_R); - - if (OP1_TYPE == IS_CONST || - (OP1_TYPE != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((OP1_TYPE & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - ZVAL_NULL(EX_VAR(opline->result.var)); - ZEND_VM_C_GOTO(fetch_obj_is_finish); - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (OP2_TYPE == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_P(retval) != IS_UNDEF)) { - if (!ZEND_VM_SPEC || (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) != 0) { - ZEND_VM_C_GOTO(fetch_obj_is_copy); - } else { -ZEND_VM_C_LABEL(fetch_obj_is_fast_copy): - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (!ZEND_VM_SPEC || (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) != 0) { - ZEND_VM_C_GOTO(fetch_obj_is_copy); - } else { - ZEND_VM_C_GOTO(fetch_obj_is_fast_copy); - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (!ZEND_VM_SPEC || (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) != 0) { - ZEND_VM_C_GOTO(fetch_obj_is_copy); - } else { - ZEND_VM_C_GOTO(fetch_obj_is_fast_copy); - } - } - } - } - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_IS, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -ZEND_VM_C_LABEL(fetch_obj_is_copy): - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -ZEND_VM_C_LABEL(fetch_obj_is_finish): - FREE_OP2(); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONST_HANDLER(94, ZEND_FETCH_OBJ_FUNC_ARG, CONST|TMP|VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, FETCH_REF|CACHE_SLOT) -{ -#if !ZEND_VM_SPEC - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((OP1_TYPE & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_DISPATCH_TO_HELPER(zend_use_tmp_in_write_context_helper); - } - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_FETCH_OBJ_W); - } else { - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_FETCH_OBJ_R); - } -} - -ZEND_VM_HANDLER(97, ZEND_FETCH_OBJ_UNSET, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container, *property, *result; - - SAVE_OPLINE(); - container = GET_OP1_OBJ_ZVAL_PTR_PTR_UNDEF(BP_VAR_UNSET); - - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - - property = GET_OP2_ZVAL_PTR(BP_VAR_R); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, OP1_TYPE, property, OP2_TYPE, ((OP2_TYPE == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_UNSET, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - FREE_OP2(); - if (OP1_TYPE == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(98, ZEND_FETCH_LIST_R, CONST|TMPVARCV, CONST|TMPVAR|CV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - - SAVE_OPLINE(); - container = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - zend_fetch_dimension_address_LIST_r(container, GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R), OP2_TYPE OPLINE_CC EXECUTE_DATA_CC); - FREE_OP2(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(155, ZEND_FETCH_LIST_W, VAR, CONST|TMPVAR|CV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container, *dim; - - SAVE_OPLINE(); - container = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_W); - dim = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (OP1_TYPE == IS_VAR - && Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT - && UNEXPECTED(!Z_ISREF_P(container)) - ) { - zend_error(E_NOTICE, "Attempting to set reference to non referenceable value"); - zend_fetch_dimension_address_LIST_r(container, dim, OP2_TYPE OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_fetch_dimension_address_W(container, dim, OP2_TYPE OPLINE_CC EXECUTE_DATA_CC); - } - - FREE_OP2(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(24, ZEND_ASSIGN_OBJ, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT, SPEC(OP_DATA=CONST|TMP|VAR|CV)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2, free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = GET_OP1_OBJ_ZVAL_PTR_PTR_UNDEF(BP_VAR_W); - - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - - property = GET_OP2_ZVAL_PTR(BP_VAR_R); - value = GET_OP_DATA_ZVAL_PTR(BP_VAR_R); - - if (OP1_TYPE != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - ZEND_VM_C_GOTO(assign_object); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - ZEND_VM_C_GOTO(free_and_exit_assign_obj); - } - } - -ZEND_VM_C_LABEL(assign_object): - if (OP2_TYPE == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - ZEND_VM_C_GOTO(free_and_exit_assign_obj); - } else { -ZEND_VM_C_LABEL(fast_assign_obj): - value = zend_assign_to_variable(property_val, value, OP_DATA_TYPE, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - ZEND_VM_C_GOTO(exit_assign_obj); - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - ZEND_VM_C_GOTO(fast_assign_obj); - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (OP_DATA_TYPE == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (OP_DATA_TYPE != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (OP_DATA_TYPE == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (OP_DATA_TYPE == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - ZEND_VM_C_GOTO(exit_assign_obj); - } - } - } - - if (OP_DATA_TYPE == IS_CV || OP_DATA_TYPE == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (OP2_TYPE == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -ZEND_VM_C_LABEL(free_and_exit_assign_obj): - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - FREE_OP_DATA(); -ZEND_VM_C_LABEL(exit_assign_obj): - FREE_OP2(); - FREE_OP1_VAR_PTR(); - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -ZEND_VM_HANDLER(25, ZEND_ASSIGN_STATIC_PROP, ANY, ANY, CACHE_SLOT, SPEC(OP_DATA=CONST|TMP|VAR|CV)) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *prop, *value; - zend_property_info *prop_info; - - SAVE_OPLINE(); - - if (zend_fetch_static_property_address(&prop, &prop_info, opline->extended_value, BP_VAR_W, 0 OPLINE_CC EXECUTE_DATA_CC) != SUCCESS) { - FREE_UNFETCHED_OP_DATA(); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - value = GET_OP_DATA_ZVAL_PTR(BP_VAR_R); - - if (UNEXPECTED(prop_info->type)) { - value = zend_assign_to_typed_prop(prop_info, prop, value EXECUTE_DATA_CC); - FREE_OP_DATA(); - } else { - value = zend_assign_to_variable(prop, value, OP_DATA_TYPE, EX_USES_STRICT_TYPES()); - } - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - - /* assign_static_prop has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -ZEND_VM_HANDLER(23, ZEND_ASSIGN_DIM, VAR|CV, CONST|TMPVAR|UNUSED|NEXT|CV, SPEC(OP_DATA=CONST|TMP|VAR|CV)) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op2, free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_W); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -ZEND_VM_C_LABEL(try_assign_dim_array): - value = GET_OP_DATA_ZVAL_PTR(BP_VAR_R); - SEPARATE_ARRAY(object_ptr); - if (OP2_TYPE == IS_UNUSED) { - if (OP_DATA_TYPE == IS_CV || OP_DATA_TYPE == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - ZEND_VM_C_GOTO(assign_dim_error); - } else if (OP_DATA_TYPE == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (OP_DATA_TYPE == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - FREE_OP_DATA(); - } - } else if (OP_DATA_TYPE == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (OP2_TYPE == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - ZEND_VM_C_GOTO(assign_dim_error); - } - value = zend_assign_to_variable(variable_ptr, value, OP_DATA_TYPE, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - ZEND_VM_C_GOTO(try_assign_dim_array); - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = GET_OP2_ZVAL_PTR(BP_VAR_R); - value = GET_OP_DATA_ZVAL_PTR_DEREF(BP_VAR_R); - - if (OP2_TYPE == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - FREE_OP_DATA(); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (OP2_TYPE == IS_UNUSED) { - zend_use_new_element_for_string(); - FREE_UNFETCHED_OP_DATA(); - UNDEF_RESULT(); - } else { - dim = GET_OP2_ZVAL_PTR(BP_VAR_R); - value = GET_OP_DATA_ZVAL_PTR_DEREF(BP_VAR_R); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - FREE_OP_DATA(); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = GET_OP2_ZVAL_PTR(BP_VAR_R); - FREE_UNFETCHED_OP_DATA(); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - ZEND_VM_C_GOTO(try_assign_dim_array); - } - } else { - if (OP1_TYPE != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = GET_OP2_ZVAL_PTR(BP_VAR_R); -ZEND_VM_C_LABEL(assign_dim_error): - FREE_UNFETCHED_OP_DATA(); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (OP2_TYPE != IS_UNUSED) { - FREE_OP2(); - } - FREE_OP1_VAR_PTR(); - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -ZEND_VM_HANDLER(22, ZEND_ASSIGN, VAR|CV, CONST|TMP|VAR|CV, SPEC(RETVAL)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = GET_OP2_ZVAL_PTR(BP_VAR_R); - variable_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_W); - - if (OP1_TYPE == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - FREE_OP2(); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, OP2_TYPE, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - FREE_OP1_VAR_PTR(); - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(30, ZEND_ASSIGN_REF, VAR|CV, VAR|CV, SRC) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *variable_ptr; - zval *value_ptr; - - SAVE_OPLINE(); - value_ptr = GET_OP2_ZVAL_PTR_PTR(BP_VAR_W); - variable_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_W); - - if (OP1_TYPE == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - variable_ptr = &EG(uninitialized_zval); - } else if (OP1_TYPE == IS_VAR && - UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT)) { - - zend_throw_error(NULL, "Cannot assign by reference to an array dimension of an object"); - variable_ptr = &EG(uninitialized_zval); - } else if (OP2_TYPE == IS_VAR && UNEXPECTED(Z_ISERROR_P(value_ptr))) { - variable_ptr = &EG(uninitialized_zval); - } else if (OP2_TYPE == IS_VAR && - opline->extended_value == ZEND_RETURNS_FUNCTION && - UNEXPECTED(!Z_ISREF_P(value_ptr))) { - - variable_ptr = zend_wrong_assign_to_variable_reference( - variable_ptr, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_variable_reference(variable_ptr, value_ptr); - } - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), variable_ptr); - } - - FREE_OP2_VAR_PTR(); - FREE_OP1_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(32, ZEND_ASSIGN_OBJ_REF, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT|SRC, SPEC(OP_DATA=VAR|CV)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2, free_op_data; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = GET_OP1_OBJ_ZVAL_PTR_PTR_UNDEF(BP_VAR_W); - - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - - property = GET_OP2_ZVAL_PTR(BP_VAR_R); - - value_ptr = GET_OP_DATA_ZVAL_PTR_PTR(BP_VAR_W); - - if (ZEND_VM_SPEC) { - if (OP1_TYPE == IS_UNUSED) { - if (OP2_TYPE == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if (OP2_TYPE == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, OP1_TYPE, property, OP2_TYPE, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - FREE_OP1_VAR_PTR(); - FREE_OP2(); - FREE_OP_DATA_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -ZEND_VM_HANDLER(33, ZEND_ASSIGN_STATIC_PROP_REF, ANY, ANY, CACHE_SLOT|SRC) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *prop, *value_ptr; - zend_property_info *prop_info; - - SAVE_OPLINE(); - - if (zend_fetch_static_property_address(&prop, &prop_info, opline->extended_value & ~ZEND_RETURNS_FUNCTION, BP_VAR_W, 0 OPLINE_CC EXECUTE_DATA_CC) != SUCCESS) { - FREE_UNFETCHED_OP_DATA(); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - value_ptr = GET_OP_DATA_ZVAL_PTR_PTR(BP_VAR_W); - - if (OP_DATA_TYPE == IS_VAR && UNEXPECTED(Z_ISERROR_P(value_ptr))) { - prop = &EG(uninitialized_zval); - } else if (OP_DATA_TYPE == IS_VAR && (opline->extended_value & ZEND_RETURNS_FUNCTION) && UNEXPECTED(!Z_ISREF_P(value_ptr))) { - if (UNEXPECTED(!zend_wrong_assign_to_variable_reference(prop, value_ptr OPLINE_CC EXECUTE_DATA_CC))) { - prop = &EG(uninitialized_zval); - } - } else if (UNEXPECTED(prop_info->type)) { - prop = zend_assign_to_typed_property_reference(prop_info, prop, value_ptr EXECUTE_DATA_CC); - } else { - zend_assign_to_variable_reference(prop, value_ptr); - } - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), prop); - } - - FREE_OP_DATA_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -ZEND_VM_HOT_HELPER(zend_leave_helper, ANY, ANY) -{ - zend_execute_data *old_execute_data; - uint32_t call_info = EX_CALL_INFO(); - SAVE_OPLINE(); - - if (EXPECTED((call_info & (ZEND_CALL_CODE|ZEND_CALL_TOP|ZEND_CALL_HAS_SYMBOL_TABLE|ZEND_CALL_FREE_EXTRA_ARGS|ZEND_CALL_ALLOCATED)) == 0)) { - EG(current_execute_data) = EX(prev_execute_data); - i_free_compiled_variables(execute_data); - -#ifdef ZEND_PREFER_RELOAD - call_info = EX_CALL_INFO(); -#endif - if (UNEXPECTED(call_info & ZEND_CALL_RELEASE_THIS)) { - OBJ_RELEASE(Z_OBJ(execute_data->This)); - } else if (UNEXPECTED(call_info & ZEND_CALL_CLOSURE)) { - OBJ_RELEASE(ZEND_CLOSURE_OBJECT(EX(func))); - } - EG(vm_stack_top) = (zval*)execute_data; - execute_data = EX(prev_execute_data); - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION_LEAVE(); - } - - LOAD_NEXT_OPLINE(); - ZEND_VM_LEAVE(); - } else if (EXPECTED((call_info & (ZEND_CALL_CODE|ZEND_CALL_TOP)) == 0)) { - EG(current_execute_data) = EX(prev_execute_data); - i_free_compiled_variables(execute_data); - -#ifdef ZEND_PREFER_RELOAD - call_info = EX_CALL_INFO(); -#endif - if (UNEXPECTED(call_info & ZEND_CALL_HAS_SYMBOL_TABLE)) { - zend_clean_and_cache_symbol_table(EX(symbol_table)); - } - - /* Free extra args before releasing the closure, - * as that may free the op_array. */ - zend_vm_stack_free_extra_args_ex(call_info, execute_data); - - if (UNEXPECTED(call_info & ZEND_CALL_RELEASE_THIS)) { - OBJ_RELEASE(Z_OBJ(execute_data->This)); - } else if (UNEXPECTED(call_info & ZEND_CALL_CLOSURE)) { - OBJ_RELEASE(ZEND_CLOSURE_OBJECT(EX(func))); - } - - old_execute_data = execute_data; - execute_data = EX(prev_execute_data); - zend_vm_stack_free_call_frame_ex(call_info, old_execute_data); - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION_LEAVE(); - } - - LOAD_NEXT_OPLINE(); - ZEND_VM_LEAVE(); - } else if (EXPECTED((call_info & ZEND_CALL_TOP) == 0)) { - zend_detach_symbol_table(execute_data); - destroy_op_array(&EX(func)->op_array); - efree_size(EX(func), sizeof(zend_op_array)); -#ifdef ZEND_PREFER_RELOAD - call_info = EX_CALL_INFO(); -#endif - old_execute_data = execute_data; - execute_data = EG(current_execute_data) = EX(prev_execute_data); - zend_vm_stack_free_call_frame_ex(call_info, old_execute_data); - - zend_attach_symbol_table(execute_data); - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION_LEAVE(); - } - - LOAD_NEXT_OPLINE(); - ZEND_VM_LEAVE(); - } else { - if (EXPECTED((call_info & ZEND_CALL_CODE) == 0)) { - EG(current_execute_data) = EX(prev_execute_data); - i_free_compiled_variables(execute_data); -#ifdef ZEND_PREFER_RELOAD - call_info = EX_CALL_INFO(); -#endif - if (UNEXPECTED(call_info & (ZEND_CALL_HAS_SYMBOL_TABLE|ZEND_CALL_FREE_EXTRA_ARGS))) { - if (UNEXPECTED(call_info & ZEND_CALL_HAS_SYMBOL_TABLE)) { - zend_clean_and_cache_symbol_table(EX(symbol_table)); - } - zend_vm_stack_free_extra_args_ex(call_info, execute_data); - } - if (UNEXPECTED(call_info & ZEND_CALL_CLOSURE)) { - OBJ_RELEASE(ZEND_CLOSURE_OBJECT(EX(func))); - } - ZEND_VM_RETURN(); - } else /* if (call_kind == ZEND_CALL_TOP_CODE) */ { - zend_array *symbol_table = EX(symbol_table); - - zend_detach_symbol_table(execute_data); - old_execute_data = EX(prev_execute_data); - while (old_execute_data) { - if (old_execute_data->func && (ZEND_CALL_INFO(old_execute_data) & ZEND_CALL_HAS_SYMBOL_TABLE)) { - if (old_execute_data->symbol_table == symbol_table) { - zend_attach_symbol_table(old_execute_data); - } - break; - } - old_execute_data = old_execute_data->prev_execute_data; - } - EG(current_execute_data) = EX(prev_execute_data); - ZEND_VM_RETURN(); - } - } -} - -ZEND_VM_HOT_HANDLER(42, ZEND_JMP, JMP_ADDR, ANY) -{ - USE_OPLINE - - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op1), 0); -} - -ZEND_VM_HOT_NOCONST_HANDLER(43, ZEND_JMPZ, CONST|TMPVAR|CV, JMP_ADDR) -{ - USE_OPLINE - zend_free_op free_op1; - zval *val; - - val = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - SAVE_OPLINE(); - if (i_zend_is_true(val)) { - opline++; - } else { - opline = OP_JMP_ADDR(opline, opline->op2); - } - FREE_OP1(); - ZEND_VM_JMP(opline); -} - -ZEND_VM_HOT_NOCONST_HANDLER(44, ZEND_JMPNZ, CONST|TMPVAR|CV, JMP_ADDR) -{ - USE_OPLINE - zend_free_op free_op1; - zval *val; - - val = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (i_zend_is_true(val)) { - opline = OP_JMP_ADDR(opline, opline->op2); - } else { - opline++; - } - FREE_OP1(); - ZEND_VM_JMP(opline); -} - -ZEND_VM_HANDLER(45, ZEND_JMPZNZ, CONST|TMPVAR|CV, JMP_ADDR, JMP_ADDR) -{ - USE_OPLINE - zend_free_op free_op1; - zval *val; - - val = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (EXPECTED(Z_TYPE_INFO_P(val) == IS_TRUE)) { - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - SAVE_OPLINE(); - if (i_zend_is_true(val)) { - opline = ZEND_OFFSET_TO_OPLINE(opline, opline->extended_value); - } else { - opline = OP_JMP_ADDR(opline, opline->op2); - } - FREE_OP1(); - ZEND_VM_JMP(opline); -} - -ZEND_VM_COLD_CONST_HANDLER(46, ZEND_JMPZ_EX, CONST|TMPVAR|CV, JMP_ADDR) -{ - USE_OPLINE - zend_free_op free_op1; - zval *val; - int ret; - - val = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - SAVE_OPLINE(); - ret = i_zend_is_true(val); - FREE_OP1(); - if (ret) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - opline++; - } else { - ZVAL_FALSE(EX_VAR(opline->result.var)); - opline = OP_JMP_ADDR(opline, opline->op2); - } - ZEND_VM_JMP(opline); -} - -ZEND_VM_COLD_CONST_HANDLER(47, ZEND_JMPNZ_EX, CONST|TMPVAR|CV, JMP_ADDR) -{ - USE_OPLINE - zend_free_op free_op1; - zval *val; - int ret; - - val = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - - SAVE_OPLINE(); - ret = i_zend_is_true(val); - FREE_OP1(); - if (ret) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - opline = OP_JMP_ADDR(opline, opline->op2); - } else { - ZVAL_FALSE(EX_VAR(opline->result.var)); - opline++; - } - ZEND_VM_JMP(opline); -} - -ZEND_VM_HANDLER(70, ZEND_FREE, TMPVAR, ANY) -{ - USE_OPLINE - - SAVE_OPLINE(); - zval_ptr_dtor_nogc(EX_VAR(opline->op1.var)); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_HANDLER(127, ZEND_FE_FREE, TMPVAR, ANY) -{ - zval *var; - USE_OPLINE - - SAVE_OPLINE(); - var = EX_VAR(opline->op1.var); - if (Z_TYPE_P(var) != IS_ARRAY && Z_FE_ITER_P(var) != (uint32_t)-1) { - zend_hash_iterator_del(Z_FE_ITER_P(var)); - } - zval_ptr_dtor_nogc(var); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(53, ZEND_FAST_CONCAT, CONST|TMPVAR|CV, CONST|TMPVAR|CV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - zend_string *op1_str, *op2_str, *str; - - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if ((OP1_TYPE == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - (OP2_TYPE == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if (OP1_TYPE != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (OP2_TYPE == IS_CONST || OP2_TYPE == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if (OP2_TYPE != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (OP1_TYPE == IS_CONST || OP1_TYPE == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if (OP1_TYPE != IS_CONST && OP1_TYPE != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (OP1_TYPE == IS_CONST) { - op1_str = Z_STR_P(op1); - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - op1_str = zend_string_copy(Z_STR_P(op1)); - } else { - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - op1_str = zval_get_string_func(op1); - } - if (OP2_TYPE == IS_CONST) { - op2_str = Z_STR_P(op2); - } else if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - op2_str = zend_string_copy(Z_STR_P(op2)); - } else { - if (OP2_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - op2_str = zval_get_string_func(op2); - } - do { - if (OP1_TYPE != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (OP2_TYPE == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op2))) { - GC_ADDREF(op2_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - zend_string_release_ex(op1_str, 0); - break; - } - } - if (OP2_TYPE != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (OP1_TYPE == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op1))) { - GC_ADDREF(op1_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - zend_string_release_ex(op2_str, 0); - break; - } - } - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (OP1_TYPE != IS_CONST) { - zend_string_release_ex(op1_str, 0); - } - if (OP2_TYPE != IS_CONST) { - zend_string_release_ex(op2_str, 0); - } - } while (0); - FREE_OP1(); - FREE_OP2(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(54, ZEND_ROPE_INIT, UNUSED, CONST|TMPVAR|CV, NUM) -{ - USE_OPLINE - zend_free_op free_op2; - zend_string **rope; - zval *var; - - /* Compiler allocates the necessary number of zval slots to keep the rope */ - rope = (zend_string**)EX_VAR(opline->result.var); - if (OP2_TYPE == IS_CONST) { - var = GET_OP2_ZVAL_PTR(BP_VAR_R); - rope[0] = Z_STR_P(var); - if (UNEXPECTED(Z_REFCOUNTED_P(var))) { - Z_ADDREF_P(var); - } - } else { - var = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (EXPECTED(Z_TYPE_P(var) == IS_STRING)) { - if (OP2_TYPE == IS_CV) { - rope[0] = zend_string_copy(Z_STR_P(var)); - } else { - rope[0] = Z_STR_P(var); - } - } else { - SAVE_OPLINE(); - if (OP2_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(var) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - rope[0] = zval_get_string_func(var); - FREE_OP2(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(55, ZEND_ROPE_ADD, TMP, CONST|TMPVAR|CV, NUM) -{ - USE_OPLINE - zend_free_op free_op2; - zend_string **rope; - zval *var; - - /* op1 and result are the same */ - rope = (zend_string**)EX_VAR(opline->op1.var); - if (OP2_TYPE == IS_CONST) { - var = GET_OP2_ZVAL_PTR(BP_VAR_R); - rope[opline->extended_value] = Z_STR_P(var); - if (UNEXPECTED(Z_REFCOUNTED_P(var))) { - Z_ADDREF_P(var); - } - } else { - var = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (EXPECTED(Z_TYPE_P(var) == IS_STRING)) { - if (OP2_TYPE == IS_CV) { - rope[opline->extended_value] = zend_string_copy(Z_STR_P(var)); - } else { - rope[opline->extended_value] = Z_STR_P(var); - } - } else { - SAVE_OPLINE(); - if (OP2_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(var) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - rope[opline->extended_value] = zval_get_string_func(var); - FREE_OP2(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(56, ZEND_ROPE_END, TMP, CONST|TMPVAR|CV, NUM) -{ - USE_OPLINE - zend_free_op free_op2; - zend_string **rope; - zval *var, *ret; - uint32_t i; - size_t len = 0; - char *target; - - rope = (zend_string**)EX_VAR(opline->op1.var); - if (OP2_TYPE == IS_CONST) { - var = GET_OP2_ZVAL_PTR(BP_VAR_R); - rope[opline->extended_value] = Z_STR_P(var); - if (UNEXPECTED(Z_REFCOUNTED_P(var))) { - Z_ADDREF_P(var); - } - } else { - var = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (EXPECTED(Z_TYPE_P(var) == IS_STRING)) { - if (OP2_TYPE == IS_CV) { - rope[opline->extended_value] = zend_string_copy(Z_STR_P(var)); - } else { - rope[opline->extended_value] = Z_STR_P(var); - } - } else { - SAVE_OPLINE(); - if (OP2_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(var) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - rope[opline->extended_value] = zval_get_string_func(var); - FREE_OP2(); - if (UNEXPECTED(EG(exception))) { - for (i = 0; i <= opline->extended_value; i++) { - zend_string_release_ex(rope[i], 0); - } - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - } - for (i = 0; i <= opline->extended_value; i++) { - len += ZSTR_LEN(rope[i]); - } - ret = EX_VAR(opline->result.var); - ZVAL_STR(ret, zend_string_alloc(len, 0)); - target = Z_STRVAL_P(ret); - for (i = 0; i <= opline->extended_value; i++) { - memcpy(target, ZSTR_VAL(rope[i]), ZSTR_LEN(rope[i])); - target += ZSTR_LEN(rope[i]); - zend_string_release_ex(rope[i], 0); - } - *target = '\0'; - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(109, ZEND_FETCH_CLASS, UNUSED|CLASS_FETCH, CONST|TMPVAR|UNUSED|CV, CACHE_SLOT) -{ - zend_free_op free_op2; - zval *class_name; - USE_OPLINE - - SAVE_OPLINE(); - if (OP2_TYPE == IS_UNUSED) { - Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(NULL, opline->op1.num); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else if (OP2_TYPE == IS_CONST) { - zend_class_entry *ce = CACHED_PTR(opline->extended_value); - - if (UNEXPECTED(ce == NULL)) { - class_name = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), opline->op1.num); - CACHE_PTR(opline->extended_value, ce); - } - Z_CE_P(EX_VAR(opline->result.var)) = ce; - } else { - class_name = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); -ZEND_VM_C_LABEL(try_class_name): - if (Z_TYPE_P(class_name) == IS_OBJECT) { - Z_CE_P(EX_VAR(opline->result.var)) = Z_OBJCE_P(class_name); - } else if (Z_TYPE_P(class_name) == IS_STRING) { - Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(Z_STR_P(class_name), opline->op1.num); - } else if ((OP2_TYPE & (IS_VAR|IS_CV)) && Z_TYPE_P(class_name) == IS_REFERENCE) { - class_name = Z_REFVAL_P(class_name); - ZEND_VM_C_GOTO(try_class_name); - } else { - if (OP2_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(class_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Class name must be a valid object or a string"); - } - } - - FREE_OP2(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_OBJ_HANDLER(112, ZEND_INIT_METHOD_CALL, CONST|TMPVAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, NUM|CACHE_SLOT) -{ - USE_OPLINE - zval *function_name; - zend_free_op free_op1, free_op2; - zval *object; - zend_function *fbc; - zend_class_entry *called_scope; - zend_object *obj; - zend_execute_data *call; - uint32_t call_info; - - SAVE_OPLINE(); - - object = GET_OP1_OBJ_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - - if (OP2_TYPE != IS_CONST) { - function_name = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - } - - if (OP2_TYPE != IS_CONST && - UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if ((OP2_TYPE & (IS_VAR|IS_CV)) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (OP2_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - FREE_OP1(); - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Method name must be a string"); - FREE_OP2(); - FREE_OP1(); - HANDLE_EXCEPTION(); - } while (0); - } - - if (OP1_TYPE != IS_UNUSED) { - do { - if (OP1_TYPE == IS_CONST || UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if ((OP1_TYPE & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(object))) { - object = Z_REFVAL_P(object); - if (EXPECTED(Z_TYPE_P(object) == IS_OBJECT)) { - break; - } - } - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - object = ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if (OP2_TYPE != IS_CONST) { - FREE_OP2(); - } - HANDLE_EXCEPTION(); - } - } - if (OP2_TYPE == IS_CONST) { - function_name = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - } - zend_invalid_method_call(object, function_name); - FREE_OP2(); - FREE_OP1(); - HANDLE_EXCEPTION(); - } - } while (0); - } - - obj = Z_OBJ_P(object); - called_scope = obj->ce; - - if (OP2_TYPE == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == called_scope)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else { - zend_object *orig_obj = obj; - - if (OP2_TYPE == IS_CONST) { - function_name = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - } - - /* First, locate the function. */ - fbc = obj->handlers->get_method(&obj, Z_STR_P(function_name), ((OP2_TYPE == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(obj->ce, Z_STR_P(function_name)); - } - FREE_OP2(); - FREE_OP1(); - HANDLE_EXCEPTION(); - } - if (OP2_TYPE == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE))) && - EXPECTED(obj == orig_obj)) { - CACHE_POLYMORPHIC_PTR(opline->result.num, called_scope, fbc); - } - if ((OP1_TYPE & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(obj != orig_obj)) { - /* Reset "object" to trigger reference counting */ - object = NULL; - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (OP2_TYPE != IS_CONST) { - FREE_OP2(); - } - - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_STATIC) != 0)) { - FREE_OP1(); - - if ((OP1_TYPE & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - /* call static method */ - obj = (zend_object*)called_scope; - call_info = ZEND_CALL_NESTED_FUNCTION; - } else if (OP1_TYPE & (IS_VAR|IS_TMP_VAR|IS_CV)) { - if (OP1_TYPE == IS_CV) { - GC_ADDREF(obj); /* For $this pointer */ - } else if (free_op1 != object) { - GC_ADDREF(obj); /* For $this pointer */ - FREE_OP1(); - } - /* CV may be changed indirectly (e.g. when it's a reference) */ - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS | ZEND_CALL_RELEASE_THIS; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, obj); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(113, ZEND_INIT_STATIC_METHOD_CALL, UNUSED|CLASS_FETCH|CONST|VAR, CONST|TMPVAR|UNUSED|CONSTRUCTOR|CV, NUM|CACHE_SLOT) -{ - USE_OPLINE - zval *function_name; - zend_class_entry *ce; - uint32_t call_info; - zend_function *fbc; - zend_execute_data *call; - - SAVE_OPLINE(); - - if (OP1_TYPE == IS_CONST) { - /* no function found. try a static method in class */ - ce = CACHED_PTR(opline->result.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - FREE_UNFETCHED_OP2(); - HANDLE_EXCEPTION(); - } - if (OP2_TYPE != IS_CONST) { - CACHE_PTR(opline->result.num, ce); - } - } - } else if (OP1_TYPE == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - FREE_UNFETCHED_OP2(); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - if (OP1_TYPE == IS_CONST && - OP2_TYPE == IS_CONST && - EXPECTED((fbc = CACHED_PTR(opline->result.num + sizeof(void*))) != NULL)) { - /* nothing to do */ - } else if (OP1_TYPE != IS_CONST && - OP2_TYPE == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == ce)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else if (OP2_TYPE != IS_UNUSED) { - zend_free_op free_op2; - - function_name = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (OP2_TYPE != IS_CONST) { - if (UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (OP2_TYPE & (IS_VAR|IS_CV) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (OP2_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - FREE_OP2(); - HANDLE_EXCEPTION(); - } while (0); - } - } - - if (ce->get_static_method) { - fbc = ce->get_static_method(ce, Z_STR_P(function_name)); - } else { - fbc = zend_std_get_static_method(ce, Z_STR_P(function_name), ((OP2_TYPE == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - } - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(ce, Z_STR_P(function_name)); - } - FREE_OP2(); - HANDLE_EXCEPTION(); - } - if (OP2_TYPE == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE)))) { - CACHE_POLYMORPHIC_PTR(opline->result.num, ce, fbc); - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - if (OP2_TYPE != IS_CONST) { - FREE_OP2(); - } - } else { - if (UNEXPECTED(ce->constructor == NULL)) { - zend_throw_error(NULL, "Cannot call constructor"); - HANDLE_EXCEPTION(); - } - if (Z_TYPE(EX(This)) == IS_OBJECT && Z_OBJ(EX(This))->ce != ce->constructor->common.scope && (ce->constructor->common.fn_flags & ZEND_ACC_PRIVATE)) { - zend_throw_error(NULL, "Cannot call private %s::__construct()", ZSTR_VAL(ce->name)); - HANDLE_EXCEPTION(); - } - fbc = ce->constructor; - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (!(fbc->common.fn_flags & ZEND_ACC_STATIC)) { - if (Z_TYPE(EX(This)) == IS_OBJECT && instanceof_function(Z_OBJCE(EX(This)), ce)) { - ce = (zend_class_entry*)Z_OBJ(EX(This)); - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - } else { - zend_non_static_method_call(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - ZEND_VM_C_GOTO(check_parent_and_self); - } - } else { -ZEND_VM_C_LABEL(check_parent_and_self): - /* previous opcode is ZEND_FETCH_CLASS */ - if (OP1_TYPE == IS_UNUSED - && ((opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_PARENT || - (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF)) { - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ce = Z_OBJCE(EX(This)); - } else { - ce = Z_CE(EX(This)); - } - } - call_info = ZEND_CALL_NESTED_FUNCTION; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, ce); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_HANDLER(59, ZEND_INIT_FCALL_BY_NAME, ANY, CONST, NUM|CACHE_SLOT) -{ - USE_OPLINE - zend_function *fbc; - zval *function_name, *func; - zend_execute_data *call; - - fbc = CACHED_PTR(opline->result.num); - if (UNEXPECTED(fbc == NULL)) { - function_name = (zval*)RT_CONSTANT(opline, opline->op2); - func = zend_hash_find_ex(EG(function_table), Z_STR_P(function_name+1), 1); - if (UNEXPECTED(func == NULL)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_undefined_function_helper); - } - fbc = Z_FUNC_P(func); - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - CACHE_PTR(opline->result.num, fbc); - } - call = _zend_vm_stack_push_call_frame(ZEND_CALL_NESTED_FUNCTION, - fbc, opline->extended_value, NULL); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(128, ZEND_INIT_DYNAMIC_CALL, ANY, CONST|TMPVAR|CV, NUM) -{ - USE_OPLINE - zend_free_op free_op2; - zval *function_name; - zend_execute_data *call; - - SAVE_OPLINE(); - function_name = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - -ZEND_VM_C_LABEL(try_function_name): - if (OP2_TYPE != IS_CONST && EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - call = zend_init_dynamic_call_string(Z_STR_P(function_name), opline->extended_value); - } else if (OP2_TYPE != IS_CONST && EXPECTED(Z_TYPE_P(function_name) == IS_OBJECT)) { - call = zend_init_dynamic_call_object(function_name, opline->extended_value); - } else if (EXPECTED(Z_TYPE_P(function_name) == IS_ARRAY)) { - call = zend_init_dynamic_call_array(Z_ARRVAL_P(function_name), opline->extended_value); - } else if ((OP2_TYPE & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(function_name) == IS_REFERENCE)) { - function_name = Z_REFVAL_P(function_name); - ZEND_VM_C_GOTO(try_function_name); - } else { - if (OP2_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - call = NULL; - } - - FREE_OP2(); - if (UNEXPECTED(!call)) { - HANDLE_EXCEPTION(); - } - - if (OP2_TYPE & (IS_VAR|IS_TMP_VAR)) { - if (UNEXPECTED(EG(exception))) { - if (call) { - if (call->func->common.fn_flags & ZEND_ACC_CALL_VIA_TRAMPOLINE) { - zend_string_release_ex(call->func->common.function_name, 0); - zend_free_trampoline(call->func); - } - zend_vm_stack_free_call_frame(call); - } - HANDLE_EXCEPTION(); - } - } - - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(118, ZEND_INIT_USER_CALL, CONST, CONST|TMPVAR|CV, NUM) -{ - USE_OPLINE - zend_free_op free_op2; - zval *function_name; - zend_fcall_info_cache fcc; - char *error = NULL; - zend_function *func; - void *object_or_called_scope; - zend_execute_data *call; - uint32_t call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_DYNAMIC; - - SAVE_OPLINE(); - function_name = GET_OP2_ZVAL_PTR(BP_VAR_R); - if (zend_is_callable_ex(function_name, NULL, 0, NULL, &fcc, &error)) { - func = fcc.function_handler; - if (error) { - efree(error); - /* This is the only soft error is_callable() can generate */ - zend_non_static_method_call(func); - if (UNEXPECTED(EG(exception) != NULL)) { - FREE_OP2(); - HANDLE_EXCEPTION(); - } - } - object_or_called_scope = fcc.called_scope; - if (func->common.fn_flags & ZEND_ACC_CLOSURE) { - /* Delay closure destruction until its invocation */ - GC_ADDREF(ZEND_CLOSURE_OBJECT(func)); - call_info |= ZEND_CALL_CLOSURE; - if (func->common.fn_flags & ZEND_ACC_FAKE_CLOSURE) { - call_info |= ZEND_CALL_FAKE_CLOSURE; - } - if (fcc.object) { - object_or_called_scope = fcc.object; - call_info |= ZEND_CALL_HAS_THIS; - } - } else if (fcc.object) { - GC_ADDREF(fcc.object); /* For $this pointer */ - object_or_called_scope = fcc.object; - call_info |= ZEND_CALL_RELEASE_THIS | ZEND_CALL_HAS_THIS; - } - - FREE_OP2(); - if ((OP2_TYPE & (IS_TMP_VAR|IS_VAR)) && UNEXPECTED(EG(exception))) { - if (call_info & ZEND_CALL_CLOSURE) { - zend_object_release(ZEND_CLOSURE_OBJECT(func)); - } else if (call_info & ZEND_CALL_RELEASE_THIS) { - zend_object_release(fcc.object); - } - HANDLE_EXCEPTION(); - } - - if (EXPECTED(func->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&func->op_array))) { - init_func_run_time_cache(&func->op_array); - } - } else { - zend_internal_type_error(EX_USES_STRICT_TYPES(), "%s() expects parameter 1 to be a valid callback, %s", Z_STRVAL_P(RT_CONSTANT(opline, opline->op1)), error); - efree(error); - FREE_OP2(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - func = (zend_function*)&zend_pass_function; - object_or_called_scope = NULL; - } - - call = zend_vm_stack_push_call_frame(call_info, - func, opline->extended_value, object_or_called_scope); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_HANDLER(69, ZEND_INIT_NS_FCALL_BY_NAME, ANY, CONST, NUM|CACHE_SLOT) -{ - USE_OPLINE - zval *func_name; - zval *func; - zend_function *fbc; - zend_execute_data *call; - - fbc = CACHED_PTR(opline->result.num); - if (UNEXPECTED(fbc == NULL)) { - func_name = (zval *)RT_CONSTANT(opline, opline->op2); - func = zend_hash_find_ex(EG(function_table), Z_STR_P(func_name + 1), 1); - if (func == NULL) { - func = zend_hash_find_ex(EG(function_table), Z_STR_P(func_name + 2), 1); - if (UNEXPECTED(func == NULL)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_undefined_function_helper); - } - } - fbc = Z_FUNC_P(func); - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - CACHE_PTR(opline->result.num, fbc); - } - - call = _zend_vm_stack_push_call_frame(ZEND_CALL_NESTED_FUNCTION, - fbc, opline->extended_value, NULL); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_HANDLER(61, ZEND_INIT_FCALL, NUM, CONST, NUM|CACHE_SLOT) -{ - USE_OPLINE - zval *fname; - zval *func; - zend_function *fbc; - zend_execute_data *call; - - fbc = CACHED_PTR(opline->result.num); - if (UNEXPECTED(fbc == NULL)) { - fname = (zval*)RT_CONSTANT(opline, opline->op2); - func = zend_hash_find_ex(EG(function_table), Z_STR_P(fname), 1); - if (UNEXPECTED(func == NULL)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_undefined_function_helper); - } - fbc = Z_FUNC_P(func); - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - CACHE_PTR(opline->result.num, fbc); - } - - call = _zend_vm_stack_push_call_frame_ex( - opline->op1.num, ZEND_CALL_NESTED_FUNCTION, - fbc, opline->extended_value, NULL); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_HANDLER(129, ZEND_DO_ICALL, ANY, ANY, SPEC(RETVAL)) -{ - USE_OPLINE - zend_execute_data *call = EX(call); - zend_function *fbc = call->func; - zval *ret; - zval retval; - - SAVE_OPLINE(); - EX(call) = call->prev_execute_data; - - call->prev_execute_data = execute_data; - EG(current_execute_data) = call; - - ret = RETURN_VALUE_USED(opline) ? EX_VAR(opline->result.var) : &retval; - ZVAL_NULL(ret); - - fbc->internal_function.handler(call, ret); - -#if ZEND_DEBUG - if (!EG(exception) && call->func) { - ZEND_ASSERT(!(call->func->common.fn_flags & ZEND_ACC_HAS_RETURN_TYPE) || - zend_verify_internal_return_type(call->func, ret)); - ZEND_ASSERT((call->func->common.fn_flags & ZEND_ACC_RETURN_REFERENCE) - ? Z_ISREF_P(ret) : !Z_ISREF_P(ret)); - } -#endif - - EG(current_execute_data) = execute_data; - zend_vm_stack_free_args(call); - zend_vm_stack_free_call_frame(call); - - if (!RETURN_VALUE_USED(opline)) { - i_zval_ptr_dtor(ret); - } - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION(); - } - - ZEND_VM_SET_OPCODE(opline + 1); - ZEND_VM_CONTINUE(); -} - -ZEND_VM_HOT_HANDLER(130, ZEND_DO_UCALL, ANY, ANY, SPEC(RETVAL)) -{ - USE_OPLINE - zend_execute_data *call = EX(call); - zend_function *fbc = call->func; - zval *ret; - - SAVE_OPLINE(); - EX(call) = call->prev_execute_data; - - ret = NULL; - if (RETURN_VALUE_USED(opline)) { - ret = EX_VAR(opline->result.var); - } - - call->prev_execute_data = execute_data; - execute_data = call; - i_init_func_execute_data(&fbc->op_array, ret, 0 EXECUTE_DATA_CC); - LOAD_OPLINE_EX(); - - ZEND_VM_ENTER_EX(); -} - -ZEND_VM_HOT_HANDLER(131, ZEND_DO_FCALL_BY_NAME, ANY, ANY, SPEC(RETVAL)) -{ - USE_OPLINE - zend_execute_data *call = EX(call); - zend_function *fbc = call->func; - zval *ret; - - SAVE_OPLINE(); - EX(call) = call->prev_execute_data; - - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION)) { - ret = NULL; - if (RETURN_VALUE_USED(opline)) { - ret = EX_VAR(opline->result.var); - } - - call->prev_execute_data = execute_data; - execute_data = call; - i_init_func_execute_data(&fbc->op_array, ret, 0 EXECUTE_DATA_CC); - LOAD_OPLINE_EX(); - - ZEND_VM_ENTER_EX(); - } else { - zval retval; - ZEND_ASSERT(fbc->type == ZEND_INTERNAL_FUNCTION); - - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_DEPRECATED) != 0)) { - zend_deprecated_function(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - if (!RETURN_VALUE_USED(opline)) { - ret = &retval; - ZVAL_UNDEF(ret); - } - ZEND_VM_C_GOTO(fcall_by_name_end); - } - } - - call->prev_execute_data = execute_data; - EG(current_execute_data) = call; - - if (UNEXPECTED(fbc->common.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) - && UNEXPECTED(!zend_verify_internal_arg_types(fbc, call))) { - UNDEF_RESULT(); - if (!RETURN_VALUE_USED(opline)) { - ret = &retval; - ZVAL_UNDEF(ret); - } - ZEND_VM_C_GOTO(fcall_by_name_end); - } - - ret = RETURN_VALUE_USED(opline) ? EX_VAR(opline->result.var) : &retval; - ZVAL_NULL(ret); - - fbc->internal_function.handler(call, ret); - -#if ZEND_DEBUG - if (!EG(exception) && call->func) { - ZEND_ASSERT(!(call->func->common.fn_flags & ZEND_ACC_HAS_RETURN_TYPE) || - zend_verify_internal_return_type(call->func, ret)); - ZEND_ASSERT((call->func->common.fn_flags & ZEND_ACC_RETURN_REFERENCE) - ? Z_ISREF_P(ret) : !Z_ISREF_P(ret)); - } -#endif - - EG(current_execute_data) = execute_data; - -ZEND_VM_C_LABEL(fcall_by_name_end): - zend_vm_stack_free_args(call); - zend_vm_stack_free_call_frame(call); - - if (!RETURN_VALUE_USED(opline)) { - i_zval_ptr_dtor(ret); - } - } - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION(); - } - ZEND_VM_SET_OPCODE(opline + 1); - ZEND_VM_CONTINUE(); -} - -ZEND_VM_HOT_HANDLER(60, ZEND_DO_FCALL, ANY, ANY, SPEC(RETVAL)) -{ - USE_OPLINE - zend_execute_data *call = EX(call); - zend_function *fbc = call->func; - zval *ret; - zval retval; - - SAVE_OPLINE(); - EX(call) = call->prev_execute_data; - if (UNEXPECTED((fbc->common.fn_flags & (ZEND_ACC_ABSTRACT|ZEND_ACC_DEPRECATED)) != 0)) { - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_ABSTRACT) != 0)) { - zend_abstract_method(fbc); -ZEND_VM_C_LABEL(fcall_except): - UNDEF_RESULT(); - if (!RETURN_VALUE_USED(opline)) { - ret = &retval; - ZVAL_UNDEF(ret); - } - ZEND_VM_C_GOTO(fcall_end); - } else { - zend_deprecated_function(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - ZEND_VM_C_GOTO(fcall_except); - } - } - } - - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION)) { - ret = NULL; - if (RETURN_VALUE_USED(opline)) { - ret = EX_VAR(opline->result.var); - } - - call->prev_execute_data = execute_data; - execute_data = call; - i_init_func_execute_data(&fbc->op_array, ret, 1 EXECUTE_DATA_CC); - - if (EXPECTED(zend_execute_ex == execute_ex)) { - LOAD_OPLINE_EX(); - ZEND_VM_ENTER_EX(); - } else { - SAVE_OPLINE_EX(); - execute_data = EX(prev_execute_data); - LOAD_OPLINE(); - ZEND_ADD_CALL_FLAG(call, ZEND_CALL_TOP); - zend_execute_ex(call); - } - } else if (EXPECTED(fbc->type < ZEND_USER_FUNCTION)) { - call->prev_execute_data = execute_data; - EG(current_execute_data) = call; - - if (UNEXPECTED(fbc->common.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) - && UNEXPECTED(!zend_verify_internal_arg_types(fbc, call))) { - ZEND_VM_C_GOTO(fcall_except); - } - - ret = RETURN_VALUE_USED(opline) ? EX_VAR(opline->result.var) : &retval; - ZVAL_NULL(ret); - - if (!zend_execute_internal) { - /* saves one function call if zend_execute_internal is not used */ - fbc->internal_function.handler(call, ret); - } else { - zend_execute_internal(call, ret); - } - -#if ZEND_DEBUG - if (!EG(exception) && call->func) { - ZEND_ASSERT(!(call->func->common.fn_flags & ZEND_ACC_HAS_RETURN_TYPE) || - zend_verify_internal_return_type(call->func, ret)); - ZEND_ASSERT((call->func->common.fn_flags & ZEND_ACC_RETURN_REFERENCE) - ? Z_ISREF_P(ret) : !Z_ISREF_P(ret)); - } -#endif - - EG(current_execute_data) = execute_data; - -ZEND_VM_C_LABEL(fcall_end): - zend_vm_stack_free_args(call); - if (!RETURN_VALUE_USED(opline)) { - i_zval_ptr_dtor(ret); - } - } else { /* ZEND_OVERLOADED_FUNCTION */ - ret = RETURN_VALUE_USED(opline) ? EX_VAR(opline->result.var) : &retval; - - call->prev_execute_data = execute_data; - - if (UNEXPECTED(!zend_do_fcall_overloaded(call, ret))) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - if (!RETURN_VALUE_USED(opline)) { - zval_ptr_dtor(ret); - } - } - - if (UNEXPECTED(ZEND_CALL_INFO(call) & ZEND_CALL_RELEASE_THIS)) { - OBJ_RELEASE(Z_OBJ(call->This)); - } - - zend_vm_stack_free_call_frame(call); - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION(); - } - - ZEND_VM_SET_OPCODE(opline + 1); - ZEND_VM_CONTINUE(); -} - -ZEND_VM_COLD_CONST_HANDLER(124, ZEND_VERIFY_RETURN_TYPE, CONST|TMP|VAR|UNUSED|CV, UNUSED|CACHE_SLOT) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (OP1_TYPE == IS_UNUSED) { - zend_verify_missing_return_type(EX(func), CACHE_ADDR(opline->op2.num)); - } else { -/* prevents "undefined variable opline" errors */ -#if !ZEND_VM_SPEC || (OP1_TYPE != IS_UNUSED) - zval *retval_ref, *retval_ptr; - zend_free_op free_op1; - zend_arg_info *ret_info = EX(func)->common.arg_info - 1; - - retval_ref = retval_ptr = GET_OP1_ZVAL_PTR(BP_VAR_R); - - if (OP1_TYPE == IS_CONST) { - ZVAL_COPY(EX_VAR(opline->result.var), retval_ptr); - retval_ref = retval_ptr = EX_VAR(opline->result.var); - } else if (OP1_TYPE == IS_VAR) { - if (UNEXPECTED(Z_TYPE_P(retval_ptr) == IS_INDIRECT)) { - retval_ptr = Z_INDIRECT_P(retval_ptr); - } - ZVAL_DEREF(retval_ptr); - } else if (OP1_TYPE == IS_CV) { - ZVAL_DEREF(retval_ptr); - } - - if (UNEXPECTED(!ZEND_TYPE_IS_CLASS(ret_info->type) - && ZEND_TYPE_CODE(ret_info->type) != IS_CALLABLE - && ZEND_TYPE_CODE(ret_info->type) != IS_ITERABLE - && !ZEND_SAME_FAKE_TYPE(ZEND_TYPE_CODE(ret_info->type), Z_TYPE_P(retval_ptr)) - && !(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE) - && retval_ref != retval_ptr) - ) { - /* A cast might happen - unwrap the reference if this is a by-value return */ - if (Z_REFCOUNT_P(retval_ref) == 1) { - ZVAL_UNREF(retval_ref); - } else { - Z_DELREF_P(retval_ref); - ZVAL_COPY(retval_ref, retval_ptr); - } - retval_ptr = retval_ref; - } - zend_verify_return_type(EX(func), retval_ptr, CACHE_ADDR(opline->op2.num)); -#endif - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_INLINE_HANDLER(62, ZEND_RETURN, CONST|TMP|VAR|CV, ANY) -{ - USE_OPLINE - zval *retval_ptr; - zval *return_value; - zend_free_op free_op1; - - retval_ptr = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - return_value = EX(return_value); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(retval_ptr) == IS_UNDEF)) { - SAVE_OPLINE(); - retval_ptr = ZVAL_UNDEFINED_OP1(); - if (return_value) { - ZVAL_NULL(return_value); - } - } else if (!return_value) { - if (OP1_TYPE & (IS_VAR|IS_TMP_VAR)) { - if (Z_REFCOUNTED_P(free_op1) && !Z_DELREF_P(free_op1)) { - SAVE_OPLINE(); - rc_dtor_func(Z_COUNTED_P(free_op1)); - } - } - } else { - if ((OP1_TYPE & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (OP1_TYPE == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(return_value))) { - Z_ADDREF_P(return_value); - } - } - } else if (OP1_TYPE == IS_CV) { - do { - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - if (EXPECTED(!Z_OPT_ISREF_P(retval_ptr))) { - if (EXPECTED(!(EX_CALL_INFO() & ZEND_CALL_CODE))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (GC_MAY_LEAK(ref)) { - gc_possible_root(ref); - } - ZVAL_NULL(retval_ptr); - break; - } else { - Z_ADDREF_P(retval_ptr); - } - } else { - retval_ptr = Z_REFVAL_P(retval_ptr); - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } - } - ZVAL_COPY_VALUE(return_value, retval_ptr); - } while (0); - } else /* if (OP1_TYPE == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - - retval_ptr = Z_REFVAL_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } else { - ZVAL_COPY_VALUE(return_value, retval_ptr); - } - } - } - ZEND_VM_DISPATCH_TO_HELPER(zend_leave_helper); -} - -ZEND_VM_COLD_CONST_HANDLER(111, ZEND_RETURN_BY_REF, CONST|TMP|VAR|CV, ANY, SRC) -{ - USE_OPLINE - zval *retval_ptr; - zend_free_op free_op1; - - SAVE_OPLINE(); - - do { - if ((OP1_TYPE & (IS_CONST|IS_TMP_VAR)) || - (OP1_TYPE == IS_VAR && opline->extended_value == ZEND_RETURNS_VALUE)) { - /* Not supposed to happen, but we'll allow it */ - zend_error(E_NOTICE, "Only variable references should be returned by reference"); - - retval_ptr = GET_OP1_ZVAL_PTR(BP_VAR_R); - if (!EX(return_value)) { - FREE_OP1(); - } else { - if (OP1_TYPE == IS_VAR && UNEXPECTED(Z_ISREF_P(retval_ptr))) { - ZVAL_COPY_VALUE(EX(return_value), retval_ptr); - break; - } - - ZVAL_NEW_REF(EX(return_value), retval_ptr); - if (OP1_TYPE == IS_CONST) { - Z_TRY_ADDREF_P(retval_ptr); - } - } - break; - } - - retval_ptr = GET_OP1_ZVAL_PTR_PTR(BP_VAR_W); - - if (OP1_TYPE == IS_VAR) { - ZEND_ASSERT(retval_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION && !Z_ISREF_P(retval_ptr)) { - zend_error(E_NOTICE, "Only variable references should be returned by reference"); - if (EX(return_value)) { - ZVAL_NEW_REF(EX(return_value), retval_ptr); - } else { - FREE_OP1_VAR_PTR(); - } - break; - } - } - - if (EX(return_value)) { - if (Z_ISREF_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } else { - ZVAL_MAKE_REF_EX(retval_ptr, 2); - } - ZVAL_REF(EX(return_value), Z_REF_P(retval_ptr)); - } - - FREE_OP1_VAR_PTR(); - } while (0); - - ZEND_VM_DISPATCH_TO_HELPER(zend_leave_helper); -} - -ZEND_VM_HANDLER(139, ZEND_GENERATOR_CREATE, ANY, ANY) -{ - zval *return_value = EX(return_value); - - if (EXPECTED(return_value)) { - USE_OPLINE - zend_generator *generator; - zend_execute_data *gen_execute_data; - uint32_t num_args, used_stack, call_info; - - object_init_ex(return_value, zend_ce_generator); - - /* - * Normally the execute_data is allocated on the VM stack (because it does - * not actually do any allocation and thus is faster). For generators - * though this behavior would be suboptimal, because the (rather large) - * structure would have to be copied back and forth every time execution is - * suspended or resumed. That's why for generators the execution context - * is allocated on heap. - */ - num_args = EX_NUM_ARGS(); - if (EXPECTED(num_args <= EX(func)->op_array.num_args)) { - used_stack = (ZEND_CALL_FRAME_SLOT + EX(func)->op_array.last_var + EX(func)->op_array.T) * sizeof(zval); - gen_execute_data = (zend_execute_data*)emalloc(used_stack); - used_stack = (ZEND_CALL_FRAME_SLOT + EX(func)->op_array.last_var) * sizeof(zval); - } else { - used_stack = (ZEND_CALL_FRAME_SLOT + num_args + EX(func)->op_array.last_var + EX(func)->op_array.T - EX(func)->op_array.num_args) * sizeof(zval); - gen_execute_data = (zend_execute_data*)emalloc(used_stack); - } - memcpy(gen_execute_data, execute_data, used_stack); - - /* Save execution context in generator object. */ - generator = (zend_generator *) Z_OBJ_P(EX(return_value)); - generator->execute_data = gen_execute_data; - generator->frozen_call_stack = NULL; - generator->execute_fake.opline = NULL; - generator->execute_fake.func = NULL; - generator->execute_fake.prev_execute_data = NULL; - ZVAL_OBJ(&generator->execute_fake.This, (zend_object *) generator); - - gen_execute_data->opline = opline + 1; - /* EX(return_value) keeps pointer to zend_object (not a real zval) */ - gen_execute_data->return_value = (zval*)generator; - call_info = Z_TYPE_INFO(EX(This)); - if ((call_info & Z_TYPE_MASK) == IS_OBJECT - && (!(call_info & (ZEND_CALL_CLOSURE|ZEND_CALL_RELEASE_THIS)) - /* Bug #72523 */ - || UNEXPECTED(zend_execute_ex != execute_ex))) { - ZEND_ADD_CALL_FLAG_EX(call_info, ZEND_CALL_RELEASE_THIS); - Z_ADDREF(gen_execute_data->This); - } - ZEND_ADD_CALL_FLAG_EX(call_info, (ZEND_CALL_TOP_FUNCTION | ZEND_CALL_ALLOCATED | ZEND_CALL_GENERATOR)); - Z_TYPE_INFO(gen_execute_data->This) = call_info; - gen_execute_data->prev_execute_data = NULL; - - call_info = EX_CALL_INFO(); - EG(current_execute_data) = EX(prev_execute_data); - if (EXPECTED(!(call_info & (ZEND_CALL_TOP|ZEND_CALL_ALLOCATED)))) { - EG(vm_stack_top) = (zval*)execute_data; - execute_data = EX(prev_execute_data); - LOAD_NEXT_OPLINE(); - ZEND_VM_LEAVE(); - } else if (EXPECTED(!(call_info & ZEND_CALL_TOP))) { - zend_execute_data *old_execute_data = execute_data; - execute_data = EX(prev_execute_data); - zend_vm_stack_free_call_frame_ex(call_info, old_execute_data); - LOAD_NEXT_OPLINE(); - ZEND_VM_LEAVE(); - } else { - ZEND_VM_RETURN(); - } - } else { - ZEND_VM_DISPATCH_TO_HELPER(zend_leave_helper); - } -} - -ZEND_VM_HANDLER(161, ZEND_GENERATOR_RETURN, CONST|TMP|VAR|CV, ANY) -{ - USE_OPLINE - zval *retval; - zend_free_op free_op1; - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - retval = GET_OP1_ZVAL_PTR(BP_VAR_R); - - /* Copy return value into generator->retval */ - if ((OP1_TYPE & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(&generator->retval, retval); - if (OP1_TYPE == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->retval))) { - Z_ADDREF(generator->retval); - } - } - } else if (OP1_TYPE == IS_CV) { - ZVAL_COPY_DEREF(&generator->retval, retval); - } else /* if (OP1_TYPE == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_refcounted *ref = Z_COUNTED_P(retval); - - retval = Z_REFVAL_P(retval); - ZVAL_COPY_VALUE(&generator->retval, retval); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval)) { - Z_ADDREF_P(retval); - } - } else { - ZVAL_COPY_VALUE(&generator->retval, retval); - } - } - - /* Close the generator to free up resources */ - zend_generator_close(generator, 1); - - /* Pass execution back to handling code */ - ZEND_VM_RETURN(); -} - -ZEND_VM_COLD_CONST_HANDLER(108, ZEND_THROW, CONST|TMP|VAR|CV, ANY) -{ - USE_OPLINE - zval *value; - zend_free_op free_op1; - - SAVE_OPLINE(); - value = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - - do { - if (OP1_TYPE == IS_CONST || UNEXPECTED(Z_TYPE_P(value) != IS_OBJECT)) { - if ((OP1_TYPE & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - value = Z_REFVAL_P(value); - if (EXPECTED(Z_TYPE_P(value) == IS_OBJECT)) { - break; - } - } - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Can only throw objects"); - FREE_OP1(); - HANDLE_EXCEPTION(); - } - } while (0); - - zend_exception_save(); - if (OP1_TYPE != IS_TMP_VAR) { - Z_TRY_ADDREF_P(value); - } - - zend_throw_exception_object(value); - zend_exception_restore(); - FREE_OP1_IF_VAR(); - HANDLE_EXCEPTION(); -} - -ZEND_VM_HANDLER(107, ZEND_CATCH, CONST, JMP_ADDR, LAST_CATCH|CACHE_SLOT) -{ - USE_OPLINE - zend_class_entry *ce, *catch_ce; - zend_object *exception; - zval *ex; - - SAVE_OPLINE(); - /* Check whether an exception has been thrown, if not, jump over code */ - zend_exception_restore(); - if (EG(exception) == NULL) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - catch_ce = CACHED_PTR(opline->extended_value & ~ZEND_LAST_CATCH); - if (UNEXPECTED(catch_ce == NULL)) { - catch_ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD); - - CACHE_PTR(opline->extended_value & ~ZEND_LAST_CATCH, catch_ce); - } - ce = EG(exception)->ce; - -#ifdef HAVE_DTRACE - if (DTRACE_EXCEPTION_CAUGHT_ENABLED()) { - DTRACE_EXCEPTION_CAUGHT((char *)ce->name); - } -#endif /* HAVE_DTRACE */ - - if (ce != catch_ce) { - if (!catch_ce || !instanceof_function(ce, catch_ce)) { - if (opline->extended_value & ZEND_LAST_CATCH) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION(); - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - } - - exception = EG(exception); - ex = EX_VAR(opline->result.var); - { - /* Always perform a strict assignment. There is a reasonable expectation that if you - * write "catch (Exception $e)" then $e will actually be instanceof Exception. As such, - * we should not permit coercion to string here. */ - zval tmp; - ZVAL_OBJ(&tmp, exception); - EG(exception) = NULL; - zend_assign_to_variable(ex, &tmp, IS_TMP_VAR, /* strict */ 1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -ZEND_VM_HOT_HANDLER(65, ZEND_SEND_VAL, CONST|TMPVAR, NUM) -{ - USE_OPLINE - zval *value, *arg; - zend_free_op free_op1; - - value = GET_OP1_ZVAL_PTR(BP_VAR_R); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, value); - if (OP1_TYPE == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(arg))) { - Z_ADDREF_P(arg); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_COLD_HELPER(zend_cannot_pass_by_ref_helper, ANY, ANY) -{ - USE_OPLINE - zval *arg; - uint32_t arg_num = opline->op2.num; - - SAVE_OPLINE(); - zend_throw_error(NULL, "Cannot pass parameter %d by reference", arg_num); - FREE_UNFETCHED_OP1(); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_UNDEF(arg); - HANDLE_EXCEPTION(); -} - -ZEND_VM_HOT_SEND_HANDLER(116, ZEND_SEND_VAL_EX, CONST|TMP, NUM, SPEC(QUICK_ARG)) -{ - USE_OPLINE - zval *value, *arg; - zend_free_op free_op1; - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(arg_num <= MAX_ARG_FLAG_NUM)) { - if (QUICK_ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_VM_C_GOTO(send_val_by_ref); - } - } else if (ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { -ZEND_VM_C_LABEL(send_val_by_ref): - ZEND_VM_DISPATCH_TO_HELPER(zend_cannot_pass_by_ref_helper); - } - value = GET_OP1_ZVAL_PTR(BP_VAR_R); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, value); - if (OP1_TYPE == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(arg))) { - Z_ADDREF_P(arg); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_HANDLER(117, ZEND_SEND_VAR, VAR|CV, NUM) -{ - USE_OPLINE - zval *varptr, *arg; - zend_free_op free_op1; - - varptr = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(varptr) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_NULL(arg); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (OP1_TYPE == IS_CV) { - ZVAL_COPY_DEREF(arg, varptr); - } else /* if (OP1_TYPE == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(varptr))) { - zend_refcounted *ref = Z_COUNTED_P(varptr); - - varptr = Z_REFVAL_P(varptr); - ZVAL_COPY_VALUE(arg, varptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(arg)) { - Z_ADDREF_P(arg); - } - } else { - ZVAL_COPY_VALUE(arg, varptr); - } - } - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(106, ZEND_SEND_VAR_NO_REF, VAR, NUM) -{ - USE_OPLINE - zend_free_op free_op1; - zval *varptr, *arg; - - varptr = GET_OP1_ZVAL_PTR(BP_VAR_R); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, varptr); - - if (EXPECTED(Z_ISREF_P(varptr))) { - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - ZVAL_NEW_REF(arg, arg); - zend_error(E_NOTICE, "Only variables should be passed by reference"); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_SEND_HANDLER(50, ZEND_SEND_VAR_NO_REF_EX, VAR, NUM, SPEC(QUICK_ARG)) -{ - USE_OPLINE - zend_free_op free_op1; - zval *varptr, *arg; - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(arg_num <= MAX_ARG_FLAG_NUM)) { - if (!QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_SEND_VAR); - } - - varptr = GET_OP1_ZVAL_PTR(BP_VAR_R); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, varptr); - - if (EXPECTED(Z_ISREF_P(varptr) || - QUICK_ARG_MAY_BE_SENT_BY_REF(EX(call)->func, arg_num))) { - ZEND_VM_NEXT_OPCODE(); - } - } else { - if (!ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_SEND_VAR); - } - - varptr = GET_OP1_ZVAL_PTR(BP_VAR_R); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, varptr); - - if (EXPECTED(Z_ISREF_P(varptr) || - ARG_MAY_BE_SENT_BY_REF(EX(call)->func, arg_num))) { - ZEND_VM_NEXT_OPCODE(); - } - } - - SAVE_OPLINE(); - ZVAL_NEW_REF(arg, arg); - zend_error(E_NOTICE, "Only variables should be passed by reference"); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(67, ZEND_SEND_REF, VAR|CV, NUM) -{ - USE_OPLINE - zend_free_op free_op1; - zval *varptr, *arg; - - SAVE_OPLINE(); - varptr = GET_OP1_ZVAL_PTR_PTR(BP_VAR_W); - - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - if (OP1_TYPE == IS_VAR && UNEXPECTED(Z_ISERROR_P(varptr))) { - ZVAL_NEW_EMPTY_REF(arg); - ZVAL_NULL(Z_REFVAL_P(arg)); - ZEND_VM_NEXT_OPCODE(); - } - - if (Z_ISREF_P(varptr)) { - Z_ADDREF_P(varptr); - } else { - ZVAL_MAKE_REF_EX(varptr, 2); - } - ZVAL_REF(arg, Z_REF_P(varptr)); - - FREE_OP1_VAR_PTR(); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_SEND_HANDLER(66, ZEND_SEND_VAR_EX, VAR|CV, NUM, SPEC(QUICK_ARG)) -{ - USE_OPLINE - zval *varptr, *arg; - zend_free_op free_op1; - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(arg_num <= MAX_ARG_FLAG_NUM)) { - if (QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_VM_C_GOTO(send_var_by_ref); - } - } else if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { -ZEND_VM_C_LABEL(send_var_by_ref): - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_SEND_REF); - } - - varptr = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(varptr) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_NULL(arg); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (OP1_TYPE == IS_CV) { - ZVAL_COPY_DEREF(arg, varptr); - } else /* if (OP1_TYPE == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(varptr))) { - zend_refcounted *ref = Z_COUNTED_P(varptr); - - varptr = Z_REFVAL_P(varptr); - ZVAL_COPY_VALUE(arg, varptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(arg)) { - Z_ADDREF_P(arg); - } - } else { - ZVAL_COPY_VALUE(arg, varptr); - } - } - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_SEND_HANDLER(100, ZEND_CHECK_FUNC_ARG, UNUSED, NUM, SPEC(QUICK_ARG)) -{ - USE_OPLINE - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(arg_num <= MAX_ARG_FLAG_NUM)) { - if (QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_ADD_CALL_FLAG(EX(call), ZEND_CALL_SEND_ARG_BY_REF); - } else { - ZEND_DEL_CALL_FLAG(EX(call), ZEND_CALL_SEND_ARG_BY_REF); - } - } else if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_ADD_CALL_FLAG(EX(call), ZEND_CALL_SEND_ARG_BY_REF); - } else { - ZEND_DEL_CALL_FLAG(EX(call), ZEND_CALL_SEND_ARG_BY_REF); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_HANDLER(185, ZEND_SEND_FUNC_ARG, VAR, NUM) -{ - USE_OPLINE - zval *varptr, *arg; - zend_free_op free_op1; - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_SEND_REF); - } - - varptr = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (UNEXPECTED(Z_ISREF_P(varptr))) { - zend_refcounted *ref = Z_COUNTED_P(varptr); - - varptr = Z_REFVAL_P(varptr); - ZVAL_COPY_VALUE(arg, varptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(arg)) { - Z_ADDREF_P(arg); - } - } else { - ZVAL_COPY_VALUE(arg, varptr); - } - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(165, ZEND_SEND_UNPACK, ANY, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *args; - int arg_num; - - SAVE_OPLINE(); - args = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - arg_num = ZEND_CALL_NUM_ARGS(EX(call)) + 1; - -ZEND_VM_C_LABEL(send_again): - if (EXPECTED(Z_TYPE_P(args) == IS_ARRAY)) { - HashTable *ht = Z_ARRVAL_P(args); - zval *arg, *top; - zend_string *name; - - zend_vm_stack_extend_call_frame(&EX(call), arg_num - 1, zend_hash_num_elements(ht)); - - if ((OP1_TYPE & (IS_VAR|IS_CV)) && Z_REFCOUNT_P(args) > 1) { - uint32_t i; - int separate = 0; - - /* check if any of arguments are going to be passed by reference */ - for (i = 0; i < zend_hash_num_elements(ht); i++) { - if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num + i)) { - separate = 1; - break; - } - } - if (separate) { - SEPARATE_ARRAY(args); - ht = Z_ARRVAL_P(args); - } - } - - ZEND_HASH_FOREACH_STR_KEY_VAL(ht, name, arg) { - if (name) { - zend_throw_error(NULL, "Cannot unpack array with string keys"); - FREE_OP1(); - HANDLE_EXCEPTION(); - } - - top = ZEND_CALL_ARG(EX(call), arg_num); - if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - if (Z_ISREF_P(arg)) { - Z_ADDREF_P(arg); - ZVAL_REF(top, Z_REF_P(arg)); - } else if (OP1_TYPE & (IS_VAR|IS_CV)) { - /* array is already separated above */ - ZVAL_MAKE_REF_EX(arg, 2); - ZVAL_REF(top, Z_REF_P(arg)); - } else { - Z_TRY_ADDREF_P(arg); - ZVAL_NEW_REF(top, arg); - } - } else { - ZVAL_COPY_DEREF(top, arg); - } - - ZEND_CALL_NUM_ARGS(EX(call))++; - arg_num++; - } ZEND_HASH_FOREACH_END(); - - } else if (EXPECTED(Z_TYPE_P(args) == IS_OBJECT)) { - zend_class_entry *ce = Z_OBJCE_P(args); - zend_object_iterator *iter; - - if (!ce || !ce->get_iterator) { - zend_error(E_WARNING, "Only arrays and Traversables can be unpacked"); - } else { - - iter = ce->get_iterator(ce, args, 0); - if (UNEXPECTED(!iter)) { - FREE_OP1(); - if (!EG(exception)) { - zend_throw_exception_ex( - NULL, 0, "Object of type %s did not create an Iterator", ZSTR_VAL(ce->name) - ); - } - HANDLE_EXCEPTION(); - } - - if (iter->funcs->rewind) { - iter->funcs->rewind(iter); - } - - for (; iter->funcs->valid(iter) == SUCCESS; ++arg_num) { - zval *arg, *top; - - if (UNEXPECTED(EG(exception) != NULL)) { - break; - } - - arg = iter->funcs->get_current_data(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - break; - } - - if (iter->funcs->get_current_key) { - zval key; - iter->funcs->get_current_key(iter, &key); - if (UNEXPECTED(EG(exception) != NULL)) { - break; - } - - if (UNEXPECTED(Z_TYPE(key) != IS_LONG)) { - zend_throw_error(NULL, - (Z_TYPE(key) == IS_STRING) ? - "Cannot unpack Traversable with string keys" : - "Cannot unpack Traversable with non-integer keys"); - zval_ptr_dtor(&key); - break; - } - } - - if (ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - zend_error( - E_WARNING, "Cannot pass by-reference argument %d of %s%s%s()" - " by unpacking a Traversable, passing by-value instead", arg_num, - EX(call)->func->common.scope ? ZSTR_VAL(EX(call)->func->common.scope->name) : "", - EX(call)->func->common.scope ? "::" : "", - ZSTR_VAL(EX(call)->func->common.function_name) - ); - } - - ZVAL_DEREF(arg); - Z_TRY_ADDREF_P(arg); - - zend_vm_stack_extend_call_frame(&EX(call), arg_num - 1, 1); - top = ZEND_CALL_ARG(EX(call), arg_num); - ZVAL_COPY_VALUE(top, arg); - ZEND_CALL_NUM_ARGS(EX(call))++; - - iter->funcs->move_forward(iter); - } - - zend_iterator_dtor(iter); - } - } else if (EXPECTED(Z_ISREF_P(args))) { - args = Z_REFVAL_P(args); - ZEND_VM_C_GOTO(send_again); - } else { - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(args) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - zend_error(E_WARNING, "Only arrays and Traversables can be unpacked"); - } - - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(119, ZEND_SEND_ARRAY, ANY, ANY, NUM) -{ - USE_OPLINE - zend_free_op free_op1; - zval *args; - - SAVE_OPLINE(); - args = GET_OP1_ZVAL_PTR(BP_VAR_R); - - if (UNEXPECTED(Z_TYPE_P(args) != IS_ARRAY)) { - if ((OP1_TYPE & (IS_VAR|IS_CV)) && Z_ISREF_P(args)) { - args = Z_REFVAL_P(args); - if (EXPECTED(Z_TYPE_P(args) == IS_ARRAY)) { - ZEND_VM_C_GOTO(send_array); - } - } - zend_internal_type_error(EX_USES_STRICT_TYPES(), "call_user_func_array() expects parameter 2 to be array, %s given", zend_get_type_by_const(Z_TYPE_P(args))); - if (ZEND_CALL_INFO(EX(call)) & ZEND_CALL_CLOSURE) { - OBJ_RELEASE(ZEND_CLOSURE_OBJECT(EX(call)->func)); - } else if (ZEND_CALL_INFO(EX(call)) & ZEND_CALL_RELEASE_THIS) { - OBJ_RELEASE(Z_OBJ(EX(call)->This)); - } - EX(call)->func = (zend_function*)&zend_pass_function; - Z_OBJ(EX(call)->This) = NULL; - ZEND_CALL_INFO(EX(call)) &= ~(ZEND_CALL_RELEASE_THIS | ZEND_CALL_HAS_THIS); - FREE_UNFETCHED_OP2(); - } else { - uint32_t arg_num; - HashTable *ht; - zval *arg, *param; - - -ZEND_VM_C_LABEL(send_array): - ht = Z_ARRVAL_P(args); - if (OP2_TYPE != IS_UNUSED) { - zend_free_op free_op2; - zval *op2 = GET_OP2_ZVAL_PTR(BP_VAR_R); - uint32_t skip = opline->extended_value; - uint32_t count = zend_hash_num_elements(ht); - zend_long len = zval_get_long(op2); - - if (len < 0) { - len += (zend_long)(count - skip); - } - if (skip < count && len > 0) { - if (len > (zend_long)(count - skip)) { - len = (zend_long)(count - skip); - } - zend_vm_stack_extend_call_frame(&EX(call), 0, len); - arg_num = 1; - param = ZEND_CALL_ARG(EX(call), 1); - ZEND_HASH_FOREACH_VAL(ht, arg) { - zend_bool must_wrap = 0; - if (skip > 0) { - skip--; - continue; - } else if ((zend_long)(arg_num - 1) >= len) { - break; - } else if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - if (UNEXPECTED(!Z_ISREF_P(arg))) { - if (!ARG_MAY_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - /* By-value send is not allowed -- emit a warning, - * but still perform the call. */ - zend_param_must_be_ref(EX(call)->func, arg_num); - must_wrap = 1; - } - } - } else { - if (Z_ISREF_P(arg) && - !(EX(call)->func->common.fn_flags & ZEND_ACC_CALL_VIA_TRAMPOLINE)) { - /* don't separate references for __call */ - arg = Z_REFVAL_P(arg); - } - } - if (EXPECTED(!must_wrap)) { - ZVAL_COPY(param, arg); - } else { - Z_TRY_ADDREF_P(arg); - ZVAL_NEW_REF(param, arg); - } - ZEND_CALL_NUM_ARGS(EX(call))++; - arg_num++; - param++; - } ZEND_HASH_FOREACH_END(); - } - FREE_OP2(); - } else { - zend_vm_stack_extend_call_frame(&EX(call), 0, zend_hash_num_elements(ht)); - arg_num = 1; - param = ZEND_CALL_ARG(EX(call), 1); - ZEND_HASH_FOREACH_VAL(ht, arg) { - zend_bool must_wrap = 0; - if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - if (UNEXPECTED(!Z_ISREF_P(arg))) { - if (!ARG_MAY_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - /* By-value send is not allowed -- emit a warning, - * but still perform the call. */ - zend_param_must_be_ref(EX(call)->func, arg_num); - must_wrap = 1; - } - } - } else { - if (Z_ISREF_P(arg) && - !(EX(call)->func->common.fn_flags & ZEND_ACC_CALL_VIA_TRAMPOLINE)) { - /* don't separate references for __call */ - arg = Z_REFVAL_P(arg); - } - } - if (EXPECTED(!must_wrap)) { - ZVAL_COPY(param, arg); - } else { - Z_TRY_ADDREF_P(arg); - ZVAL_NEW_REF(param, arg); - } - ZEND_CALL_NUM_ARGS(EX(call))++; - arg_num++; - param++; - } ZEND_HASH_FOREACH_END(); - } - } - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(120, ZEND_SEND_USER, CONST|TMP|VAR|CV, NUM) -{ - USE_OPLINE - zval *arg, *param; - zend_free_op free_op1; - - SAVE_OPLINE(); - - if (UNEXPECTED(ARG_MUST_BE_SENT_BY_REF(EX(call)->func, opline->op2.num))) { - zend_param_must_be_ref(EX(call)->func, opline->op2.num); - } - - arg = GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R); - param = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY(param, arg); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_HANDLER(63, ZEND_RECV, NUM, UNUSED|CACHE_SLOT) -{ - USE_OPLINE - uint32_t arg_num = opline->op1.num; - - if (UNEXPECTED(arg_num > EX_NUM_ARGS())) { - SAVE_OPLINE(); - zend_missing_arg_error(execute_data); - HANDLE_EXCEPTION(); - } else { - zval *param = EX_VAR(opline->result.var); - - SAVE_OPLINE(); - if (UNEXPECTED(!zend_verify_recv_arg_type(EX(func), arg_num, param, NULL, CACHE_ADDR(opline->op2.num)))) { - HANDLE_EXCEPTION(); - } - } - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_HANDLER(64, ZEND_RECV_INIT, NUM, CONST, CACHE_SLOT) -{ - USE_OPLINE - uint32_t arg_num; - zval *param; - - ZEND_VM_REPEATABLE_OPCODE - - arg_num = opline->op1.num; - param = EX_VAR(opline->result.var); - if (arg_num > EX_NUM_ARGS()) { - zval *default_value = RT_CONSTANT(opline, opline->op2); - - if (Z_OPT_TYPE_P(default_value) == IS_CONSTANT_AST) { - zval *cache_val = (zval*)CACHE_ADDR(Z_CACHE_SLOT_P(default_value)); - - /* we keep in cache only not refcounted values */ - if (Z_TYPE_P(cache_val) != IS_UNDEF) { - ZVAL_COPY_VALUE(param, cache_val); - } else { - SAVE_OPLINE(); - ZVAL_COPY(param, default_value); - if (UNEXPECTED(zval_update_constant_ex(param, EX(func)->op_array.scope) != SUCCESS)) { - zval_ptr_dtor_nogc(param); - ZVAL_UNDEF(param); - HANDLE_EXCEPTION(); - } - if (!Z_REFCOUNTED_P(param)) { - ZVAL_COPY_VALUE(cache_val, param); - } - } - ZEND_VM_C_GOTO(recv_init_check_type); - } else { - ZVAL_COPY(param, default_value); - } - } else { -ZEND_VM_C_LABEL(recv_init_check_type): - if (UNEXPECTED((EX(func)->op_array.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) != 0)) { - zval *default_value = RT_CONSTANT(opline, opline->op2); - - SAVE_OPLINE(); - if (UNEXPECTED(!zend_verify_recv_arg_type(EX(func), arg_num, param, default_value, CACHE_ADDR(opline->extended_value)))) { - HANDLE_EXCEPTION(); - } - } - } - - ZEND_VM_REPEAT_OPCODE(ZEND_RECV_INIT); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(164, ZEND_RECV_VARIADIC, NUM, UNUSED|CACHE_SLOT) -{ - USE_OPLINE - uint32_t arg_num = opline->op1.num; - uint32_t arg_count = EX_NUM_ARGS(); - zval *params; - - SAVE_OPLINE(); - - params = EX_VAR(opline->result.var); - - if (arg_num <= arg_count) { - zval *param; - - array_init_size(params, arg_count - arg_num + 1); - zend_hash_real_init_packed(Z_ARRVAL_P(params)); - ZEND_HASH_FILL_PACKED(Z_ARRVAL_P(params)) { - param = EX_VAR_NUM(EX(func)->op_array.last_var + EX(func)->op_array.T); - if (UNEXPECTED((EX(func)->op_array.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) != 0)) { - ZEND_ADD_CALL_FLAG(execute_data, ZEND_CALL_FREE_EXTRA_ARGS); - do { - zend_verify_variadic_arg_type(EX(func), arg_num, param, NULL, CACHE_ADDR(opline->op2.num)); - if (Z_OPT_REFCOUNTED_P(param)) Z_ADDREF_P(param); - ZEND_HASH_FILL_ADD(param); - param++; - } while (++arg_num <= arg_count); - } else { - do { - if (Z_OPT_REFCOUNTED_P(param)) Z_ADDREF_P(param); - ZEND_HASH_FILL_ADD(param); - param++; - } while (++arg_num <= arg_count); - } - } ZEND_HASH_FILL_END(); - } else { - ZVAL_EMPTY_ARRAY(params); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONST_HANDLER(52, ZEND_BOOL, CONST|TMPVAR|CV, ANY) -{ - USE_OPLINE - zval *val; - zend_free_op free_op1; - - val = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - /* The result and op1 can be the same cv zval */ - const uint32_t orig_val_type = Z_TYPE_INFO_P(val); - ZVAL_FALSE(EX_VAR(opline->result.var)); - if (OP1_TYPE == IS_CV && UNEXPECTED(orig_val_type == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } else { - SAVE_OPLINE(); - ZVAL_BOOL(EX_VAR(opline->result.var), i_zend_is_true(val)); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HELPER(zend_case_helper, ANY, ANY, zval *op_1, zval *op_2) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - compare_function(EX_VAR(opline->result.var), op_1, op_2); - if (OP2_TYPE & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - if (Z_LVAL_P(EX_VAR(opline->result.var)) == 0) { - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } -} - -ZEND_VM_HANDLER(48, ZEND_CASE, TMPVAR, CONST|TMPVAR|CV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -ZEND_VM_C_LABEL(case_true): - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -ZEND_VM_C_LABEL(case_false): - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - ZEND_VM_C_GOTO(case_double); - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -ZEND_VM_C_LABEL(case_double): - if (d1 == d2) { - ZEND_VM_C_GOTO(case_true); - } else { - ZEND_VM_C_GOTO(case_false); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - ZEND_VM_C_GOTO(case_double); - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - FREE_OP2(); - if (result) { - ZEND_VM_C_GOTO(case_true); - } else { - ZEND_VM_C_GOTO(case_false); - } - } - } - ZEND_VM_DISPATCH_TO_HELPER(zend_case_helper, op_1, op1, op_2, op2); -} - -ZEND_VM_HANDLER(68, ZEND_NEW, UNUSED|CLASS_FETCH|CONST|VAR, UNUSED|CACHE_SLOT, NUM) -{ - USE_OPLINE - zval *result; - zend_function *constructor; - zend_class_entry *ce; - zend_execute_data *call; - - SAVE_OPLINE(); - if (OP1_TYPE == IS_CONST) { - ce = CACHED_PTR(opline->op2.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - CACHE_PTR(opline->op2.num, ce); - } - } else if (OP1_TYPE == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - result = EX_VAR(opline->result.var); - if (UNEXPECTED(object_init_ex(result, ce) != SUCCESS)) { - ZVAL_UNDEF(result); - HANDLE_EXCEPTION(); - } - - constructor = Z_OBJ_HT_P(result)->get_constructor(Z_OBJ_P(result)); - if (constructor == NULL) { - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - - /* If there are no arguments, skip over the DO_FCALL opcode. We check if the next - * opcode is DO_FCALL in case EXT instructions are used. */ - if (EXPECTED(opline->extended_value == 0 && (opline+1)->opcode == ZEND_DO_FCALL)) { - ZEND_VM_NEXT_OPCODE_EX(1, 2); - } - - /* Perform a dummy function call */ - call = zend_vm_stack_push_call_frame( - ZEND_CALL_FUNCTION, (zend_function *) &zend_pass_function, - opline->extended_value, NULL); - } else { - if (EXPECTED(constructor->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&constructor->op_array))) { - init_func_run_time_cache(&constructor->op_array); - } - /* We are not handling overloaded classes right now */ - call = zend_vm_stack_push_call_frame( - ZEND_CALL_FUNCTION | ZEND_CALL_RELEASE_THIS | ZEND_CALL_HAS_THIS, - constructor, - opline->extended_value, - Z_OBJ_P(result)); - Z_ADDREF_P(result); - } - - call->prev_execute_data = EX(call); - EX(call) = call; - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_COLD_CONST_HANDLER(110, ZEND_CLONE, CONST|TMPVAR|UNUSED|THIS|CV, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *obj; - zend_class_entry *ce, *scope; - zend_function *clone; - zend_object_clone_obj_t clone_call; - - SAVE_OPLINE(); - obj = GET_OP1_OBJ_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(obj) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - - do { - if (OP1_TYPE == IS_CONST || - (OP1_TYPE != IS_UNUSED && UNEXPECTED(Z_TYPE_P(obj) != IS_OBJECT))) { - if ((OP1_TYPE & (IS_VAR|IS_CV)) && Z_ISREF_P(obj)) { - obj = Z_REFVAL_P(obj); - if (EXPECTED(Z_TYPE_P(obj) == IS_OBJECT)) { - break; - } - } - ZVAL_UNDEF(EX_VAR(opline->result.var)); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(obj) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "__clone method called on non-object"); - FREE_OP1(); - HANDLE_EXCEPTION(); - } - } while (0); - - ce = Z_OBJCE_P(obj); - clone = ce->clone; - clone_call = Z_OBJ_HT_P(obj)->clone_obj; - if (UNEXPECTED(clone_call == NULL)) { - zend_throw_error(NULL, "Trying to clone an uncloneable object of class %s", ZSTR_VAL(ce->name)); - FREE_OP1(); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - - if (clone && !(clone->common.fn_flags & ZEND_ACC_PUBLIC)) { - scope = EX(func)->op_array.scope; - if (clone->common.scope != scope) { - if (UNEXPECTED(clone->common.fn_flags & ZEND_ACC_PRIVATE) - || UNEXPECTED(!zend_check_protected(zend_get_function_root_class(clone), scope))) { - zend_wrong_clone_call(clone, scope); - FREE_OP1(); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - } - - ZVAL_OBJ(EX_VAR(opline->result.var), clone_call(obj)); - - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_HANDLER(99, ZEND_FETCH_CONSTANT, UNUSED|CONST_FETCH, CONST, CACHE_SLOT) -{ - USE_OPLINE - zend_constant *c; - - c = CACHED_PTR(opline->extended_value); - if (EXPECTED(c != NULL) && EXPECTED(!IS_SPECIAL_CACHE_VAL(c))) { - ZVAL_COPY_OR_DUP(EX_VAR(opline->result.var), &c->value); - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - zend_quick_get_constant(RT_CONSTANT(opline, opline->op2) + 1, opline->op1.num OPLINE_CC EXECUTE_DATA_CC); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(181, ZEND_FETCH_CLASS_CONSTANT, VAR|CONST|UNUSED|CLASS_FETCH, CONST, CACHE_SLOT) -{ - zend_class_entry *ce, *scope; - zend_class_constant *c; - zval *value, *zv; - USE_OPLINE - - SAVE_OPLINE(); - - do { - if (OP1_TYPE == IS_CONST) { - if (EXPECTED(CACHED_PTR(opline->extended_value + sizeof(void*)))) { - value = CACHED_PTR(opline->extended_value + sizeof(void*)); - break; - } else if (EXPECTED(CACHED_PTR(opline->extended_value))) { - ce = CACHED_PTR(opline->extended_value); - } else { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - } else { - if (OP1_TYPE == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - if (EXPECTED(CACHED_PTR(opline->extended_value) == ce)) { - value = CACHED_PTR(opline->extended_value + sizeof(void*)); - break; - } - } - - zv = zend_hash_find_ex(&ce->constants_table, Z_STR_P(RT_CONSTANT(opline, opline->op2)), 1); - if (EXPECTED(zv != NULL)) { - c = Z_PTR_P(zv); - scope = EX(func)->op_array.scope; - if (!zend_verify_const_access(c, scope)) { - zend_throw_error(NULL, "Cannot access %s const %s::%s", zend_visibility_string(Z_ACCESS_FLAGS(c->value)), ZSTR_VAL(ce->name), Z_STRVAL_P(RT_CONSTANT(opline, opline->op2))); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - value = &c->value; - if (Z_TYPE_P(value) == IS_CONSTANT_AST) { - zval_update_constant_ex(value, c->ce); - if (UNEXPECTED(EG(exception) != NULL)) { - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - CACHE_POLYMORPHIC_PTR(opline->extended_value, ce, value); - } else { - zend_throw_error(NULL, "Undefined class constant '%s'", Z_STRVAL_P(RT_CONSTANT(opline, opline->op2))); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } while (0); - - ZVAL_COPY_OR_DUP(EX_VAR(opline->result.var), value); - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(72, ZEND_ADD_ARRAY_ELEMENT, CONST|TMP|VAR|CV, CONST|TMPVAR|UNUSED|NEXT|CV, REF) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((OP1_TYPE == IS_VAR || OP1_TYPE == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = GET_OP1_ZVAL_PTR_PTR(BP_VAR_W); - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - FREE_OP1_VAR_PTR(); - } else { - expr_ptr = GET_OP1_ZVAL_PTR(BP_VAR_R); - if (OP1_TYPE == IS_TMP_VAR) { - /* pass */ - } else if (OP1_TYPE == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (OP1_TYPE == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (OP1_TYPE == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if (OP2_TYPE != IS_UNUSED) { - zend_free_op free_op2; - zval *offset = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - zend_string *str; - zend_ulong hval; - -ZEND_VM_C_LABEL(add_again): - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (OP2_TYPE != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - ZEND_VM_C_GOTO(num_index); - } - } -ZEND_VM_C_LABEL(str_index): - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -ZEND_VM_C_LABEL(num_index): - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if ((OP2_TYPE & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - ZEND_VM_C_GOTO(add_again); - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - ZEND_VM_C_GOTO(str_index); - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - ZEND_VM_C_GOTO(num_index); - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - ZEND_VM_C_GOTO(num_index); - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - ZEND_VM_C_GOTO(num_index); - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - ZEND_VM_C_GOTO(num_index); - } else if (OP2_TYPE == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - ZEND_VM_C_GOTO(str_index); - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - FREE_OP2(); - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(147, ZEND_ADD_ARRAY_UNPACK, ANY, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1; - - SAVE_OPLINE(); - op1 = GET_OP1_ZVAL_PTR(BP_VAR_R); - -ZEND_VM_C_LABEL(add_unpack_again): - if (EXPECTED(Z_TYPE_P(op1) == IS_ARRAY)) { - HashTable *ht = Z_ARRVAL_P(op1); - zval *val; - zend_string *key; - - ZEND_HASH_FOREACH_STR_KEY_VAL(ht, key, val) { - if (key) { - zend_throw_error(NULL, "Cannot unpack array with string keys"); - FREE_OP1(); - HANDLE_EXCEPTION(); - } else { - if (Z_ISREF_P(val) && Z_REFCOUNT_P(val) == 1) { - val = Z_REFVAL_P(val); - } - Z_TRY_ADDREF_P(val); - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), val)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(val); - break; - } - } - } ZEND_HASH_FOREACH_END(); - } else if (EXPECTED(Z_TYPE_P(op1) == IS_OBJECT)) { - zend_class_entry *ce = Z_OBJCE_P(op1); - zend_object_iterator *iter; - - if (!ce || !ce->get_iterator) { - zend_throw_error(NULL, "Only arrays and Traversables can be unpacked"); - } else { - iter = ce->get_iterator(ce, op1, 0); - if (UNEXPECTED(!iter)) { - FREE_OP1(); - if (!EG(exception)) { - zend_throw_exception_ex( - NULL, 0, "Object of type %s did not create an Iterator", ZSTR_VAL(ce->name) - ); - } - HANDLE_EXCEPTION(); - } - - if (iter->funcs->rewind) { - iter->funcs->rewind(iter); - } - - for (; iter->funcs->valid(iter) == SUCCESS; ) { - zval *val; - - if (UNEXPECTED(EG(exception) != NULL)) { - break; - } - - val = iter->funcs->get_current_data(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - break; - } - - if (iter->funcs->get_current_key) { - zval key; - iter->funcs->get_current_key(iter, &key); - if (UNEXPECTED(EG(exception) != NULL)) { - break; - } - - if (UNEXPECTED(Z_TYPE(key) != IS_LONG)) { - zend_throw_error(NULL, - (Z_TYPE(key) == IS_STRING) ? - "Cannot unpack Traversable with string keys" : - "Cannot unpack Traversable with non-integer keys"); - zval_ptr_dtor(&key); - break; - } - } - - ZVAL_DEREF(val); - Z_TRY_ADDREF_P(val); - - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), val)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(val); - } - - iter->funcs->move_forward(iter); - } - - zend_iterator_dtor(iter); - } - } else if (EXPECTED(Z_ISREF_P(op1))) { - op1 = Z_REFVAL_P(op1); - ZEND_VM_C_GOTO(add_unpack_again); - } else { - zend_throw_error(NULL, "Only arrays and Traversables can be unpacked"); - } - - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(71, ZEND_INIT_ARRAY, CONST|TMP|VAR|CV|UNUSED, CONST|TMPVAR|UNUSED|NEXT|CV, ARRAY_INIT|REF) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (OP1_TYPE != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_ADD_ARRAY_ELEMENT); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -ZEND_VM_COLD_CONST_HANDLER(51, ZEND_CAST, CONST|TMP|VAR|CV, ANY, TYPE) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr; - zval *result = EX_VAR(opline->result.var); - HashTable *ht; - - SAVE_OPLINE(); - expr = GET_OP1_ZVAL_PTR(BP_VAR_R); - - switch (opline->extended_value) { - case IS_NULL: - ZVAL_NULL(result); - break; - case _IS_BOOL: - ZVAL_BOOL(result, zend_is_true(expr)); - break; - case IS_LONG: - ZVAL_LONG(result, zval_get_long(expr)); - break; - case IS_DOUBLE: - ZVAL_DOUBLE(result, zval_get_double(expr)); - break; - case IS_STRING: - ZVAL_STR(result, zval_get_string(expr)); - break; - default: - if (OP1_TYPE & (IS_VAR|IS_CV)) { - ZVAL_DEREF(expr); - } - /* If value is already of correct type, return it directly */ - if (Z_TYPE_P(expr) == opline->extended_value) { - ZVAL_COPY_VALUE(result, expr); - if (OP1_TYPE == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (OP1_TYPE != IS_TMP_VAR) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } - - FREE_OP1_IF_VAR(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - if (opline->extended_value == IS_ARRAY) { - if (OP1_TYPE == IS_CONST || Z_TYPE_P(expr) != IS_OBJECT || Z_OBJCE_P(expr) == zend_ce_closure) { - if (Z_TYPE_P(expr) != IS_NULL) { - ZVAL_ARR(result, zend_new_array(1)); - expr = zend_hash_index_add_new(Z_ARRVAL_P(result), 0, expr); - if (OP1_TYPE == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(expr))) Z_ADDREF_P(expr); - } else { - if (Z_OPT_REFCOUNTED_P(expr)) Z_ADDREF_P(expr); - } - } else { - ZVAL_EMPTY_ARRAY(result); - } - } else { - HashTable *obj_ht = zend_get_properties_for(expr, ZEND_PROP_PURPOSE_ARRAY_CAST); - if (obj_ht) { - /* fast copy */ - ZVAL_ARR(result, zend_proptable_to_symtable(obj_ht, - (Z_OBJCE_P(expr)->default_properties_count || - Z_OBJ_P(expr)->handlers != &std_object_handlers || - GC_IS_RECURSIVE(obj_ht)))); - zend_release_properties(obj_ht); - } else { - ZVAL_EMPTY_ARRAY(result); - } - } - } else { - ZVAL_OBJ(result, zend_objects_new(zend_standard_class_def)); - if (Z_TYPE_P(expr) == IS_ARRAY) { - ht = zend_symtable_to_proptable(Z_ARR_P(expr)); - if (GC_FLAGS(ht) & IS_ARRAY_IMMUTABLE) { - /* TODO: try not to duplicate immutable arrays as well ??? */ - ht = zend_array_dup(ht); - } - Z_OBJ_P(result)->properties = ht; - } else if (Z_TYPE_P(expr) != IS_NULL) { - Z_OBJ_P(result)->properties = ht = zend_new_array(1); - expr = zend_hash_add_new(ht, ZSTR_KNOWN(ZEND_STR_SCALAR), expr); - if (OP1_TYPE == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(expr))) Z_ADDREF_P(expr); - } else { - if (Z_OPT_REFCOUNTED_P(expr)) Z_ADDREF_P(expr); - } - } - } - } - - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(73, ZEND_INCLUDE_OR_EVAL, CONST|TMPVAR|CV, ANY, EVAL) -{ - USE_OPLINE - zend_op_array *new_op_array; - zend_free_op free_op1; - zval *inc_filename; - - SAVE_OPLINE(); - inc_filename = GET_OP1_ZVAL_PTR(BP_VAR_R); - new_op_array = zend_include_or_eval(inc_filename, opline->extended_value); - FREE_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if (new_op_array != ZEND_FAKE_OP_ARRAY && new_op_array != NULL) { - destroy_op_array(new_op_array); - efree_size(new_op_array, sizeof(zend_op_array)); - } - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else if (new_op_array == ZEND_FAKE_OP_ARRAY) { - if (RETURN_VALUE_USED(opline)) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - } - } else if (EXPECTED(new_op_array != NULL)) { - zval *return_value = NULL; - zend_execute_data *call; - - if (RETURN_VALUE_USED(opline)) { - return_value = EX_VAR(opline->result.var); - } - - new_op_array->scope = EX(func)->op_array.scope; - - call = zend_vm_stack_push_call_frame( - (Z_TYPE_INFO(EX(This)) & ZEND_CALL_HAS_THIS) | ZEND_CALL_NESTED_CODE | ZEND_CALL_HAS_SYMBOL_TABLE, - (zend_function*)new_op_array, 0, - Z_PTR(EX(This))); - - if (EX_CALL_INFO() & ZEND_CALL_HAS_SYMBOL_TABLE) { - call->symbol_table = EX(symbol_table); - } else { - call->symbol_table = zend_rebuild_symbol_table(); - } - - call->prev_execute_data = execute_data; - i_init_code_execute_data(call, new_op_array, return_value); - if (EXPECTED(zend_execute_ex == execute_ex)) { - ZEND_VM_ENTER(); - } else { - ZEND_ADD_CALL_FLAG(call, ZEND_CALL_TOP); - zend_execute_ex(call); - zend_vm_stack_free_call_frame(call); - } - - destroy_op_array(new_op_array); - efree_size(new_op_array, sizeof(zend_op_array)); - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - } else if (RETURN_VALUE_USED(opline)) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(153, ZEND_UNSET_CV, CV, UNUSED) -{ - USE_OPLINE - zval *var = EX_VAR(opline->op1.var); - - if (Z_REFCOUNTED_P(var)) { - zend_refcounted *garbage = Z_COUNTED_P(var); - - ZVAL_UNDEF(var); - SAVE_OPLINE(); - if (!GC_DELREF(garbage)) { - rc_dtor_func(garbage); - } else { - gc_check_possible_root(garbage); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZVAL_UNDEF(var); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(74, ZEND_UNSET_VAR, CONST|TMPVAR|CV, UNUSED, VAR_FETCH) -{ - USE_OPLINE - zval *varname; - zend_string *name, *tmp_name; - HashTable *target_symbol_table; - zend_free_op free_op1; - - SAVE_OPLINE(); - - varname = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (OP1_TYPE == IS_CONST) { - name = Z_STR_P(varname); - } else if (EXPECTED(Z_TYPE_P(varname) == IS_STRING)) { - name = Z_STR_P(varname); - tmp_name = NULL; - } else { - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(varname) == IS_UNDEF)) { - varname = ZVAL_UNDEFINED_OP1(); - } - name = zval_try_get_tmp_string(varname, &tmp_name); - if (UNEXPECTED(!name)) { - FREE_OP1(); - HANDLE_EXCEPTION(); - } - } - - target_symbol_table = zend_get_target_symbol_table(opline->extended_value EXECUTE_DATA_CC); - zend_hash_del_ind(target_symbol_table, name); - - if (OP1_TYPE != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -ZEND_VM_COLD_HANDLER(179, ZEND_UNSET_STATIC_PROP, ANY, ANY, CACHE_SLOT) -{ - USE_OPLINE - zval *varname; - zend_string *name, *tmp_name = NULL; - zend_class_entry *ce; - zend_free_op free_op1; - - SAVE_OPLINE(); - - if (OP2_TYPE == IS_CONST) { - ce = CACHED_PTR(opline->extended_value); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - FREE_UNFETCHED_OP1(); - HANDLE_EXCEPTION(); - } - /*CACHE_PTR(opline->extended_value, ce);*/ - } - } else if (OP2_TYPE == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op2.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - FREE_UNFETCHED_OP1(); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op2.var)); - } - - varname = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - if (OP1_TYPE == IS_CONST) { - name = Z_STR_P(varname); - } else if (EXPECTED(Z_TYPE_P(varname) == IS_STRING)) { - name = Z_STR_P(varname); - } else { - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(varname) == IS_UNDEF)) { - varname = ZVAL_UNDEFINED_OP1(); - } - name = zval_get_tmp_string(varname, &tmp_name); - } - - zend_std_unset_static_property(ce, name); - - zend_tmp_string_release(tmp_name); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(75, ZEND_UNSET_DIM, VAR|CV, CONST|TMPVAR|CV) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - zval *offset; - zend_ulong hval; - zend_string *key; - - SAVE_OPLINE(); - container = GET_OP1_OBJ_ZVAL_PTR_PTR_UNDEF(BP_VAR_UNSET); - offset = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - - do { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - -ZEND_VM_C_LABEL(unset_dim_array): - SEPARATE_ARRAY(container); - ht = Z_ARRVAL_P(container); -ZEND_VM_C_LABEL(offset_again): - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - key = Z_STR_P(offset); - if (OP2_TYPE != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(key, hval)) { - ZEND_VM_C_GOTO(num_index_dim); - } - } -ZEND_VM_C_LABEL(str_index_dim): - if (ht == &EG(symbol_table)) { - zend_delete_global_variable(key); - } else { - zend_hash_del(ht, key); - } - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -ZEND_VM_C_LABEL(num_index_dim): - zend_hash_index_del(ht, hval); - } else if ((OP2_TYPE & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - ZEND_VM_C_GOTO(offset_again); - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - ZEND_VM_C_GOTO(num_index_dim); - } else if (Z_TYPE_P(offset) == IS_NULL) { - key = ZSTR_EMPTY_ALLOC(); - ZEND_VM_C_GOTO(str_index_dim); - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - ZEND_VM_C_GOTO(num_index_dim); - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - ZEND_VM_C_GOTO(num_index_dim); - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - hval = Z_RES_HANDLE_P(offset); - ZEND_VM_C_GOTO(num_index_dim); - } else if (OP2_TYPE == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - key = ZSTR_EMPTY_ALLOC(); - ZEND_VM_C_GOTO(str_index_dim); - } else { - zend_error(E_WARNING, "Illegal offset type in unset"); - } - break; - } else if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - ZEND_VM_C_GOTO(unset_dim_array); - } - } - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - container = ZVAL_UNDEFINED_OP1(); - } - if (OP2_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - offset = ZVAL_UNDEFINED_OP2(); - } - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if (OP2_TYPE == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - Z_OBJ_HT_P(container)->unset_dimension(container, offset); - } else if (OP1_TYPE != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_STRING)) { - zend_throw_error(NULL, "Cannot unset string offsets"); - } - } while (0); - - FREE_OP2(); - FREE_OP1_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(76, ZEND_UNSET_OBJ, VAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, CACHE_SLOT) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - zval *offset; - - SAVE_OPLINE(); - container = GET_OP1_OBJ_ZVAL_PTR_PTR_UNDEF(BP_VAR_UNSET); - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - offset = GET_OP2_ZVAL_PTR(BP_VAR_R); - - do { - if (OP1_TYPE != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (Z_TYPE_P(container) != IS_OBJECT) { - if (OP1_TYPE == IS_CV - && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - break; - } - } else { - break; - } - } - Z_OBJ_HT_P(container)->unset_property(container, offset, ((OP2_TYPE == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL)); - } while (0); - - FREE_OP2(); - FREE_OP1_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(77, ZEND_FE_RESET_R, CONST|TMP|VAR|CV, JMP_ADDR) -{ - USE_OPLINE - zend_free_op free_op1; - zval *array_ptr, *result; - - SAVE_OPLINE(); - - array_ptr = GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R); - if (EXPECTED(Z_TYPE_P(array_ptr) == IS_ARRAY)) { - result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, array_ptr); - if (OP1_TYPE != IS_TMP_VAR && Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(array_ptr); - } - Z_FE_POS_P(result) = 0; - - FREE_OP1_IF_VAR(); - ZEND_VM_NEXT_OPCODE(); - } else if (OP1_TYPE != IS_CONST && EXPECTED(Z_TYPE_P(array_ptr) == IS_OBJECT)) { - if (!Z_OBJCE_P(array_ptr)->get_iterator) { - HashTable *properties; - if (Z_OBJ_P(array_ptr)->properties - && UNEXPECTED(GC_REFCOUNT(Z_OBJ_P(array_ptr)->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(Z_OBJ_P(array_ptr)->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(Z_OBJ_P(array_ptr)->properties); - } - Z_OBJ_P(array_ptr)->properties = zend_array_dup(Z_OBJ_P(array_ptr)->properties); - } - - properties = Z_OBJPROP_P(array_ptr); - result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, array_ptr); - if (OP1_TYPE != IS_TMP_VAR) { - Z_ADDREF_P(array_ptr); - } - - if (zend_hash_num_elements(properties) == 0) { - Z_FE_ITER_P(result) = (uint32_t) -1; - FREE_OP1_IF_VAR(); - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } - - Z_FE_ITER_P(result) = zend_hash_iterator_add(properties, 0); - FREE_OP1_IF_VAR(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - zend_bool is_empty = zend_fe_reset_iterator(array_ptr, 0 OPLINE_CC EXECUTE_DATA_CC); - - FREE_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } else if (is_empty) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - } else { - zend_error(E_WARNING, "Invalid argument supplied for foreach()"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t)-1; - FREE_OP1(); - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } -} - -ZEND_VM_COLD_CONST_HANDLER(125, ZEND_FE_RESET_RW, CONST|TMP|VAR|CV, JMP_ADDR) -{ - USE_OPLINE - zend_free_op free_op1; - zval *array_ptr, *array_ref; - - SAVE_OPLINE(); - - if (OP1_TYPE == IS_VAR || OP1_TYPE == IS_CV) { - array_ref = array_ptr = GET_OP1_ZVAL_PTR_PTR(BP_VAR_R); - if (Z_ISREF_P(array_ref)) { - array_ptr = Z_REFVAL_P(array_ref); - } - } else { - array_ref = array_ptr = GET_OP1_ZVAL_PTR(BP_VAR_R); - } - - if (EXPECTED(Z_TYPE_P(array_ptr) == IS_ARRAY)) { - if (OP1_TYPE == IS_VAR || OP1_TYPE == IS_CV) { - if (array_ptr == array_ref) { - ZVAL_NEW_REF(array_ref, array_ref); - array_ptr = Z_REFVAL_P(array_ref); - } - Z_ADDREF_P(array_ref); - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), array_ref); - } else { - array_ref = EX_VAR(opline->result.var); - ZVAL_NEW_REF(array_ref, array_ptr); - array_ptr = Z_REFVAL_P(array_ref); - } - if (OP1_TYPE == IS_CONST) { - ZVAL_ARR(array_ptr, zend_array_dup(Z_ARRVAL_P(array_ptr))); - } else { - SEPARATE_ARRAY(array_ptr); - } - Z_FE_ITER_P(EX_VAR(opline->result.var)) = zend_hash_iterator_add(Z_ARRVAL_P(array_ptr), 0); - - if (OP1_TYPE == IS_VAR) { - FREE_OP1_VAR_PTR(); - } - ZEND_VM_NEXT_OPCODE(); - } else if (OP1_TYPE != IS_CONST && EXPECTED(Z_TYPE_P(array_ptr) == IS_OBJECT)) { - if (!Z_OBJCE_P(array_ptr)->get_iterator) { - HashTable *properties; - if (OP1_TYPE == IS_VAR || OP1_TYPE == IS_CV) { - if (array_ptr == array_ref) { - ZVAL_NEW_REF(array_ref, array_ref); - array_ptr = Z_REFVAL_P(array_ref); - } - Z_ADDREF_P(array_ref); - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), array_ref); - } else { - array_ptr = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(array_ptr, array_ref); - } - if (Z_OBJ_P(array_ptr)->properties - && UNEXPECTED(GC_REFCOUNT(Z_OBJ_P(array_ptr)->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(Z_OBJ_P(array_ptr)->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(Z_OBJ_P(array_ptr)->properties); - } - Z_OBJ_P(array_ptr)->properties = zend_array_dup(Z_OBJ_P(array_ptr)->properties); - } - - properties = Z_OBJPROP_P(array_ptr); - if (zend_hash_num_elements(properties) == 0) { - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t) -1; - FREE_OP1_VAR_PTR(); - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } - - Z_FE_ITER_P(EX_VAR(opline->result.var)) = zend_hash_iterator_add(properties, 0); - FREE_OP1_VAR_PTR(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - zend_bool is_empty = zend_fe_reset_iterator(array_ptr, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (OP1_TYPE == IS_VAR) { - FREE_OP1_VAR_PTR(); - } else { - FREE_OP1(); - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } else if (is_empty) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - } else { - zend_error(E_WARNING, "Invalid argument supplied for foreach()"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t)-1; - if (OP1_TYPE == IS_VAR) { - FREE_OP1_VAR_PTR(); - } else { - FREE_OP1(); - } - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } -} - -ZEND_VM_HANDLER(78, ZEND_FE_FETCH_R, VAR, ANY, JMP_ADDR) -{ - USE_OPLINE - zval *array; - zval *value; - uint32_t value_type; - HashTable *fe_ht; - HashPosition pos; - Bucket *p; - - array = EX_VAR(opline->op1.var); - SAVE_OPLINE(); - if (EXPECTED(Z_TYPE_P(array) == IS_ARRAY)) { - fe_ht = Z_ARRVAL_P(array); - pos = Z_FE_POS_P(array); - p = fe_ht->arData + pos; - while (1) { - if (UNEXPECTED(pos >= fe_ht->nNumUsed)) { - /* reached end of iteration */ -ZEND_VM_C_LABEL(fe_fetch_r_exit): - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } - value = &p->val; - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - if (UNEXPECTED(value_type == IS_INDIRECT)) { - value = Z_INDIRECT_P(value); - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - break; - } - } else { - break; - } - } - pos++; - p++; - } - Z_FE_POS_P(array) = pos + 1; - if (RETURN_VALUE_USED(opline)) { - if (!p->key) { - ZVAL_LONG(EX_VAR(opline->result.var), p->h); - } else { - ZVAL_STR_COPY(EX_VAR(opline->result.var), p->key); - } - } - } else { - zend_object_iterator *iter; - - ZEND_ASSERT(Z_TYPE_P(array) == IS_OBJECT); - if ((iter = zend_iterator_unwrap(array)) == NULL) { - /* plain object */ - - fe_ht = Z_OBJPROP_P(array); - pos = zend_hash_iterator_pos(Z_FE_ITER_P(array), fe_ht); - p = fe_ht->arData + pos; - while (1) { - if (UNEXPECTED(pos >= fe_ht->nNumUsed)) { - /* reached end of iteration */ - ZEND_VM_C_GOTO(fe_fetch_r_exit); - } - - value = &p->val; - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - if (UNEXPECTED(value_type == IS_INDIRECT)) { - value = Z_INDIRECT_P(value); - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF) - && EXPECTED(zend_check_property_access(Z_OBJ_P(array), p->key, 0) == SUCCESS)) { - break; - } - } else if (EXPECTED(Z_OBJCE_P(array)->default_properties_count == 0) - || !p->key - || zend_check_property_access(Z_OBJ_P(array), p->key, 1) == SUCCESS) { - break; - } - } - pos++; - p++; - } - if (RETURN_VALUE_USED(opline)) { - if (UNEXPECTED(!p->key)) { - ZVAL_LONG(EX_VAR(opline->result.var), p->h); - } else if (ZSTR_VAL(p->key)[0]) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), p->key); - } else { - const char *class_name, *prop_name; - size_t prop_name_len; - zend_unmangle_property_name_ex( - p->key, &class_name, &prop_name, &prop_name_len); - ZVAL_STRINGL(EX_VAR(opline->result.var), prop_name, prop_name_len); - } - } - EG(ht_iterators)[Z_FE_ITER_P(array)].pos = pos + 1; - } else { - if (EXPECTED(++iter->index > 0)) { - /* This could cause an endless loop if index becomes zero again. - * In case that ever happens we need an additional flag. */ - iter->funcs->move_forward(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - if (UNEXPECTED(iter->funcs->valid(iter) == FAILURE)) { - /* reached end of iteration */ - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - ZEND_VM_C_GOTO(fe_fetch_r_exit); - } - } - value = iter->funcs->get_current_data(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - if (!value) { - /* failure in get_current_data */ - ZEND_VM_C_GOTO(fe_fetch_r_exit); - } - if (RETURN_VALUE_USED(opline)) { - if (iter->funcs->get_current_key) { - iter->funcs->get_current_key(iter, EX_VAR(opline->result.var)); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - } else { - ZVAL_LONG(EX_VAR(opline->result.var), iter->index); - } - } - value_type = Z_TYPE_INFO_P(value); - } - } - - if (EXPECTED(OP2_TYPE == IS_CV)) { - zval *variable_ptr = EX_VAR(opline->op2.var); - zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - } else { - zval *res = EX_VAR(opline->op2.var); - zend_refcounted *gc = Z_COUNTED_P(value); - - ZVAL_COPY_VALUE_EX(res, value, gc, value_type); - if (Z_TYPE_INFO_REFCOUNTED(value_type)) { - GC_ADDREF(gc); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(126, ZEND_FE_FETCH_RW, VAR, ANY, JMP_ADDR) -{ - USE_OPLINE - zval *array; - zval *value; - uint32_t value_type; - HashTable *fe_ht; - HashPosition pos; - Bucket *p; - - array = EX_VAR(opline->op1.var); - SAVE_OPLINE(); - - ZVAL_DEREF(array); - if (EXPECTED(Z_TYPE_P(array) == IS_ARRAY)) { - pos = zend_hash_iterator_pos_ex(Z_FE_ITER_P(EX_VAR(opline->op1.var)), array); - fe_ht = Z_ARRVAL_P(array); - p = fe_ht->arData + pos; - while (1) { - if (UNEXPECTED(pos >= fe_ht->nNumUsed)) { - /* reached end of iteration */ - ZEND_VM_C_GOTO(fe_fetch_w_exit); - } - value = &p->val; - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - if (UNEXPECTED(value_type == IS_INDIRECT)) { - value = Z_INDIRECT_P(value); - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - break; - } - } else { - break; - } - } - pos++; - p++; - } - if (RETURN_VALUE_USED(opline)) { - if (!p->key) { - ZVAL_LONG(EX_VAR(opline->result.var), p->h); - } else { - ZVAL_STR_COPY(EX_VAR(opline->result.var), p->key); - } - } - EG(ht_iterators)[Z_FE_ITER_P(EX_VAR(opline->op1.var))].pos = pos + 1; - } else if (EXPECTED(Z_TYPE_P(array) == IS_OBJECT)) { - zend_object_iterator *iter; - - if ((iter = zend_iterator_unwrap(array)) == NULL) { - /* plain object */ - - fe_ht = Z_OBJPROP_P(array); - pos = zend_hash_iterator_pos(Z_FE_ITER_P(EX_VAR(opline->op1.var)), fe_ht); - p = fe_ht->arData + pos; - while (1) { - if (UNEXPECTED(pos >= fe_ht->nNumUsed)) { - /* reached end of iteration */ - ZEND_VM_C_GOTO(fe_fetch_w_exit); - } - - value = &p->val; - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - if (UNEXPECTED(value_type == IS_INDIRECT)) { - value = Z_INDIRECT_P(value); - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF) - && EXPECTED(zend_check_property_access(Z_OBJ_P(array), p->key, 0) == SUCCESS)) { - if ((value_type & Z_TYPE_MASK) != IS_REFERENCE) { - zend_property_info *prop_info = - zend_get_typed_property_info_for_slot(Z_OBJ_P(array), value); - if (UNEXPECTED(prop_info)) { - ZVAL_NEW_REF(value, value); - ZEND_REF_ADD_TYPE_SOURCE(Z_REF_P(value), prop_info); - value_type = IS_REFERENCE_EX; - } - } - break; - } - } else if (EXPECTED(Z_OBJCE_P(array)->default_properties_count == 0) - || !p->key - || zend_check_property_access(Z_OBJ_P(array), p->key, 1) == SUCCESS) { - break; - } - } - pos++; - p++; - } - if (RETURN_VALUE_USED(opline)) { - if (UNEXPECTED(!p->key)) { - ZVAL_LONG(EX_VAR(opline->result.var), p->h); - } else if (ZSTR_VAL(p->key)[0]) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), p->key); - } else { - const char *class_name, *prop_name; - size_t prop_name_len; - zend_unmangle_property_name_ex( - p->key, &class_name, &prop_name, &prop_name_len); - ZVAL_STRINGL(EX_VAR(opline->result.var), prop_name, prop_name_len); - } - } - EG(ht_iterators)[Z_FE_ITER_P(EX_VAR(opline->op1.var))].pos = pos + 1; - } else { - if (++iter->index > 0) { - /* This could cause an endless loop if index becomes zero again. - * In case that ever happens we need an additional flag. */ - iter->funcs->move_forward(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - if (UNEXPECTED(iter->funcs->valid(iter) == FAILURE)) { - /* reached end of iteration */ - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - ZEND_VM_C_GOTO(fe_fetch_w_exit); - } - } - value = iter->funcs->get_current_data(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - if (!value) { - /* failure in get_current_data */ - ZEND_VM_C_GOTO(fe_fetch_w_exit); - } - if (RETURN_VALUE_USED(opline)) { - if (iter->funcs->get_current_key) { - iter->funcs->get_current_key(iter, EX_VAR(opline->result.var)); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - } else { - ZVAL_LONG(EX_VAR(opline->result.var), iter->index); - } - } - value_type = Z_TYPE_INFO_P(value); - } - } else { - zend_error(E_WARNING, "Invalid argument supplied for foreach()"); - if (UNEXPECTED(EG(exception))) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } -ZEND_VM_C_LABEL(fe_fetch_w_exit): - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } - - if (EXPECTED((value_type & Z_TYPE_MASK) != IS_REFERENCE)) { - zend_refcounted *gc = Z_COUNTED_P(value); - zval *ref; - ZVAL_NEW_EMPTY_REF(value); - ref = Z_REFVAL_P(value); - ZVAL_COPY_VALUE_EX(ref, value, gc, value_type); - } - if (EXPECTED(OP2_TYPE == IS_CV)) { - zval *variable_ptr = EX_VAR(opline->op2.var); - if (EXPECTED(variable_ptr != value)) { - zend_reference *ref; - - ref = Z_REF_P(value); - GC_ADDREF(ref); - i_zval_ptr_dtor(variable_ptr); - ZVAL_REF(variable_ptr, ref); - } - } else { - Z_ADDREF_P(value); - ZVAL_REF(EX_VAR(opline->op2.var), Z_REF_P(value)); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_HANDLER(154, ZEND_ISSET_ISEMPTY_CV, CV, UNUSED, ISSET, SPEC(ISSET)) -{ - USE_OPLINE - zval *value; - - value = EX_VAR(opline->op1.var); - if (!(opline->extended_value & ZEND_ISEMPTY)) { - if (Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL)) { - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else { - int result; - - SAVE_OPLINE(); - result = !i_zend_is_true(value); - if (UNEXPECTED(EG(exception))) { - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } -} - -ZEND_VM_HANDLER(114, ZEND_ISSET_ISEMPTY_VAR, CONST|TMPVAR|CV, UNUSED, VAR_FETCH|ISSET) -{ - USE_OPLINE - zval *value; - int result; - zend_free_op free_op1; - zval *varname; - zend_string *name, *tmp_name; - HashTable *target_symbol_table; - - SAVE_OPLINE(); - varname = GET_OP1_ZVAL_PTR(BP_VAR_IS); - if (OP1_TYPE == IS_CONST) { - name = Z_STR_P(varname); - } else { - name = zval_get_tmp_string(varname, &tmp_name); - } - - target_symbol_table = zend_get_target_symbol_table(opline->extended_value EXECUTE_DATA_CC); - value = zend_hash_find_ex(target_symbol_table, name, OP1_TYPE == IS_CONST); - - if (OP1_TYPE != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - FREE_OP1(); - - if (!value) { - result = (opline->extended_value & ZEND_ISEMPTY); - } else { - if (Z_TYPE_P(value) == IS_INDIRECT) { - value = Z_INDIRECT_P(value); - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - if (Z_ISREF_P(value)) { - value = Z_REFVAL_P(value); - } - result = Z_TYPE_P(value) > IS_NULL; - } else { - result = !i_zend_is_true(value); - } - } - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -ZEND_VM_HANDLER(180, ZEND_ISSET_ISEMPTY_STATIC_PROP, ANY, CLASS_FETCH, ISSET|CACHE_SLOT) -{ - USE_OPLINE - zval *value; - int result; - - SAVE_OPLINE(); - - result = zend_fetch_static_property_address(&value, NULL, opline->extended_value & ~ZEND_ISEMPTY, BP_VAR_IS, 0 OPLINE_CC EXECUTE_DATA_CC); - - if (!(opline->extended_value & ZEND_ISEMPTY)) { - result = result == SUCCESS && Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL); - } else { - result = result != SUCCESS || !i_zend_is_true(value); - } - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(115, ZEND_ISSET_ISEMPTY_DIM_OBJ, CONST|TMPVAR|CV, CONST|TMPVAR|CV, ISSET) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - int result; - zend_ulong hval; - zval *offset; - - SAVE_OPLINE(); - container = GET_OP1_OBJ_ZVAL_PTR_UNDEF(BP_VAR_IS); - offset = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - zval *value; - zend_string *str; - -ZEND_VM_C_LABEL(isset_dim_obj_array): - ht = Z_ARRVAL_P(container); -ZEND_VM_C_LABEL(isset_again): - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (OP2_TYPE != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - ZEND_VM_C_GOTO(num_index_prop); - } - } - value = zend_hash_find_ex_ind(ht, str, OP2_TYPE == IS_CONST); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -ZEND_VM_C_LABEL(num_index_prop): - value = zend_hash_index_find(ht, hval); - } else if ((OP2_TYPE & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(offset))) { - offset = Z_REFVAL_P(offset); - ZEND_VM_C_GOTO(isset_again); - } else { - value = zend_find_array_dim_slow(ht, offset EXECUTE_DATA_CC); - if (UNEXPECTED(EG(exception))) { - result = 0; - ZEND_VM_C_GOTO(isset_dim_obj_exit); - } - } - - if (!(opline->extended_value & ZEND_ISEMPTY)) { - /* > IS_NULL means not IS_UNDEF and not IS_NULL */ - result = value != NULL && Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL); - - if (OP1_TYPE & (IS_CONST|IS_CV)) { - /* avoid exception check */ - FREE_OP2(); - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } - } else { - result = (value == NULL || !i_zend_is_true(value)); - } - ZEND_VM_C_GOTO(isset_dim_obj_exit); - } else if ((OP1_TYPE & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - ZEND_VM_C_GOTO(isset_dim_obj_array); - } - } - - if (OP2_TYPE == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - result = zend_isset_dim_slow(container, offset EXECUTE_DATA_CC); - } else { - result = zend_isempty_dim_slow(container, offset EXECUTE_DATA_CC); - } - -ZEND_VM_C_LABEL(isset_dim_obj_exit): - FREE_OP2(); - FREE_OP1(); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONST_HANDLER(148, ZEND_ISSET_ISEMPTY_PROP_OBJ, CONST|TMPVAR|UNUSED|THIS|CV, CONST|TMPVAR|CV, ISSET|CACHE_SLOT) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - int result; - zval *offset; - - SAVE_OPLINE(); - container = GET_OP1_OBJ_ZVAL_PTR(BP_VAR_IS); - - if (OP1_TYPE == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } - - offset = GET_OP2_ZVAL_PTR(BP_VAR_R); - - if (OP1_TYPE == IS_CONST || - (OP1_TYPE != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - if ((OP1_TYPE & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - result = (opline->extended_value & ZEND_ISEMPTY); - ZEND_VM_C_GOTO(isset_object_finish); - } - } else { - result = (opline->extended_value & ZEND_ISEMPTY); - ZEND_VM_C_GOTO(isset_object_finish); - } - } - - result = - (opline->extended_value & ZEND_ISEMPTY) ^ - Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY), ((OP2_TYPE == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_ISEMPTY) : NULL)); - -ZEND_VM_C_LABEL(isset_object_finish): - FREE_OP2(); - FREE_OP1(); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(194, ZEND_ARRAY_KEY_EXISTS, CV|TMPVAR|CONST, CV|TMPVAR|CONST) -{ - USE_OPLINE - - zend_free_op free_op1, free_op2; - zval *key, *subject; - HashTable *ht; - uint32_t result; - - SAVE_OPLINE(); - - key = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - subject = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { -ZEND_VM_C_LABEL(array_key_exists_array): - ht = Z_ARRVAL_P(subject); - result = zend_array_key_exists_fast(ht, key OPLINE_CC EXECUTE_DATA_CC); - } else { - if ((OP2_TYPE & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(subject))) { - subject = Z_REFVAL_P(subject); - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { - ZEND_VM_C_GOTO(array_key_exists_array); - } - } - result = zend_array_key_exists_slow(subject, key OPLINE_CC EXECUTE_DATA_CC); - } - - FREE_OP2(); - FREE_OP1(); - ZEND_VM_SMART_BRANCH(result == IS_TRUE, 1); - Z_TYPE_INFO_P(EX_VAR(opline->result.var)) = result; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|UNUSED|CV, ANY) */ -ZEND_VM_COLD_HANDLER(79, ZEND_EXIT, ANY, ANY) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (OP1_TYPE != IS_UNUSED) { - zend_free_op free_op1; - zval *ptr = GET_OP1_ZVAL_PTR(BP_VAR_R); - - do { - if (Z_TYPE_P(ptr) == IS_LONG) { - EG(exit_status) = Z_LVAL_P(ptr); - } else { - if ((OP1_TYPE & (IS_VAR|IS_CV)) && Z_ISREF_P(ptr)) { - ptr = Z_REFVAL_P(ptr); - if (Z_TYPE_P(ptr) == IS_LONG) { - EG(exit_status) = Z_LVAL_P(ptr); - break; - } - } - zend_print_zval(ptr, 0); - } - } while (0); - FREE_OP1(); - } - zend_bailout(); - ZEND_VM_NEXT_OPCODE(); /* Never reached */ -} - -ZEND_VM_HANDLER(57, ZEND_BEGIN_SILENCE, ANY, ANY) -{ - USE_OPLINE - - ZVAL_LONG(EX_VAR(opline->result.var), EG(error_reporting)); - - if (EG(error_reporting)) { - do { - EG(error_reporting) = 0; - if (!EG(error_reporting_ini_entry)) { - zval *zv = zend_hash_find_ex(EG(ini_directives), ZSTR_KNOWN(ZEND_STR_ERROR_REPORTING), 1); - if (zv) { - EG(error_reporting_ini_entry) = (zend_ini_entry *)Z_PTR_P(zv); - } else { - break; - } - } - if (!EG(error_reporting_ini_entry)->modified) { - if (!EG(modified_ini_directives)) { - ALLOC_HASHTABLE(EG(modified_ini_directives)); - zend_hash_init(EG(modified_ini_directives), 8, NULL, NULL, 0); - } - if (EXPECTED(zend_hash_add_ptr(EG(modified_ini_directives), ZSTR_KNOWN(ZEND_STR_ERROR_REPORTING), EG(error_reporting_ini_entry)) != NULL)) { - EG(error_reporting_ini_entry)->orig_value = EG(error_reporting_ini_entry)->value; - EG(error_reporting_ini_entry)->orig_modifiable = EG(error_reporting_ini_entry)->modifiable; - EG(error_reporting_ini_entry)->modified = 1; - } - } - } while (0); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(58, ZEND_END_SILENCE, TMP, ANY) -{ - USE_OPLINE - - if (!EG(error_reporting) && Z_LVAL_P(EX_VAR(opline->op1.var)) != 0) { - EG(error_reporting) = Z_LVAL_P(EX_VAR(opline->op1.var)); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_COLD_CONST_HANDLER(152, ZEND_JMP_SET, CONST|TMP|VAR|CV, JMP_ADDR) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - zval *ref = NULL; - int ret; - - SAVE_OPLINE(); - value = GET_OP1_ZVAL_PTR(BP_VAR_R); - - if ((OP1_TYPE == IS_VAR || OP1_TYPE == IS_CV) && Z_ISREF_P(value)) { - if (OP1_TYPE == IS_VAR) { - ref = value; - } - value = Z_REFVAL_P(value); - } - - ret = i_zend_is_true(value); - - if (UNEXPECTED(EG(exception))) { - FREE_OP1(); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - - if (ret) { - zval *result = EX_VAR(opline->result.var); - - ZVAL_COPY_VALUE(result, value); - if (OP1_TYPE == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (OP1_TYPE == IS_CV) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } else if (OP1_TYPE == IS_VAR && ref) { - zend_reference *r = Z_REF_P(ref); - - if (UNEXPECTED(GC_DELREF(r) == 0)) { - efree_size(r, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - FREE_OP1(); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_COLD_CONST_HANDLER(169, ZEND_COALESCE, CONST|TMP|VAR|CV, JMP_ADDR) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - zval *ref = NULL; - - SAVE_OPLINE(); - value = GET_OP1_ZVAL_PTR(BP_VAR_IS); - - if ((OP1_TYPE & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - if (OP1_TYPE & IS_VAR) { - ref = value; - } - value = Z_REFVAL_P(value); - } - - if (Z_TYPE_P(value) > IS_NULL) { - zval *result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, value); - if (OP1_TYPE == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (OP1_TYPE == IS_CV) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } else if ((OP1_TYPE & IS_VAR) && ref) { - zend_reference *r = Z_REF_P(ref); - - if (UNEXPECTED(GC_DELREF(r) == 0)) { - efree_size(r, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - FREE_OP1(); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_HANDLER(31, ZEND_QM_ASSIGN, CONST|TMP|VAR|CV, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - zval *result = EX_VAR(opline->result.var); - - value = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZVAL_NULL(result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - if (OP1_TYPE == IS_CV) { - ZVAL_COPY_DEREF(result, value); - } else if (OP1_TYPE == IS_VAR) { - if (UNEXPECTED(Z_ISREF_P(value))) { - ZVAL_COPY_VALUE(result, Z_REFVAL_P(value)); - if (UNEXPECTED(Z_DELREF_P(value) == 0)) { - efree_size(Z_REF_P(value), sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } else { - ZVAL_COPY_VALUE(result, value); - } - } else { - ZVAL_COPY_VALUE(result, value); - if (OP1_TYPE == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) { - Z_ADDREF_P(result); - } - } - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_COLD_HANDLER(101, ZEND_EXT_STMT, ANY, ANY) -{ - USE_OPLINE - - if (!EG(no_extensions)) { - SAVE_OPLINE(); - zend_llist_apply_with_argument(&zend_extensions, (llist_apply_with_arg_func_t) zend_extension_statement_handler, execute_data); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_COLD_HANDLER(102, ZEND_EXT_FCALL_BEGIN, ANY, ANY) -{ - USE_OPLINE - - if (!EG(no_extensions)) { - SAVE_OPLINE(); - zend_llist_apply_with_argument(&zend_extensions, (llist_apply_with_arg_func_t) zend_extension_fcall_begin_handler, execute_data); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_COLD_HANDLER(103, ZEND_EXT_FCALL_END, ANY, ANY) -{ - USE_OPLINE - - if (!EG(no_extensions)) { - SAVE_OPLINE(); - zend_llist_apply_with_argument(&zend_extensions, (llist_apply_with_arg_func_t) zend_extension_fcall_end_handler, execute_data); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(144, ZEND_DECLARE_CLASS, CONST, ANY) -{ - USE_OPLINE - - SAVE_OPLINE(); - do_bind_class(RT_CONSTANT(opline, opline->op1), (OP2_TYPE == IS_CONST) ? Z_STR_P(RT_CONSTANT(opline, opline->op2)) : NULL); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(145, ZEND_DECLARE_CLASS_DELAYED, CONST, CONST) -{ - USE_OPLINE - zval *lcname, *zv; - zend_class_entry *ce; - - ce = CACHED_PTR(opline->extended_value); - if (ce == NULL) { - lcname = RT_CONSTANT(opline, opline->op1); - zv = zend_hash_find_ex(EG(class_table), Z_STR_P(lcname + 1), 1); - if (zv) { - SAVE_OPLINE(); - ce = Z_CE_P(zv); - zv = zend_hash_set_bucket_key(EG(class_table), (Bucket*)zv, Z_STR_P(lcname)); - if (UNEXPECTED(!zv)) { - zend_error_noreturn(E_COMPILE_ERROR, "Cannot declare %s %s, because the name is already in use", zend_get_object_type(ce), ZSTR_VAL(ce->name)); - } else { - if (zend_do_link_class(ce, Z_STR_P(RT_CONSTANT(opline, opline->op2))) == FAILURE) { - /* Reload bucket pointer, the hash table may have been reallocated */ - zv = zend_hash_find(EG(class_table), Z_STR_P(lcname)); - zend_hash_set_bucket_key(EG(class_table), (Bucket *) zv, Z_STR_P(lcname + 1)); - HANDLE_EXCEPTION(); - } - } - } - CACHE_PTR(opline->extended_value, ce); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(146, ZEND_DECLARE_ANON_CLASS, ANY, ANY, CACHE_SLOT) -{ - zval *zv; - zend_class_entry *ce; - USE_OPLINE - - ce = CACHED_PTR(opline->extended_value); - if (UNEXPECTED(ce == NULL)) { - zend_string *rtd_key = Z_STR_P(RT_CONSTANT(opline, opline->op1)); - zv = zend_hash_find_ex(EG(class_table), rtd_key, 1); - if (UNEXPECTED(zv == NULL)) { - SAVE_OPLINE(); - do { - ZEND_ASSERT(EX(func)->op_array.fn_flags & ZEND_ACC_PRELOADED); - if (zend_preload_autoload - && zend_preload_autoload(EX(func)->op_array.filename) == SUCCESS) { - zv = zend_hash_find_ex(EG(class_table), rtd_key, 1); - if (EXPECTED(zv != NULL)) { - break; - } - } - zend_error_noreturn(E_ERROR, "Anonymous class wasn't preloaded"); - } while (0); - } - ZEND_ASSERT(zv != NULL); - ce = Z_CE_P(zv); - if (!(ce->ce_flags & ZEND_ACC_LINKED)) { - SAVE_OPLINE(); - if (zend_do_link_class(ce, (OP2_TYPE == IS_CONST) ? Z_STR_P(RT_CONSTANT(opline, opline->op2)) : NULL) == FAILURE) { - HANDLE_EXCEPTION(); - } - } - CACHE_PTR(opline->extended_value, ce); - } - Z_CE_P(EX_VAR(opline->result.var)) = ce; - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(141, ZEND_DECLARE_FUNCTION, ANY, ANY) -{ - USE_OPLINE - - SAVE_OPLINE(); - do_bind_function(RT_CONSTANT(opline, opline->op1)); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(105, ZEND_TICKS, ANY, ANY, NUM) -{ - USE_OPLINE - - if ((uint32_t)++EG(ticks_count) >= opline->extended_value) { - EG(ticks_count) = 0; - if (zend_ticks_function) { - SAVE_OPLINE(); - zend_ticks_function(opline->extended_value); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(138, ZEND_INSTANCEOF, TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR, CACHE_SLOT) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr; - zend_bool result; - - SAVE_OPLINE(); - expr = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - -ZEND_VM_C_LABEL(try_instanceof): - if (Z_TYPE_P(expr) == IS_OBJECT) { - zend_class_entry *ce; - - if (OP2_TYPE == IS_CONST) { - ce = CACHED_PTR(opline->extended_value); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD); - if (EXPECTED(ce)) { - CACHE_PTR(opline->extended_value, ce); - } - } - } else if (OP2_TYPE == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op2.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - FREE_OP1(); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op2.var)); - } - result = ce && instanceof_function(Z_OBJCE_P(expr), ce); - } else if ((OP1_TYPE & (IS_VAR|IS_CV)) && Z_TYPE_P(expr) == IS_REFERENCE) { - expr = Z_REFVAL_P(expr); - ZEND_VM_C_GOTO(try_instanceof); - } else { - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(expr) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - result = 0; - } - FREE_OP1(); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_HANDLER(104, ZEND_EXT_NOP, ANY, ANY) -{ - USE_OPLINE - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_HANDLER(0, ZEND_NOP, ANY, ANY) -{ - USE_OPLINE - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HELPER(zend_dispatch_try_catch_finally_helper, ANY, ANY, uint32_t try_catch_offset, uint32_t op_num) -{ - /* May be NULL during generator closing (only finally blocks are executed) */ - zend_object *ex = EG(exception); - - /* Walk try/catch/finally structures upwards, performing the necessary actions */ - while (try_catch_offset != (uint32_t) -1) { - zend_try_catch_element *try_catch = - &EX(func)->op_array.try_catch_array[try_catch_offset]; - - if (op_num < try_catch->catch_op && ex) { - /* Go to catch block */ - cleanup_live_vars(execute_data, op_num, try_catch->catch_op); - ZEND_VM_JMP_EX(&EX(func)->op_array.opcodes[try_catch->catch_op], 0); - - } else if (op_num < try_catch->finally_op) { - /* Go to finally block */ - zval *fast_call = EX_VAR(EX(func)->op_array.opcodes[try_catch->finally_end].op1.var); - cleanup_live_vars(execute_data, op_num, try_catch->finally_op); - Z_OBJ_P(fast_call) = EG(exception); - EG(exception) = NULL; - Z_OPLINE_NUM_P(fast_call) = (uint32_t)-1; - ZEND_VM_JMP_EX(&EX(func)->op_array.opcodes[try_catch->finally_op], 0); - - } else if (op_num < try_catch->finally_end) { - zval *fast_call = EX_VAR(EX(func)->op_array.opcodes[try_catch->finally_end].op1.var); - - /* cleanup incomplete RETURN statement */ - if (Z_OPLINE_NUM_P(fast_call) != (uint32_t)-1 - && (EX(func)->op_array.opcodes[Z_OPLINE_NUM_P(fast_call)].op2_type & (IS_TMP_VAR | IS_VAR))) { - zval *return_value = EX_VAR(EX(func)->op_array.opcodes[Z_OPLINE_NUM_P(fast_call)].op2.var); - - zval_ptr_dtor(return_value); - } - - /* Chain potential exception from wrapping finally block */ - if (Z_OBJ_P(fast_call)) { - if (ex) { - zend_exception_set_previous(ex, Z_OBJ_P(fast_call)); - } else { - EG(exception) = Z_OBJ_P(fast_call); - } - ex = Z_OBJ_P(fast_call); - } - } - - try_catch_offset--; - } - - /* Uncaught exception */ - cleanup_live_vars(execute_data, op_num, 0); - if (UNEXPECTED((EX_CALL_INFO() & ZEND_CALL_GENERATOR) != 0)) { - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - zend_generator_close(generator, 1); - ZEND_VM_RETURN(); - } else { - /* We didn't execute RETURN, and have to initialize return_value */ - if (EX(return_value)) { - ZVAL_UNDEF(EX(return_value)); - } - ZEND_VM_DISPATCH_TO_HELPER(zend_leave_helper); - } -} - -ZEND_VM_HANDLER(149, ZEND_HANDLE_EXCEPTION, ANY, ANY) -{ - const zend_op *throw_op = EG(opline_before_exception); - uint32_t throw_op_num = throw_op - EX(func)->op_array.opcodes; - int i, current_try_catch_offset = -1; - - if ((throw_op->opcode == ZEND_FREE || throw_op->opcode == ZEND_FE_FREE) - && throw_op->extended_value & ZEND_FREE_ON_RETURN) { - /* exceptions thrown because of loop var destruction on return/break/... - * are logically thrown at the end of the foreach loop, so adjust the - * throw_op_num. - */ - const zend_live_range *range = find_live_range( - &EX(func)->op_array, throw_op_num, throw_op->op1.var); - throw_op_num = range->end; - } - - /* Find the innermost try/catch/finally the exception was thrown in */ - for (i = 0; i < EX(func)->op_array.last_try_catch; i++) { - zend_try_catch_element *try_catch = &EX(func)->op_array.try_catch_array[i]; - if (try_catch->try_op > throw_op_num) { - /* further blocks will not be relevant... */ - break; - } - if (throw_op_num < try_catch->catch_op || throw_op_num < try_catch->finally_end) { - current_try_catch_offset = i; - } - } - - cleanup_unfinished_calls(execute_data, throw_op_num); - - if (throw_op->result_type & (IS_VAR | IS_TMP_VAR)) { - switch (throw_op->opcode) { - case ZEND_ADD_ARRAY_ELEMENT: - case ZEND_ADD_ARRAY_UNPACK: - case ZEND_ROPE_INIT: - case ZEND_ROPE_ADD: - break; /* exception while building structures, live range handling will free those */ - - case ZEND_FETCH_CLASS: - case ZEND_DECLARE_ANON_CLASS: - break; /* return value is zend_class_entry pointer */ - - default: - zval_ptr_dtor_nogc(EX_VAR(throw_op->result.var)); - } - } - - ZEND_VM_DISPATCH_TO_HELPER(zend_dispatch_try_catch_finally_helper, try_catch_offset, current_try_catch_offset, op_num, throw_op_num); -} - -ZEND_VM_HANDLER(150, ZEND_USER_OPCODE, ANY, ANY) -{ - USE_OPLINE - int ret; - - SAVE_OPLINE(); - ret = zend_user_opcode_handlers[opline->opcode](execute_data); - opline = EX(opline); - - switch (ret) { - case ZEND_USER_OPCODE_CONTINUE: - ZEND_VM_CONTINUE(); - case ZEND_USER_OPCODE_RETURN: - if (UNEXPECTED((EX_CALL_INFO() & ZEND_CALL_GENERATOR) != 0)) { - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - zend_generator_close(generator, 1); - ZEND_VM_RETURN(); - } else { - ZEND_VM_DISPATCH_TO_HELPER(zend_leave_helper); - } - case ZEND_USER_OPCODE_ENTER: - ZEND_VM_ENTER(); - case ZEND_USER_OPCODE_LEAVE: - ZEND_VM_LEAVE(); - case ZEND_USER_OPCODE_DISPATCH: - ZEND_VM_DISPATCH(opline->opcode, opline); - default: - ZEND_VM_DISPATCH((zend_uchar)(ret & 0xff), opline); - } -} - -ZEND_VM_HANDLER(143, ZEND_DECLARE_CONST, CONST, CONST) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *name; - zval *val; - zend_constant c; - - SAVE_OPLINE(); - name = GET_OP1_ZVAL_PTR(BP_VAR_R); - val = GET_OP2_ZVAL_PTR(BP_VAR_R); - - ZVAL_COPY(&c.value, val); - if (Z_OPT_CONSTANT(c.value)) { - if (UNEXPECTED(zval_update_constant_ex(&c.value, EX(func)->op_array.scope) != SUCCESS)) { - zval_ptr_dtor_nogc(&c.value); - FREE_OP1(); - FREE_OP2(); - HANDLE_EXCEPTION(); - } - } - /* non persistent, case sensitive */ - ZEND_CONSTANT_SET_FLAGS(&c, CONST_CS, PHP_USER_CONSTANT); - c.name = zend_string_copy(Z_STR_P(name)); - - if (zend_register_constant(&c) == FAILURE) { - } - - FREE_OP1(); - FREE_OP2(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(142, ZEND_DECLARE_LAMBDA_FUNCTION, CONST, UNUSED, CACHE_SLOT) -{ - USE_OPLINE - zend_function *func; - zval *zfunc; - zval *object; - zend_class_entry *called_scope; - - func = CACHED_PTR(opline->extended_value); - if (UNEXPECTED(func == NULL)) { - zfunc = zend_hash_find_ex(EG(function_table), Z_STR_P(RT_CONSTANT(opline, opline->op1)), 1); - ZEND_ASSERT(zfunc != NULL); - func = Z_FUNC_P(zfunc); - ZEND_ASSERT(func->type == ZEND_USER_FUNCTION); - CACHE_PTR(opline->extended_value, func); - } - - if (Z_TYPE(EX(This)) == IS_OBJECT) { - called_scope = Z_OBJCE(EX(This)); - if (UNEXPECTED((func->common.fn_flags & ZEND_ACC_STATIC) || - (EX(func)->common.fn_flags & ZEND_ACC_STATIC))) { - object = NULL; - } else { - object = &EX(This); - } - } else { - called_scope = Z_CE(EX(This)); - object = NULL; - } - zend_create_closure(EX_VAR(opline->result.var), func, - EX(func)->op_array.scope, called_scope, object); - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(156, ZEND_SEPARATE, VAR, UNUSED) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - if (UNEXPECTED(Z_ISREF_P(var_ptr))) { - if (UNEXPECTED(Z_REFCOUNT_P(var_ptr) == 1)) { - ZVAL_UNREF(var_ptr); - } - } - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_COLD_HELPER(zend_yield_in_closed_generator_helper, ANY, ANY) -{ - USE_OPLINE - - SAVE_OPLINE(); - zend_throw_error(NULL, "Cannot yield from finally in a force-closed generator"); - FREE_UNFETCHED_OP2(); - FREE_UNFETCHED_OP1(); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); -} - -ZEND_VM_HANDLER(160, ZEND_YIELD, CONST|TMP|VAR|CV|UNUSED, CONST|TMP|VAR|CV|UNUSED, SRC) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_yield_in_closed_generator_helper); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (OP1_TYPE != IS_UNUSED) { - zend_free_op free_op1; - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (OP1_TYPE & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = GET_OP1_ZVAL_PTR(BP_VAR_R); - ZVAL_COPY_VALUE(&generator->value, value); - if (OP1_TYPE == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = GET_OP1_ZVAL_PTR_PTR(BP_VAR_W); - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (OP1_TYPE == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - FREE_OP1_VAR_PTR(); - } - } else { - zval *value = GET_OP1_ZVAL_PTR(BP_VAR_R); - - /* Consts, temporary variables and references need copying */ - if (OP1_TYPE == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (OP1_TYPE == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((OP1_TYPE & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - FREE_OP1_IF_VAR(); - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (OP1_TYPE == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (OP2_TYPE != IS_UNUSED) { - zend_free_op free_op2; - zval *key = GET_OP2_ZVAL_PTR(BP_VAR_R); - - /* Consts, temporary variables and references need copying */ - if (OP2_TYPE == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (OP2_TYPE == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((OP2_TYPE & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - FREE_OP2_IF_VAR(); - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (OP2_TYPE == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -ZEND_VM_HANDLER(166, ZEND_YIELD_FROM, CONST|TMP|VAR|CV, ANY) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - zval *val; - zend_free_op free_op1; - - SAVE_OPLINE(); - val = GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R); - - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - zend_throw_error(NULL, "Cannot use \"yield from\" in a force-closed generator"); - FREE_OP1(); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - if (Z_TYPE_P(val) == IS_ARRAY) { - ZVAL_COPY_VALUE(&generator->values, val); - if (OP1_TYPE != IS_TMP_VAR && Z_OPT_REFCOUNTED_P(val)) { - Z_ADDREF_P(val); - } - Z_FE_POS(generator->values) = 0; - - FREE_OP1_IF_VAR(); - } else if (OP1_TYPE != IS_CONST && Z_TYPE_P(val) == IS_OBJECT && Z_OBJCE_P(val)->get_iterator) { - zend_class_entry *ce = Z_OBJCE_P(val); - if (ce == zend_ce_generator) { - zend_generator *new_gen = (zend_generator *) Z_OBJ_P(val); - - if (OP1_TYPE != IS_TMP_VAR) { - Z_ADDREF_P(val); - } - FREE_OP1_IF_VAR(); - - if (Z_ISUNDEF(new_gen->retval)) { - if (UNEXPECTED(zend_generator_get_current(new_gen) == generator)) { - zend_throw_error(NULL, "Impossible to yield from the Generator being currently run"); - zval_ptr_dtor(val); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else { - zend_generator_yield_from(generator, new_gen); - } - } else if (UNEXPECTED(new_gen->execute_data == NULL)) { - zend_throw_error(NULL, "Generator passed to yield from was aborted without proper return and is unable to continue"); - zval_ptr_dtor(val); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else { - if (RETURN_VALUE_USED(opline)) { - ZVAL_COPY(EX_VAR(opline->result.var), &new_gen->retval); - } - ZEND_VM_NEXT_OPCODE(); - } - } else { - zend_object_iterator *iter = ce->get_iterator(ce, val, 0); - FREE_OP1(); - - if (UNEXPECTED(!iter) || UNEXPECTED(EG(exception))) { - if (!EG(exception)) { - zend_throw_error(NULL, "Object of type %s did not create an Iterator", ZSTR_VAL(ce->name)); - } - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - iter->index = 0; - if (iter->funcs->rewind) { - iter->funcs->rewind(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - OBJ_RELEASE(&iter->std); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - } - - ZVAL_OBJ(&generator->values, &iter->std); - } - } else { - zend_throw_error(NULL, "Can use \"yield from\" only with arrays and Traversables"); - FREE_OP1(); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - /* This is the default return value - * when the expression is a Generator, it will be overwritten in zend_generator_resume() */ - if (RETURN_VALUE_USED(opline)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - - /* This generator has no send target (though the generator we delegate to might have one) */ - generator->send_target = NULL; - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -ZEND_VM_HANDLER(159, ZEND_DISCARD_EXCEPTION, ANY, ANY) -{ - USE_OPLINE - zval *fast_call = EX_VAR(opline->op1.var); - SAVE_OPLINE(); - - /* cleanup incomplete RETURN statement */ - if (Z_OPLINE_NUM_P(fast_call) != (uint32_t)-1 - && (EX(func)->op_array.opcodes[Z_OPLINE_NUM_P(fast_call)].op2_type & (IS_TMP_VAR | IS_VAR))) { - zval *return_value = EX_VAR(EX(func)->op_array.opcodes[Z_OPLINE_NUM_P(fast_call)].op2.var); - - zval_ptr_dtor(return_value); - } - - /* cleanup delayed exception */ - if (Z_OBJ_P(fast_call) != NULL) { - /* discard the previously thrown exception */ - OBJ_RELEASE(Z_OBJ_P(fast_call)); - Z_OBJ_P(fast_call) = NULL; - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(162, ZEND_FAST_CALL, JMP_ADDR, ANY) -{ - USE_OPLINE - zval *fast_call = EX_VAR(opline->result.var); - - Z_OBJ_P(fast_call) = NULL; - /* set return address */ - Z_OPLINE_NUM_P(fast_call) = opline - EX(func)->op_array.opcodes; - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op1), 0); -} - -ZEND_VM_HANDLER(163, ZEND_FAST_RET, ANY, TRY_CATCH) -{ - USE_OPLINE - zval *fast_call = EX_VAR(opline->op1.var); - uint32_t current_try_catch_offset, current_op_num; - - if (Z_OPLINE_NUM_P(fast_call) != (uint32_t)-1) { - const zend_op *fast_ret = EX(func)->op_array.opcodes + Z_OPLINE_NUM_P(fast_call); - - ZEND_VM_JMP_EX(fast_ret + 1, 0); - } - - /* special case for unhandled exceptions */ - EG(exception) = Z_OBJ_P(fast_call); - Z_OBJ_P(fast_call) = NULL; - current_try_catch_offset = opline->op2.num; - current_op_num = opline - EX(func)->op_array.opcodes; - ZEND_VM_DISPATCH_TO_HELPER(zend_dispatch_try_catch_finally_helper, try_catch_offset, current_try_catch_offset, op_num, current_op_num); -} - -ZEND_VM_HOT_HANDLER(168, ZEND_BIND_GLOBAL, CV, CONST, CACHE_SLOT) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zend_string *varname; - zval *value; - zval *variable_ptr; - uintptr_t idx; - zend_reference *ref; - - ZEND_VM_REPEATABLE_OPCODE - - varname = Z_STR_P(GET_OP2_ZVAL_PTR(BP_VAR_R)); - - /* We store "hash slot index" + 1 (NULL is a mark of uninitialized cache slot) */ - idx = (uintptr_t)CACHED_PTR(opline->extended_value) - 1; - if (EXPECTED(idx < EG(symbol_table).nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)EG(symbol_table).arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == varname) || - (EXPECTED(p->h == ZSTR_H(varname)) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, varname))))) { - - value = (zval*)p; /* value = &p->val; */ - ZEND_VM_C_GOTO(check_indirect); - } - } - - value = zend_hash_find_ex(&EG(symbol_table), varname, 1); - if (UNEXPECTED(value == NULL)) { - value = zend_hash_add_new(&EG(symbol_table), varname, &EG(uninitialized_zval)); - idx = (char*)value - (char*)EG(symbol_table).arData; - /* Store "hash slot index" + 1 (NULL is a mark of uninitialized cache slot) */ - CACHE_PTR(opline->extended_value, (void*)(idx + 1)); - } else { - idx = (char*)value - (char*)EG(symbol_table).arData; - /* Store "hash slot index" + 1 (NULL is a mark of uninitialized cache slot) */ - CACHE_PTR(opline->extended_value, (void*)(idx + 1)); -ZEND_VM_C_LABEL(check_indirect): - /* GLOBAL variable may be an INDIRECT pointer to CV */ - if (UNEXPECTED(Z_TYPE_P(value) == IS_INDIRECT)) { - value = Z_INDIRECT_P(value); - if (UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - ZVAL_NULL(value); - } - } - } - - if (UNEXPECTED(!Z_ISREF_P(value))) { - ZVAL_MAKE_REF_EX(value, 2); - ref = Z_REF_P(value); - } else { - ref = Z_REF_P(value); - GC_ADDREF(ref); - } - - variable_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_W); - - if (UNEXPECTED(Z_REFCOUNTED_P(variable_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(variable_ptr); - uint32_t refcnt = GC_DELREF(ref); - - if (EXPECTED(variable_ptr != value)) { - if (refcnt == 0) { - SAVE_OPLINE(); - rc_dtor_func(ref); - if (UNEXPECTED(EG(exception))) { - ZVAL_NULL(variable_ptr); - HANDLE_EXCEPTION(); - } - } else { - gc_check_possible_root(ref); - } - } - } - ZVAL_REF(variable_ptr, ref); - - ZEND_VM_REPEAT_OPCODE(ZEND_BIND_GLOBAL); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_COLD_CONST_HANDLER(121, ZEND_STRLEN, CONST|TMPVAR|CV, ANY) -{ - USE_OPLINE - zval *value; - zend_free_op free_op1; - - value = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - if (EXPECTED(Z_TYPE_P(value) == IS_STRING)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_STRLEN_P(value)); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE(); - } else { - zend_bool strict; - - if ((OP1_TYPE & (IS_VAR|IS_CV)) && Z_TYPE_P(value) == IS_REFERENCE) { - value = Z_REFVAL_P(value); - if (EXPECTED(Z_TYPE_P(value) == IS_STRING)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_STRLEN_P(value)); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE(); - } - } - - SAVE_OPLINE(); - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - value = ZVAL_UNDEFINED_OP1(); - } - strict = EX_USES_STRICT_TYPES(); - do { - if (EXPECTED(!strict)) { - zend_string *str; - zval tmp; - - ZVAL_COPY(&tmp, value); - if (zend_parse_arg_str_weak(&tmp, &str)) { - ZVAL_LONG(EX_VAR(opline->result.var), ZSTR_LEN(str)); - zval_ptr_dtor(&tmp); - break; - } - zval_ptr_dtor(&tmp); - } - if (!EG(exception)) { - zend_internal_type_error(strict, "strlen() expects parameter 1 to be string, %s given", zend_get_type_by_const(Z_TYPE_P(value))); - } - ZVAL_NULL(EX_VAR(opline->result.var)); - } while (0); - } - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_NOCONST_HANDLER(123, ZEND_TYPE_CHECK, CONST|TMPVAR|CV, ANY, TYPE_MASK) -{ - USE_OPLINE - zval *value; - int result = 0; - zend_free_op free_op1; - - value = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - if ((opline->extended_value >> (uint32_t)Z_TYPE_P(value)) & 1) { -ZEND_VM_C_LABEL(type_check_resource): - if (EXPECTED(Z_TYPE_P(value) != IS_RESOURCE) - || EXPECTED(NULL != zend_rsrc_list_get_rsrc_type(Z_RES_P(value)))) { - result = 1; - } - } else if ((OP1_TYPE & (IS_CV|IS_VAR)) && Z_ISREF_P(value)) { - value = Z_REFVAL_P(value); - if ((opline->extended_value >> (uint32_t)Z_TYPE_P(value)) & 1) { - ZEND_VM_C_GOTO(type_check_resource); - } - } else if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - result = ((1 << IS_NULL) & opline->extended_value) != 0; - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - SAVE_OPLINE(); - FREE_OP1(); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } -} - -ZEND_VM_HOT_HANDLER(122, ZEND_DEFINED, CONST, ANY, CACHE_SLOT) -{ - USE_OPLINE - zend_constant *c; - - c = CACHED_PTR(opline->extended_value); - if (EXPECTED(c != NULL)) { - if (!IS_SPECIAL_CACHE_VAL(c)) { -ZEND_VM_C_LABEL(defined_true): - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(zend_hash_num_elements(EG(zend_constants)) == DECODE_SPECIAL_CACHE_NUM(c))) { -ZEND_VM_C_LABEL(defined_false): - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } - if (zend_quick_check_constant(RT_CONSTANT(opline, opline->op1) OPLINE_CC EXECUTE_DATA_CC) != SUCCESS) { - CACHE_PTR(opline->extended_value, ENCODE_SPECIAL_CACHE_NUM(zend_hash_num_elements(EG(zend_constants)))); - ZEND_VM_C_GOTO(defined_false); - } else { - ZEND_VM_C_GOTO(defined_true); - } -} - -ZEND_VM_HANDLER(151, ZEND_ASSERT_CHECK, ANY, JMP_ADDR) -{ - USE_OPLINE - - if (EG(assertions) <= 0) { - zend_op *target = OP_JMP_ADDR(opline, opline->op2); - if (RETURN_VALUE_USED(opline)) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - } - ZEND_VM_JMP_EX(target, 0); - } else { - ZEND_VM_NEXT_OPCODE(); - } -} - -ZEND_VM_HANDLER(157, ZEND_FETCH_CLASS_NAME, UNUSED|CLASS_FETCH, ANY) -{ - uint32_t fetch_type; - zend_class_entry *called_scope, *scope; - USE_OPLINE - - fetch_type = opline->op1.num; - - scope = EX(func)->op_array.scope; - if (UNEXPECTED(scope == NULL)) { - SAVE_OPLINE(); - zend_throw_error(NULL, "Cannot use \"%s\" when no class scope is active", - fetch_type == ZEND_FETCH_CLASS_SELF ? "self" : - fetch_type == ZEND_FETCH_CLASS_PARENT ? "parent" : "static"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - - switch (fetch_type) { - case ZEND_FETCH_CLASS_SELF: - ZVAL_STR_COPY(EX_VAR(opline->result.var), scope->name); - break; - case ZEND_FETCH_CLASS_PARENT: - if (UNEXPECTED(scope->parent == NULL)) { - SAVE_OPLINE(); - zend_throw_error(NULL, - "Cannot use \"parent\" when current class scope has no parent"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - ZVAL_STR_COPY(EX_VAR(opline->result.var), scope->parent->name); - break; - case ZEND_FETCH_CLASS_STATIC: - if (Z_TYPE(EX(This)) == IS_OBJECT) { - called_scope = Z_OBJCE(EX(This)); - } else { - called_scope = Z_CE(EX(This)); - } - ZVAL_STR_COPY(EX_VAR(opline->result.var), called_scope->name); - break; - EMPTY_SWITCH_DEFAULT_CASE() - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(158, ZEND_CALL_TRAMPOLINE, ANY, ANY) -{ - zend_array *args = NULL; - zend_function *fbc = EX(func); - zval *ret = EX(return_value); - uint32_t call_info = EX_CALL_INFO() & (ZEND_CALL_NESTED | ZEND_CALL_TOP | ZEND_CALL_RELEASE_THIS); - uint32_t num_args = EX_NUM_ARGS(); - zend_execute_data *call; - - SAVE_OPLINE(); - - if (num_args) { - zval *p = ZEND_CALL_ARG(execute_data, 1); - zval *end = p + num_args; - - args = zend_new_array(num_args); - zend_hash_real_init_packed(args); - ZEND_HASH_FILL_PACKED(args) { - do { - ZEND_HASH_FILL_ADD(p); - p++; - } while (p != end); - } ZEND_HASH_FILL_END(); - } - - call = execute_data; - execute_data = EG(current_execute_data) = EX(prev_execute_data); - - call->func = (fbc->op_array.fn_flags & ZEND_ACC_STATIC) ? fbc->op_array.scope->__callstatic : fbc->op_array.scope->__call; - ZEND_ASSERT(zend_vm_calc_used_stack(2, call->func) <= (size_t)(((char*)EG(vm_stack_end)) - (char*)call)); - ZEND_CALL_NUM_ARGS(call) = 2; - - ZVAL_STR(ZEND_CALL_ARG(call, 1), fbc->common.function_name); - if (args) { - ZVAL_ARR(ZEND_CALL_ARG(call, 2), args); - } else { - ZVAL_EMPTY_ARRAY(ZEND_CALL_ARG(call, 2)); - } - zend_free_trampoline(fbc); - fbc = call->func; - - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION)) { - if (UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - execute_data = call; - i_init_func_execute_data(&fbc->op_array, ret, 0 EXECUTE_DATA_CC); - if (EXPECTED(zend_execute_ex == execute_ex)) { - LOAD_OPLINE_EX(); - ZEND_VM_ENTER_EX(); - } else { - SAVE_OPLINE_EX(); - execute_data = EX(prev_execute_data); - LOAD_OPLINE(); - ZEND_ADD_CALL_FLAG(call, ZEND_CALL_TOP); - zend_execute_ex(call); - } - } else { - zval retval; - - ZEND_ASSERT(fbc->type == ZEND_INTERNAL_FUNCTION); - - EG(current_execute_data) = call; - - if (UNEXPECTED(fbc->common.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) - && UNEXPECTED(!zend_verify_internal_arg_types(fbc, call))) { - zend_vm_stack_free_call_frame(call); - if (ret) { - ZVAL_UNDEF(ret); - } - ZEND_VM_C_GOTO(call_trampoline_end); - } - - if (ret == NULL) { - ret = &retval; - } - - ZVAL_NULL(ret); - if (!zend_execute_internal) { - /* saves one function call if zend_execute_internal is not used */ - fbc->internal_function.handler(call, ret); - } else { - zend_execute_internal(call, ret); - } - -#if ZEND_DEBUG - if (!EG(exception) && call->func) { - ZEND_ASSERT(!(call->func->common.fn_flags & ZEND_ACC_HAS_RETURN_TYPE) || - zend_verify_internal_return_type(call->func, ret)); - ZEND_ASSERT((call->func->common.fn_flags & ZEND_ACC_RETURN_REFERENCE) - ? Z_ISREF_P(ret) : !Z_ISREF_P(ret)); - } -#endif - - EG(current_execute_data) = call->prev_execute_data; - -ZEND_VM_C_LABEL(call_trampoline_end): - zend_vm_stack_free_args(call); - if (ret == &retval) { - zval_ptr_dtor(ret); - } - } - - execute_data = EG(current_execute_data); - - if (!EX(func) || !ZEND_USER_CODE(EX(func)->type) || (call_info & ZEND_CALL_TOP)) { - ZEND_VM_RETURN(); - } - - if (UNEXPECTED(call_info & ZEND_CALL_RELEASE_THIS)) { - zend_object *object = Z_OBJ(call->This); - OBJ_RELEASE(object); - } - zend_vm_stack_free_call_frame(call); - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION_LEAVE(); - } - - LOAD_OPLINE(); - ZEND_VM_INC_OPCODE(); - ZEND_VM_LEAVE(); -} - -ZEND_VM_HANDLER(182, ZEND_BIND_LEXICAL, TMP, CV, REF) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *closure, *var; - - closure = GET_OP1_ZVAL_PTR(BP_VAR_R); - if (opline->extended_value & ZEND_BIND_REF) { - /* By-ref binding */ - var = GET_OP2_ZVAL_PTR(BP_VAR_W); - if (Z_ISREF_P(var)) { - Z_ADDREF_P(var); - } else { - ZVAL_MAKE_REF_EX(var, 2); - } - } else { - var = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (UNEXPECTED(Z_ISUNDEF_P(var)) && !(opline->extended_value & ZEND_BIND_IMPLICIT)) { - SAVE_OPLINE(); - var = ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZVAL_DEREF(var); - Z_TRY_ADDREF_P(var); - } - - zend_closure_bind_var_ex(closure, - (opline->extended_value & ~(ZEND_BIND_REF|ZEND_BIND_IMPLICIT)), var); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(183, ZEND_BIND_STATIC, CV, UNUSED, REF) -{ - USE_OPLINE - zend_free_op free_op1; - HashTable *ht; - zval *value; - zval *variable_ptr; - - variable_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_W); - i_zval_ptr_dtor(variable_ptr); - - ht = ZEND_MAP_PTR_GET(EX(func)->op_array.static_variables_ptr); - if (!ht) { - ZEND_ASSERT(EX(func)->op_array.fn_flags & (ZEND_ACC_IMMUTABLE|ZEND_ACC_PRELOADED)); - ht = zend_array_dup(EX(func)->op_array.static_variables); - ZEND_MAP_PTR_SET(EX(func)->op_array.static_variables_ptr, ht); - } else if (GC_REFCOUNT(ht) > 1) { - if (!(GC_FLAGS(ht) & IS_ARRAY_IMMUTABLE)) { - GC_DELREF(ht); - } - ht = zend_array_dup(ht); - ZEND_MAP_PTR_SET(EX(func)->op_array.static_variables_ptr, ht); - } - - value = (zval*)((char*)ht->arData + (opline->extended_value & ~(ZEND_BIND_REF|ZEND_BIND_IMPLICIT))); - - if (opline->extended_value & ZEND_BIND_REF) { - if (Z_TYPE_P(value) == IS_CONSTANT_AST) { - SAVE_OPLINE(); - if (UNEXPECTED(zval_update_constant_ex(value, EX(func)->op_array.scope) != SUCCESS)) { - ZVAL_NULL(variable_ptr); - HANDLE_EXCEPTION(); - } - } - if (UNEXPECTED(!Z_ISREF_P(value))) { - zend_reference *ref = (zend_reference*)emalloc(sizeof(zend_reference)); - GC_SET_REFCOUNT(ref, 2); - GC_TYPE_INFO(ref) = IS_REFERENCE; - ZVAL_COPY_VALUE(&ref->val, value); - ref->sources.ptr = NULL; - Z_REF_P(value) = ref; - Z_TYPE_INFO_P(value) = IS_REFERENCE_EX; - ZVAL_REF(variable_ptr, ref); - } else { - Z_ADDREF_P(value); - ZVAL_REF(variable_ptr, Z_REF_P(value)); - } - } else { - ZVAL_COPY(variable_ptr, value); - } - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(184, ZEND_FETCH_THIS, UNUSED, UNUSED) -{ - USE_OPLINE - - if (EXPECTED(Z_TYPE(EX(This)) == IS_OBJECT)) { - zval *result = EX_VAR(opline->result.var); - - ZVAL_OBJ(result, Z_OBJ(EX(This))); - Z_ADDREF_P(result); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_DISPATCH_TO_HELPER(zend_this_not_in_object_context_helper); - } -} - -ZEND_VM_HANDLER(186, ZEND_ISSET_ISEMPTY_THIS, UNUSED, UNUSED) -{ - USE_OPLINE - - ZVAL_BOOL(EX_VAR(opline->result.var), - (opline->extended_value & ZEND_ISEMPTY) ^ - (Z_TYPE(EX(This)) == IS_OBJECT)); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(49, ZEND_CHECK_VAR, CV, UNUSED) -{ - USE_OPLINE - zval *op1 = EX_VAR(opline->op1.var); - - if (UNEXPECTED(Z_TYPE_INFO_P(op1) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(140, ZEND_MAKE_REF, VAR|CV, UNUSED) -{ - USE_OPLINE - zval *op1 = EX_VAR(opline->op1.var); - - if (OP1_TYPE == IS_CV) { - if (UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_NEW_EMPTY_REF(op1); - Z_SET_REFCOUNT_P(op1, 2); - ZVAL_NULL(Z_REFVAL_P(op1)); - ZVAL_REF(EX_VAR(opline->result.var), Z_REF_P(op1)); - } else { - if (Z_ISREF_P(op1)) { - Z_ADDREF_P(op1); - } else { - ZVAL_MAKE_REF_EX(op1, 2); - } - ZVAL_REF(EX_VAR(opline->result.var), Z_REF_P(op1)); - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_INDIRECT)) { - op1 = Z_INDIRECT_P(op1); - if (EXPECTED(!Z_ISREF_P(op1))) { - ZVAL_MAKE_REF_EX(op1, 2); - } else { - GC_ADDREF(Z_REF_P(op1)); - } - ZVAL_REF(EX_VAR(opline->result.var), Z_REF_P(op1)); - } else { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), op1); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(187, ZEND_SWITCH_LONG, CONST|TMPVARCV, CONST, JMP_ADDR) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op, *jump_zv; - HashTable *jumptable; - - op = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - jumptable = Z_ARRVAL_P(GET_OP2_ZVAL_PTR(BP_VAR_R)); - - if (Z_TYPE_P(op) != IS_LONG) { - ZVAL_DEREF(op); - if (Z_TYPE_P(op) != IS_LONG) { - /* Wrong type, fall back to ZEND_CASE chain */ - ZEND_VM_NEXT_OPCODE(); - } - } - - jump_zv = zend_hash_index_find(jumptable, Z_LVAL_P(op)); - if (jump_zv != NULL) { - ZEND_VM_SET_RELATIVE_OPCODE(opline, Z_LVAL_P(jump_zv)); - ZEND_VM_CONTINUE(); - } else { - /* default */ - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(188, ZEND_SWITCH_STRING, CONST|TMPVARCV, CONST, JMP_ADDR) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op, *jump_zv; - HashTable *jumptable; - - op = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - jumptable = Z_ARRVAL_P(GET_OP2_ZVAL_PTR(BP_VAR_R)); - - if (Z_TYPE_P(op) != IS_STRING) { - if (OP1_TYPE == IS_CONST) { - /* Wrong type, fall back to ZEND_CASE chain */ - ZEND_VM_NEXT_OPCODE(); - } else { - ZVAL_DEREF(op); - if (Z_TYPE_P(op) != IS_STRING) { - /* Wrong type, fall back to ZEND_CASE chain */ - ZEND_VM_NEXT_OPCODE(); - } - } - } - - jump_zv = zend_hash_find_ex(jumptable, Z_STR_P(op), OP1_TYPE == IS_CONST); - if (jump_zv != NULL) { - ZEND_VM_SET_RELATIVE_OPCODE(opline, Z_LVAL_P(jump_zv)); - ZEND_VM_CONTINUE(); - } else { - /* default */ - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } -} - -ZEND_VM_COLD_CONSTCONST_HANDLER(189, ZEND_IN_ARRAY, CONST|TMP|VAR|CV, CONST, NUM) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1; - HashTable *ht = Z_ARRVAL_P(RT_CONSTANT(opline, opline->op2)); - zval *result; - - SAVE_OPLINE(); - op1 = GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R); - if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - result = zend_hash_find_ex(ht, Z_STR_P(op1), OP1_TYPE == IS_CONST); - } else if (opline->extended_value) { - if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - result = zend_hash_index_find(ht, Z_LVAL_P(op1)); - } else { - result = NULL; - } - } else if (Z_TYPE_P(op1) <= IS_FALSE) { - result = zend_hash_find_ex(ht, ZSTR_EMPTY_ALLOC(), 1); - } else { - zend_string *key; - zval key_tmp, result_tmp, *val; - - result = NULL; - ZEND_HASH_FOREACH_STR_KEY_VAL(ht, key, val) { - ZVAL_STR(&key_tmp, key); - compare_function(&result_tmp, op1, &key_tmp); - if (Z_LVAL(result_tmp) == 0) { - result = val; - break; - } - } ZEND_HASH_FOREACH_END(); - } - FREE_OP1(); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result != NULL); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONST_HANDLER(190, ZEND_COUNT, CONST|TMPVAR|CV, UNUSED) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1; - zend_long count; - - SAVE_OPLINE(); - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - while (1) { - if (Z_TYPE_P(op1) == IS_ARRAY) { - count = zend_array_count(Z_ARRVAL_P(op1)); - break; - } else if (Z_TYPE_P(op1) == IS_OBJECT) { - /* first, we check if the handler is defined */ - if (Z_OBJ_HT_P(op1)->count_elements) { - if (SUCCESS == Z_OBJ_HT_P(op1)->count_elements(op1, &count)) { - break; - } - if (UNEXPECTED(EG(exception))) { - count = 0; - break; - } - } - - /* if not and the object implements Countable we call its count() method */ - if (instanceof_function(Z_OBJCE_P(op1), zend_ce_countable)) { - zval retval; - - zend_call_method_with_0_params(op1, NULL, NULL, "count", &retval); - count = zval_get_long(&retval); - zval_ptr_dtor(&retval); - break; - } - - /* If There's no handler and it doesn't implement Countable then add a warning */ - count = 1; - } else if ((OP1_TYPE & (IS_VAR|IS_CV)) != 0 && Z_TYPE_P(op1) == IS_REFERENCE) { - op1 = Z_REFVAL_P(op1); - continue; - } else if (Z_TYPE_P(op1) <= IS_NULL) { - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - count = 0; - } else { - count = 1; - } - zend_error(E_WARNING, "%s(): Parameter must be an array or an object that implements Countable", opline->extended_value ? "sizeof" : "count"); - break; - } - - ZVAL_LONG(EX_VAR(opline->result.var), count); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_COLD_CONST_HANDLER(191, ZEND_GET_CLASS, UNUSED|CONST|TMPVAR|CV, UNUSED) -{ - USE_OPLINE - - if (OP1_TYPE == IS_UNUSED) { - if (UNEXPECTED(!EX(func)->common.scope)) { - SAVE_OPLINE(); - zend_error(E_WARNING, "get_class() called without object from outside a class"); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZVAL_STR_COPY(EX_VAR(opline->result.var), EX(func)->common.scope->name); - ZEND_VM_NEXT_OPCODE(); - } - } else { - zend_free_op free_op1; - zval *op1; - - SAVE_OPLINE(); - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - while (1) { - if (Z_TYPE_P(op1) == IS_OBJECT) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), Z_OBJCE_P(op1)->name); - } else if ((OP1_TYPE & (IS_VAR|IS_CV)) != 0 && Z_TYPE_P(op1) == IS_REFERENCE) { - op1 = Z_REFVAL_P(op1); - continue; - } else { - if (OP1_TYPE == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - zend_error(E_WARNING, "get_class() expects parameter 1 to be object, %s given", zend_get_type_by_const(Z_TYPE_P(op1))); - ZVAL_FALSE(EX_VAR(opline->result.var)); - } - break; - } - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -ZEND_VM_HANDLER(192, ZEND_GET_CALLED_CLASS, UNUSED, UNUSED) -{ - USE_OPLINE - - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), Z_OBJCE(EX(This))->name); - } else if (Z_CE(EX(This))) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), Z_CE(EX(This))->name); - } else { - ZVAL_FALSE(EX_VAR(opline->result.var)); - if (UNEXPECTED(!EX(func)->common.scope)) { - SAVE_OPLINE(); - zend_error(E_WARNING, "get_called_class() called from outside a class"); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_COLD_CONST_HANDLER(193, ZEND_GET_TYPE, CONST|TMP|VAR|CV, UNUSED) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1; - zend_string *type; - - SAVE_OPLINE(); - op1 = GET_OP1_ZVAL_PTR_DEREF(BP_VAR_R); - type = zend_zval_get_type(op1); - if (EXPECTED(type)) { - ZVAL_INTERNED_STR(EX_VAR(opline->result.var), type); - } else { - ZVAL_STRING(EX_VAR(opline->result.var), "unknown type"); - } - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HANDLER(171, ZEND_FUNC_NUM_ARGS, UNUSED, UNUSED) -{ - USE_OPLINE - - ZVAL_LONG(EX_VAR(opline->result.var), EX_NUM_ARGS()); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(172, ZEND_FUNC_GET_ARGS, UNUSED|CONST, UNUSED) -{ - USE_OPLINE - zend_array *ht; - uint32_t arg_count, result_size, skip; - - arg_count = EX_NUM_ARGS(); - if (OP1_TYPE == IS_CONST) { - skip = Z_LVAL_P(RT_CONSTANT(opline, opline->op1)); - if (arg_count < skip) { - result_size = 0; - } else { - result_size = arg_count - skip; - } - } else { - skip = 0; - result_size = arg_count; - } - - if (result_size) { - uint32_t first_extra_arg = EX(func)->op_array.num_args; - - ht = zend_new_array(result_size); - ZVAL_ARR(EX_VAR(opline->result.var), ht); - zend_hash_real_init_packed(ht); - ZEND_HASH_FILL_PACKED(ht) { - zval *p, *q; - uint32_t i = skip; - p = EX_VAR_NUM(i); - if (arg_count > first_extra_arg) { - while (i < first_extra_arg) { - q = p; - if (EXPECTED(Z_TYPE_INFO_P(q) != IS_UNDEF)) { - ZVAL_DEREF(q); - if (Z_OPT_REFCOUNTED_P(q)) { - Z_ADDREF_P(q); - } - ZEND_HASH_FILL_SET(q); - } else { - ZEND_HASH_FILL_SET_NULL(); - } - ZEND_HASH_FILL_NEXT(); - p++; - i++; - } - if (skip < first_extra_arg) { - skip = 0; - } else { - skip -= first_extra_arg; - } - p = EX_VAR_NUM(EX(func)->op_array.last_var + EX(func)->op_array.T + skip); - } - while (i < arg_count) { - q = p; - if (EXPECTED(Z_TYPE_INFO_P(q) != IS_UNDEF)) { - ZVAL_DEREF(q); - if (Z_OPT_REFCOUNTED_P(q)) { - Z_ADDREF_P(q); - } - ZEND_HASH_FILL_SET(q); - } else { - ZEND_HASH_FILL_SET_NULL(); - } - ZEND_HASH_FILL_NEXT(); - p++; - i++; - } - } ZEND_HASH_FILL_END(); - ht->nNumOfElements = result_size; - } else { - ZVAL_EMPTY_ARRAY(EX_VAR(opline->result.var)); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HANDLER(167, ZEND_COPY_TMP, TMPVAR, UNUSED) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value = GET_OP1_ZVAL_PTR(BP_VAR_R); - zval *result = EX_VAR(opline->result.var); - ZVAL_COPY(result, value); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_JMP, (OP_JMP_ADDR(op, op->op1) > op), ZEND_JMP_FORWARD, JMP_ADDR, ANY) -{ - USE_OPLINE - - OPLINE = OP_JMP_ADDR(opline, opline->op1); - ZEND_VM_CONTINUE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_ADD, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_ADD_LONG_NO_OVERFLOW, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST,COMMUTATIVE)) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = EX_VAR(opline->result.var); - ZVAL_LONG(result, Z_LVAL_P(op1) + Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_ADD, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_ADD_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST,COMMUTATIVE)) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = EX_VAR(opline->result.var); - fast_long_add_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_ADD, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_ADD_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST,COMMUTATIVE)) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, Z_DVAL_P(op1) + Z_DVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_SUB, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_SUB_LONG_NO_OVERFLOW, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST)) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = EX_VAR(opline->result.var); - ZVAL_LONG(result, Z_LVAL_P(op1) - Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_SUB, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_SUB_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST)) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = EX_VAR(opline->result.var); - fast_long_sub_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_SUB, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_SUB_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST)) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, Z_DVAL_P(op1) - Z_DVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_MUL, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_MUL_LONG_NO_OVERFLOW, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST,COMMUTATIVE)) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = EX_VAR(opline->result.var); - ZVAL_LONG(result, Z_LVAL_P(op1) * Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_MUL, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_MUL_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST,COMMUTATIVE)) -{ - USE_OPLINE - zval *op1, *op2, *result; - zend_long overflow; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = EX_VAR(opline->result.var); - ZEND_SIGNED_MULTIPLY_LONG(Z_LVAL_P(op1), Z_LVAL_P(op2), Z_LVAL_P(result), Z_DVAL_P(result), overflow); - Z_TYPE_INFO_P(result) = overflow ? IS_DOUBLE : IS_LONG; - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_MUL, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_MUL_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(NO_CONST_CONST,COMMUTATIVE)) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, Z_DVAL_P(op1) * Z_DVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_IS_EQUAL, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_IS_EQUAL_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST,COMMUTATIVE)) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = (Z_LVAL_P(op1) == Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_IS_EQUAL, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_IS_EQUAL_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST,COMMUTATIVE)) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = (Z_DVAL_P(op1) == Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_IS_NOT_EQUAL, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_IS_NOT_EQUAL_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST,COMMUTATIVE)) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = (Z_LVAL_P(op1) != Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_IS_NOT_EQUAL, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_IS_NOT_EQUAL_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST,COMMUTATIVE)) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = (Z_DVAL_P(op1) != Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_IS_SMALLER, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_IS_SMALLER_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST)) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = (Z_LVAL_P(op1) < Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_IS_SMALLER, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_IS_SMALLER_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST)) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = (Z_DVAL_P(op1) < Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_IS_SMALLER_OR_EQUAL, (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG), ZEND_IS_SMALLER_OR_EQUAL_LONG, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST)) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_IS_SMALLER_OR_EQUAL, (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE), ZEND_IS_SMALLER_OR_EQUAL_DOUBLE, CONST|TMPVARCV, CONST|TMPVARCV, SPEC(SMART_BRANCH,NO_CONST_CONST)) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - op2 = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_PRE_INC, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG), ZEND_PRE_INC_LONG_NO_OVERFLOW, CV, ANY, SPEC(RETVAL)) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - Z_LVAL_P(var_ptr)++; - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_PRE_INC, (op1_info == MAY_BE_LONG), ZEND_PRE_INC_LONG, CV, ANY, SPEC(RETVAL)) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - fast_long_increment_function(var_ptr); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_PRE_DEC, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG), ZEND_PRE_DEC_LONG_NO_OVERFLOW, CV, ANY, SPEC(RETVAL)) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - Z_LVAL_P(var_ptr)--; - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_PRE_DEC, (op1_info == MAY_BE_LONG), ZEND_PRE_DEC_LONG, CV, ANY, SPEC(RETVAL)) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - fast_long_decrement_function(var_ptr); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_POST_INC, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG), ZEND_POST_INC_LONG_NO_OVERFLOW, CV, ANY) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - Z_LVAL_P(var_ptr)++; - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_POST_INC, (op1_info == MAY_BE_LONG), ZEND_POST_INC_LONG, CV, ANY) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - fast_long_increment_function(var_ptr); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_POST_DEC, (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG), ZEND_POST_DEC_LONG_NO_OVERFLOW, CV, ANY) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - Z_LVAL_P(var_ptr)--; - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_POST_DEC, (op1_info == MAY_BE_LONG), ZEND_POST_DEC_LONG, CV, ANY) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = GET_OP1_ZVAL_PTR_PTR_UNDEF(BP_VAR_RW); - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - fast_long_decrement_function(var_ptr); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_QM_ASSIGN, (op1_info == MAY_BE_LONG), ZEND_QM_ASSIGN_LONG, CONST|TMPVARCV, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - - value = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(value)); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_QM_ASSIGN, (op1_info == MAY_BE_DOUBLE), ZEND_QM_ASSIGN_DOUBLE, CONST|TMPVARCV, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - - value = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - ZVAL_DOUBLE(EX_VAR(opline->result.var), Z_DVAL_P(value)); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_QM_ASSIGN, ((op->op1_type == IS_CONST) ? !Z_REFCOUNTED_P(RT_CONSTANT(op, op->op1)) : (!(op1_info & ((MAY_BE_ANY|MAY_BE_UNDEF)-(MAY_BE_NULL|MAY_BE_FALSE|MAY_BE_TRUE|MAY_BE_LONG|MAY_BE_DOUBLE))))), ZEND_QM_ASSIGN_NOREF, CONST|TMPVARCV, ANY) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - - value = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), value); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_FETCH_DIM_R, (!(op2_info & (MAY_BE_UNDEF|MAY_BE_NULL|MAY_BE_STRING|MAY_BE_ARRAY|MAY_BE_OBJECT|MAY_BE_RESOURCE|MAY_BE_REF))), ZEND_FETCH_DIM_R_INDEX, CONST|TMPVAR|CV, CONST|TMPVARCV, SPEC(NO_CONST_CONST)) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container, *dim, *value; - zend_long offset; - HashTable *ht; - - container = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - dim = GET_OP2_ZVAL_PTR_UNDEF(BP_VAR_R); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -ZEND_VM_C_LABEL(fetch_dim_r_index_array): - if (EXPECTED(Z_TYPE_P(dim) == IS_LONG)) { - offset = Z_LVAL_P(dim); - } else { - offset = zval_get_long(dim); - } - ht = Z_ARRVAL_P(container); - ZEND_HASH_INDEX_FIND(ht, offset, value, ZEND_VM_C_LABEL(fetch_dim_r_index_undef)); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - if (OP1_TYPE & (IS_TMP_VAR|IS_VAR)) { - SAVE_OPLINE(); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } else if (OP1_TYPE != IS_CONST && EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - ZEND_VM_C_GOTO(fetch_dim_r_index_array); - } else { - ZEND_VM_C_GOTO(fetch_dim_r_index_slow); - } - } else { -ZEND_VM_C_LABEL(fetch_dim_r_index_slow): - SAVE_OPLINE(); - if (OP2_TYPE == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - -ZEND_VM_C_LABEL(fetch_dim_r_index_undef): - ZVAL_NULL(EX_VAR(opline->result.var)); - SAVE_OPLINE(); - zend_undefined_offset(offset); - FREE_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_SEND_VAR, (op1_info & (MAY_BE_UNDEF|MAY_BE_REF)) == 0, ZEND_SEND_VAR_SIMPLE, CV|VAR, NUM) -{ - USE_OPLINE - zval *varptr, *arg; - zend_free_op free_op1; - - varptr = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (OP1_TYPE == IS_CV) { - ZVAL_COPY(arg, varptr); - } else /* if (OP1_TYPE == IS_VAR) */ { - ZVAL_COPY_VALUE(arg, varptr); - } - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_SEND_VAR_EX, op->op2.num <= MAX_ARG_FLAG_NUM && (op1_info & (MAY_BE_UNDEF|MAY_BE_REF)) == 0, ZEND_SEND_VAR_EX_SIMPLE, CV|VAR, NUM) -{ - USE_OPLINE - zval *varptr, *arg; - zend_free_op free_op1; - uint32_t arg_num = opline->op2.num; - - if (QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_VM_DISPATCH_TO_HANDLER(ZEND_SEND_REF); - } - - varptr = GET_OP1_ZVAL_PTR_UNDEF(BP_VAR_R); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (OP1_TYPE == IS_CV) { - ZVAL_COPY(arg, varptr); - } else /* if (OP1_TYPE == IS_VAR) */ { - ZVAL_COPY_VALUE(arg, varptr); - } - - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_SEND_VAL, op->op1_type == IS_CONST && !Z_REFCOUNTED_P(RT_CONSTANT(op, op->op1)), ZEND_SEND_VAL_SIMPLE, CONST, NUM) -{ - USE_OPLINE - zval *value, *arg; - zend_free_op free_op1; - - value = GET_OP1_ZVAL_PTR(BP_VAR_R); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, value); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_SEND_VAL_EX, op->op2.num <= MAX_ARG_FLAG_NUM && op->op1_type == IS_CONST && !Z_REFCOUNTED_P(RT_CONSTANT(op, op->op1)), ZEND_SEND_VAL_EX_SIMPLE, CONST, NUM) -{ - USE_OPLINE - zval *value, *arg; - zend_free_op free_op1; - uint32_t arg_num = opline->op2.num; - - if (QUICK_ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_VM_DISPATCH_TO_HELPER(zend_cannot_pass_by_ref_helper); - } - value = GET_OP1_ZVAL_PTR(BP_VAR_R); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, value); - ZEND_VM_NEXT_OPCODE(); -} - -ZEND_VM_HOT_TYPE_SPEC_HANDLER(ZEND_FE_FETCH_R, op->op2_type == IS_CV && (op1_info & (MAY_BE_UNDEF|MAY_BE_ANY|MAY_BE_REF)) == MAY_BE_ARRAY, ZEND_FE_FETCH_R_SIMPLE, VAR, CV, JMP_ADDR, SPEC(RETVAL)) -{ - USE_OPLINE - zval *array; - zval *value, *variable_ptr; - uint32_t value_type; - HashTable *fe_ht; - HashPosition pos; - Bucket *p; - - array = EX_VAR(opline->op1.var); - SAVE_OPLINE(); - fe_ht = Z_ARRVAL_P(array); - pos = Z_FE_POS_P(array); - p = fe_ht->arData + pos; - while (1) { - if (UNEXPECTED(pos >= fe_ht->nNumUsed)) { - /* reached end of iteration */ - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } - value = &p->val; - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - if (UNEXPECTED(value_type == IS_INDIRECT)) { - value = Z_INDIRECT_P(value); - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - break; - } - } else { - break; - } - } - pos++; - p++; - } - Z_FE_POS_P(array) = pos + 1; - if (RETURN_VALUE_USED(opline)) { - if (!p->key) { - ZVAL_LONG(EX_VAR(opline->result.var), p->h); - } else { - ZVAL_STR_COPY(EX_VAR(opline->result.var), p->key); - } - } - - variable_ptr = EX_VAR(opline->op2.var); - zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -ZEND_VM_DEFINE_OP(137, ZEND_OP_DATA); - -ZEND_VM_HELPER(zend_interrupt_helper, ANY, ANY) -{ - EG(vm_interrupt) = 0; - SAVE_OPLINE(); - if (EG(timed_out)) { - zend_timeout(0); - } else if (zend_interrupt_function) { - zend_interrupt_function(execute_data); - ZEND_VM_ENTER(); - } - ZEND_VM_CONTINUE(); -} diff --git a/7.4.27/mac/include/php/Zend/zend_vm_execute.h b/7.4.27/mac/include/php/Zend/zend_vm_execute.h deleted file mode 100644 index 2875fd3..0000000 --- a/7.4.27/mac/include/php/Zend/zend_vm_execute.h +++ /dev/null @@ -1,61479 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - | Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifdef ZEND_WIN32 -# pragma warning(disable : 4101) -# pragma warning(once : 6235) -# pragma warning(once : 6237) -# pragma warning(once : 6239) -# pragma warning(once : 6240) -# pragma warning(once : 6285) -# pragma warning(once : 6286) -# pragma warning(once : 6326) -#endif -static user_opcode_handler_t zend_user_opcode_handlers[256] = { - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL, - (user_opcode_handler_t)NULL -}; - -static zend_uchar zend_user_opcodes[256] = {0, - 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16, - 17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32, - 33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48, - 49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64, - 65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80, - 81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96, - 97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112, - 113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128, - 129,130,131,132,133,134,135,136,137,138,139,140,141,142,143,144, - 145,146,147,148,149,150,151,152,153,154,155,156,157,158,159,160, - 161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176, - 177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192, - 193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208, - 209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224, - 225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240, - 241,242,243,244,245,246,247,248,249,250,251,252,253,254,255 -}; - -#define SPEC_START_MASK 0x0000ffff -#define SPEC_EXTRA_MASK 0xfffc0000 -#define SPEC_RULE_OP1 0x00010000 -#define SPEC_RULE_OP2 0x00020000 -#define SPEC_RULE_OP_DATA 0x00040000 -#define SPEC_RULE_RETVAL 0x00080000 -#define SPEC_RULE_QUICK_ARG 0x00100000 -#define SPEC_RULE_SMART_BRANCH 0x00200000 -#define SPEC_RULE_COMMUTATIVE 0x00800000 -#define SPEC_RULE_ISSET 0x01000000 - -static const uint32_t *zend_spec_handlers; -static const void * const *zend_opcode_handlers; -static int zend_handlers_count; -#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) -static const void * const * zend_opcode_handler_funcs; -static zend_op hybrid_halt_op; -#endif -#if (ZEND_VM_KIND != ZEND_VM_KIND_HYBRID) || !ZEND_VM_SPEC -static const void *zend_vm_get_opcode_handler(zend_uchar opcode, const zend_op* op); -#endif - -#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) -static const void *zend_vm_get_opcode_handler_func(zend_uchar opcode, const zend_op* op); -#else -# define zend_vm_get_opcode_handler_func zend_vm_get_opcode_handler -#endif - -#ifndef VM_TRACE -# define VM_TRACE(op) -#endif -#ifndef VM_TRACE_START -# define VM_TRACE_START() -#endif -#ifndef VM_TRACE_END -# define VM_TRACE_END() -#endif -#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) -#define HYBRID_NEXT() goto *(void**)(OPLINE->handler) -#define HYBRID_SWITCH() HYBRID_NEXT(); -#define HYBRID_CASE(op) op ## _LABEL -#define HYBRID_BREAK() HYBRID_NEXT() -#define HYBRID_DEFAULT ZEND_NULL_LABEL -#endif - -#ifdef ZEND_VM_FP_GLOBAL_REG -# define ZEND_OPCODE_HANDLER_ARGS void -# define ZEND_OPCODE_HANDLER_ARGS_PASSTHRU -# define ZEND_OPCODE_HANDLER_ARGS_DC -# define ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC -#else -# define ZEND_OPCODE_HANDLER_ARGS zend_execute_data *execute_data -# define ZEND_OPCODE_HANDLER_ARGS_PASSTHRU execute_data -# define ZEND_OPCODE_HANDLER_ARGS_DC , ZEND_OPCODE_HANDLER_ARGS -# define ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC , ZEND_OPCODE_HANDLER_ARGS_PASSTHRU -#endif - -#if defined(ZEND_VM_FP_GLOBAL_REG) && defined(ZEND_VM_IP_GLOBAL_REG) -# define ZEND_OPCODE_HANDLER_RET void -# define ZEND_VM_TAIL_CALL(call) call; return -# ifdef ZEND_VM_TAIL_CALL_DISPATCH -# define ZEND_VM_CONTINUE() ((opcode_handler_t)OPLINE->handler)(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); return -# else -# define ZEND_VM_CONTINUE() return -# endif -# if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) -# define ZEND_VM_RETURN() opline = &hybrid_halt_op; return -# define ZEND_VM_HOT zend_always_inline ZEND_COLD ZEND_OPT_SIZE -# define ZEND_VM_COLD ZEND_COLD ZEND_OPT_SIZE -# else -# define ZEND_VM_RETURN() opline = NULL; return -# define ZEND_VM_HOT -# define ZEND_VM_COLD ZEND_COLD ZEND_OPT_SIZE -# endif -#else -# define ZEND_OPCODE_HANDLER_RET int -# define ZEND_VM_TAIL_CALL(call) return call -# define ZEND_VM_CONTINUE() return 0 -# define ZEND_VM_RETURN() return -1 -# define ZEND_VM_HOT -# define ZEND_VM_COLD ZEND_COLD ZEND_OPT_SIZE -#endif - -typedef ZEND_OPCODE_HANDLER_RET (ZEND_FASTCALL *opcode_handler_t) (ZEND_OPCODE_HANDLER_ARGS); - -#undef OPLINE -#undef DCL_OPLINE -#undef USE_OPLINE -#undef LOAD_OPLINE -#undef LOAD_OPLINE_EX -#undef SAVE_OPLINE -#undef SAVE_OPLINE_EX -#define DCL_OPLINE -#ifdef ZEND_VM_IP_GLOBAL_REG -# define OPLINE opline -# define USE_OPLINE -# define LOAD_OPLINE() opline = EX(opline) -# define LOAD_OPLINE_EX() -# define LOAD_NEXT_OPLINE() opline = EX(opline) + 1 -# define SAVE_OPLINE() EX(opline) = opline -# define SAVE_OPLINE_EX() SAVE_OPLINE() -#else -# define OPLINE EX(opline) -# define USE_OPLINE const zend_op *opline = EX(opline); -# define LOAD_OPLINE() -# define LOAD_OPLINE_EX() -# define LOAD_NEXT_OPLINE() ZEND_VM_INC_OPCODE() -# define SAVE_OPLINE() -# define SAVE_OPLINE_EX() -#endif -#undef HANDLE_EXCEPTION -#undef HANDLE_EXCEPTION_LEAVE -#define HANDLE_EXCEPTION() LOAD_OPLINE(); ZEND_VM_CONTINUE() -#define HANDLE_EXCEPTION_LEAVE() LOAD_OPLINE(); ZEND_VM_LEAVE() -#if defined(ZEND_VM_FP_GLOBAL_REG) -# define ZEND_VM_ENTER_EX() ZEND_VM_INTERRUPT_CHECK(); ZEND_VM_CONTINUE() -# define ZEND_VM_ENTER() execute_data = EG(current_execute_data); LOAD_OPLINE(); ZEND_VM_ENTER_EX() -# define ZEND_VM_LEAVE() ZEND_VM_CONTINUE() -#elif defined(ZEND_VM_IP_GLOBAL_REG) -# define ZEND_VM_ENTER_EX() return 1 -# define ZEND_VM_ENTER() opline = EG(current_execute_data)->opline; ZEND_VM_ENTER_EX() -# define ZEND_VM_LEAVE() return 2 -#else -# define ZEND_VM_ENTER_EX() return 1 -# define ZEND_VM_ENTER() return 1 -# define ZEND_VM_LEAVE() return 2 -#endif -#define ZEND_VM_INTERRUPT() ZEND_VM_TAIL_CALL(zend_interrupt_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -#define ZEND_VM_LOOP_INTERRUPT() zend_interrupt_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); -#define ZEND_VM_DISPATCH(opcode, opline) ZEND_VM_TAIL_CALL(((opcode_handler_t)zend_vm_get_opcode_handler_func(opcode, opline))(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_interrupt_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS); -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS); - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_add_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - add_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op1_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_sub_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - sub_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op1_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_mul_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - mul_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op1_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static zend_never_inline ZEND_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_mod_by_zero_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - zend_throw_exception_ex(zend_ce_division_by_zero_error, 0, "Modulo by zero"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_mod_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - mod_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op1_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_shift_left_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - shift_left_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op1_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_shift_right_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - shift_right_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op1_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_is_equal_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - compare_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op1_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - if (Z_LVAL_P(EX_VAR(opline->result.var)) == 0) { - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_is_not_equal_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - compare_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op1_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - if (Z_LVAL_P(EX_VAR(opline->result.var)) != 0) { - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_is_smaller_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - compare_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op1_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - if (Z_LVAL_P(EX_VAR(opline->result.var)) < 0) { - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_is_smaller_or_equal_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - compare_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op1_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - if (Z_LVAL_P(EX_VAR(opline->result.var)) <= 0) { - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_bw_or_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - bitwise_or_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op1_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_bw_and_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - bitwise_and_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op1_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_bw_xor_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - bitwise_xor_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op1_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_1); - } - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static zend_never_inline ZEND_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - zend_throw_error(NULL, "Using $this when not in object context"); - if ((opline+1)->opcode == ZEND_OP_DATA) { - FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var); - } - FREE_UNFETCHED_OP(opline->op2_type, opline->op2.var); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); -} - -static zend_never_inline ZEND_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_undefined_function_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - - SAVE_OPLINE(); - function_name = RT_CONSTANT(opline, opline->op2); - zend_throw_error(NULL, "Call to undefined function %s()", Z_STRVAL_P(function_name)); - HANDLE_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_STATIC_PROP_OP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - /* This helper actually never will receive IS_VAR as second op, and has the same handling for VAR and TMP in the first op, but for interoperability with the other binary_assign_op helpers, it is necessary to "include" it */ - - USE_OPLINE - zend_free_op free_op_data; - zval *prop, *value; - zend_property_info *prop_info; - zend_reference *ref; - - SAVE_OPLINE(); - - if (UNEXPECTED(zend_fetch_static_property_address(&prop, &prop_info, (opline+1)->extended_value, BP_VAR_RW, 0 OPLINE_CC EXECUTE_DATA_CC) != SUCCESS)) { - ZEND_ASSERT(EG(exception)); - UNDEF_RESULT(); - FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var); - HANDLE_EXCEPTION(); - } - - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data); - - do { - if (UNEXPECTED(Z_ISREF_P(prop))) { - ref = Z_REF_P(prop); - prop = Z_REFVAL_P(prop); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - - if (UNEXPECTED(prop_info->type)) { - /* special case for typed properties */ - zend_binary_assign_op_typed_prop(prop_info, prop, value OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_binary_op(prop, prop, value OPLINE_CC); - } - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), prop); - } - - FREE_OP(free_op_data); - /* assign_static_prop has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_STATIC_PROP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *prop; - zend_property_info *prop_info; - - SAVE_OPLINE(); - - if (zend_fetch_static_property_address(&prop, &prop_info, opline->extended_value, BP_VAR_RW, 0 OPLINE_CC EXECUTE_DATA_CC) != SUCCESS) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - zend_pre_incdec_property_zval(prop, prop_info->type ? prop_info : NULL OPLINE_CC EXECUTE_DATA_CC); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_STATIC_PROP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *prop; - zend_property_info *prop_info; - - SAVE_OPLINE(); - - if (zend_fetch_static_property_address(&prop, &prop_info, opline->extended_value, BP_VAR_RW, 0 OPLINE_CC EXECUTE_DATA_CC) != SUCCESS) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - zend_post_incdec_property_zval(prop, prop_info->type ? prop_info : NULL OPLINE_CC EXECUTE_DATA_CC); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_static_prop_helper_SPEC(int type ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - zval *prop; - - SAVE_OPLINE(); - - if (UNEXPECTED(zend_fetch_static_property_address(&prop, NULL, opline->extended_value & ~ZEND_FETCH_OBJ_FLAGS, type, opline->extended_value & ZEND_FETCH_OBJ_FLAGS OPLINE_CC EXECUTE_DATA_CC) != SUCCESS)) { - ZEND_ASSERT(EG(exception) || (type == BP_VAR_IS)); - prop = &EG(uninitialized_zval); - } - - if (type == BP_VAR_R || type == BP_VAR_IS) { - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), prop); - } else { - ZVAL_INDIRECT(EX_VAR(opline->result.var), prop); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_STATIC_PROP_R_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_static_prop_helper_SPEC(BP_VAR_R ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_STATIC_PROP_W_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_static_prop_helper_SPEC(BP_VAR_W ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_STATIC_PROP_RW_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_static_prop_helper_SPEC(BP_VAR_RW ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - int fetch_type = - (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) ? - BP_VAR_W : BP_VAR_R; - ZEND_VM_TAIL_CALL(zend_fetch_static_prop_helper_SPEC(fetch_type ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_STATIC_PROP_UNSET_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_static_prop_helper_SPEC(BP_VAR_UNSET ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_STATIC_PROP_IS_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_static_prop_helper_SPEC(BP_VAR_IS ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static zend_never_inline ZEND_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - zend_throw_error(NULL, "Cannot use temporary expression in write context"); - FREE_UNFETCHED_OP(opline->op2_type, opline->op2.var); - FREE_UNFETCHED_OP(opline->op1_type, opline->op1.var); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); -} - -static zend_never_inline ZEND_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - zend_throw_error(NULL, "Cannot use [] for reading"); - FREE_UNFETCHED_OP(opline->op2_type, opline->op2.var); - FREE_UNFETCHED_OP(opline->op1_type, opline->op1.var); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *prop, *value; - zend_property_info *prop_info; - - SAVE_OPLINE(); - - if (zend_fetch_static_property_address(&prop, &prop_info, opline->extended_value, BP_VAR_W, 0 OPLINE_CC EXECUTE_DATA_CC) != SUCCESS) { - - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (UNEXPECTED(prop_info->type)) { - value = zend_assign_to_typed_prop(prop_info, prop, value EXECUTE_DATA_CC); - - } else { - value = zend_assign_to_variable(prop, value, IS_CONST, EX_USES_STRICT_TYPES()); - } - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - - /* assign_static_prop has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *prop, *value; - zend_property_info *prop_info; - - SAVE_OPLINE(); - - if (zend_fetch_static_property_address(&prop, &prop_info, opline->extended_value, BP_VAR_W, 0 OPLINE_CC EXECUTE_DATA_CC) != SUCCESS) { - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (UNEXPECTED(prop_info->type)) { - value = zend_assign_to_typed_prop(prop_info, prop, value EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } else { - value = zend_assign_to_variable(prop, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - } - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - - /* assign_static_prop has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *prop, *value; - zend_property_info *prop_info; - - SAVE_OPLINE(); - - if (zend_fetch_static_property_address(&prop, &prop_info, opline->extended_value, BP_VAR_W, 0 OPLINE_CC EXECUTE_DATA_CC) != SUCCESS) { - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (UNEXPECTED(prop_info->type)) { - value = zend_assign_to_typed_prop(prop_info, prop, value EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } else { - value = zend_assign_to_variable(prop, value, IS_VAR, EX_USES_STRICT_TYPES()); - } - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - - /* assign_static_prop has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *prop, *value; - zend_property_info *prop_info; - - SAVE_OPLINE(); - - if (zend_fetch_static_property_address(&prop, &prop_info, opline->extended_value, BP_VAR_W, 0 OPLINE_CC EXECUTE_DATA_CC) != SUCCESS) { - - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (UNEXPECTED(prop_info->type)) { - value = zend_assign_to_typed_prop(prop_info, prop, value EXECUTE_DATA_CC); - - } else { - value = zend_assign_to_variable(prop, value, IS_CV, EX_USES_STRICT_TYPES()); - } - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - - /* assign_static_prop has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_STATIC_PROP_REF_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *prop, *value_ptr; - zend_property_info *prop_info; - - SAVE_OPLINE(); - - if (zend_fetch_static_property_address(&prop, &prop_info, opline->extended_value & ~ZEND_RETURNS_FUNCTION, BP_VAR_W, 0 OPLINE_CC EXECUTE_DATA_CC) != SUCCESS) { - FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - value_ptr = get_zval_ptr_ptr((opline+1)->op1_type, (opline+1)->op1, &free_op_data, BP_VAR_W); - - if ((opline+1)->op1_type == IS_VAR && UNEXPECTED(Z_ISERROR_P(value_ptr))) { - prop = &EG(uninitialized_zval); - } else if ((opline+1)->op1_type == IS_VAR && (opline->extended_value & ZEND_RETURNS_FUNCTION) && UNEXPECTED(!Z_ISREF_P(value_ptr))) { - if (UNEXPECTED(!zend_wrong_assign_to_variable_reference(prop, value_ptr OPLINE_CC EXECUTE_DATA_CC))) { - prop = &EG(uninitialized_zval); - } - } else if (UNEXPECTED(prop_info->type)) { - prop = zend_assign_to_typed_property_reference(prop_info, prop, value_ptr EXECUTE_DATA_CC); - } else { - zend_assign_to_variable_reference(prop, value_ptr); - } - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), prop); - } - - if (free_op_data) {zval_ptr_dtor_nogc(free_op_data);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_leave_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS) -{ - zend_execute_data *old_execute_data; - uint32_t call_info = EX_CALL_INFO(); - SAVE_OPLINE(); - - if (EXPECTED((call_info & (ZEND_CALL_CODE|ZEND_CALL_TOP|ZEND_CALL_HAS_SYMBOL_TABLE|ZEND_CALL_FREE_EXTRA_ARGS|ZEND_CALL_ALLOCATED)) == 0)) { - EG(current_execute_data) = EX(prev_execute_data); - i_free_compiled_variables(execute_data); - -#ifdef ZEND_PREFER_RELOAD - call_info = EX_CALL_INFO(); -#endif - if (UNEXPECTED(call_info & ZEND_CALL_RELEASE_THIS)) { - OBJ_RELEASE(Z_OBJ(execute_data->This)); - } else if (UNEXPECTED(call_info & ZEND_CALL_CLOSURE)) { - OBJ_RELEASE(ZEND_CLOSURE_OBJECT(EX(func))); - } - EG(vm_stack_top) = (zval*)execute_data; - execute_data = EX(prev_execute_data); - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION_LEAVE(); - } - - LOAD_NEXT_OPLINE(); - ZEND_VM_LEAVE(); - } else if (EXPECTED((call_info & (ZEND_CALL_CODE|ZEND_CALL_TOP)) == 0)) { - EG(current_execute_data) = EX(prev_execute_data); - i_free_compiled_variables(execute_data); - -#ifdef ZEND_PREFER_RELOAD - call_info = EX_CALL_INFO(); -#endif - if (UNEXPECTED(call_info & ZEND_CALL_HAS_SYMBOL_TABLE)) { - zend_clean_and_cache_symbol_table(EX(symbol_table)); - } - - /* Free extra args before releasing the closure, - * as that may free the op_array. */ - zend_vm_stack_free_extra_args_ex(call_info, execute_data); - - if (UNEXPECTED(call_info & ZEND_CALL_RELEASE_THIS)) { - OBJ_RELEASE(Z_OBJ(execute_data->This)); - } else if (UNEXPECTED(call_info & ZEND_CALL_CLOSURE)) { - OBJ_RELEASE(ZEND_CLOSURE_OBJECT(EX(func))); - } - - old_execute_data = execute_data; - execute_data = EX(prev_execute_data); - zend_vm_stack_free_call_frame_ex(call_info, old_execute_data); - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION_LEAVE(); - } - - LOAD_NEXT_OPLINE(); - ZEND_VM_LEAVE(); - } else if (EXPECTED((call_info & ZEND_CALL_TOP) == 0)) { - zend_detach_symbol_table(execute_data); - destroy_op_array(&EX(func)->op_array); - efree_size(EX(func), sizeof(zend_op_array)); -#ifdef ZEND_PREFER_RELOAD - call_info = EX_CALL_INFO(); -#endif - old_execute_data = execute_data; - execute_data = EG(current_execute_data) = EX(prev_execute_data); - zend_vm_stack_free_call_frame_ex(call_info, old_execute_data); - - zend_attach_symbol_table(execute_data); - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION_LEAVE(); - } - - LOAD_NEXT_OPLINE(); - ZEND_VM_LEAVE(); - } else { - if (EXPECTED((call_info & ZEND_CALL_CODE) == 0)) { - EG(current_execute_data) = EX(prev_execute_data); - i_free_compiled_variables(execute_data); -#ifdef ZEND_PREFER_RELOAD - call_info = EX_CALL_INFO(); -#endif - if (UNEXPECTED(call_info & (ZEND_CALL_HAS_SYMBOL_TABLE|ZEND_CALL_FREE_EXTRA_ARGS))) { - if (UNEXPECTED(call_info & ZEND_CALL_HAS_SYMBOL_TABLE)) { - zend_clean_and_cache_symbol_table(EX(symbol_table)); - } - zend_vm_stack_free_extra_args_ex(call_info, execute_data); - } - if (UNEXPECTED(call_info & ZEND_CALL_CLOSURE)) { - OBJ_RELEASE(ZEND_CLOSURE_OBJECT(EX(func))); - } - ZEND_VM_RETURN(); - } else /* if (call_kind == ZEND_CALL_TOP_CODE) */ { - zend_array *symbol_table = EX(symbol_table); - - zend_detach_symbol_table(execute_data); - old_execute_data = EX(prev_execute_data); - while (old_execute_data) { - if (old_execute_data->func && (ZEND_CALL_INFO(old_execute_data) & ZEND_CALL_HAS_SYMBOL_TABLE)) { - if (old_execute_data->symbol_table == symbol_table) { - zend_attach_symbol_table(old_execute_data); - } - break; - } - old_execute_data = old_execute_data->prev_execute_data; - } - EG(current_execute_data) = EX(prev_execute_data); - ZEND_VM_RETURN(); - } - } -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op1), 0); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DO_ICALL_SPEC_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_execute_data *call = EX(call); - zend_function *fbc = call->func; - zval *ret; - zval retval; - - SAVE_OPLINE(); - EX(call) = call->prev_execute_data; - - call->prev_execute_data = execute_data; - EG(current_execute_data) = call; - - ret = 0 ? EX_VAR(opline->result.var) : &retval; - ZVAL_NULL(ret); - - fbc->internal_function.handler(call, ret); - -#if ZEND_DEBUG - if (!EG(exception) && call->func) { - ZEND_ASSERT(!(call->func->common.fn_flags & ZEND_ACC_HAS_RETURN_TYPE) || - zend_verify_internal_return_type(call->func, ret)); - ZEND_ASSERT((call->func->common.fn_flags & ZEND_ACC_RETURN_REFERENCE) - ? Z_ISREF_P(ret) : !Z_ISREF_P(ret)); - } -#endif - - EG(current_execute_data) = execute_data; - zend_vm_stack_free_args(call); - zend_vm_stack_free_call_frame(call); - - if (!0) { - i_zval_ptr_dtor(ret); - } - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION(); - } - - ZEND_VM_SET_OPCODE(opline + 1); - ZEND_VM_CONTINUE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DO_ICALL_SPEC_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_execute_data *call = EX(call); - zend_function *fbc = call->func; - zval *ret; - zval retval; - - SAVE_OPLINE(); - EX(call) = call->prev_execute_data; - - call->prev_execute_data = execute_data; - EG(current_execute_data) = call; - - ret = 1 ? EX_VAR(opline->result.var) : &retval; - ZVAL_NULL(ret); - - fbc->internal_function.handler(call, ret); - -#if ZEND_DEBUG - if (!EG(exception) && call->func) { - ZEND_ASSERT(!(call->func->common.fn_flags & ZEND_ACC_HAS_RETURN_TYPE) || - zend_verify_internal_return_type(call->func, ret)); - ZEND_ASSERT((call->func->common.fn_flags & ZEND_ACC_RETURN_REFERENCE) - ? Z_ISREF_P(ret) : !Z_ISREF_P(ret)); - } -#endif - - EG(current_execute_data) = execute_data; - zend_vm_stack_free_args(call); - zend_vm_stack_free_call_frame(call); - - if (!1) { - i_zval_ptr_dtor(ret); - } - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION(); - } - - ZEND_VM_SET_OPCODE(opline + 1); - ZEND_VM_CONTINUE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DO_UCALL_SPEC_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_execute_data *call = EX(call); - zend_function *fbc = call->func; - zval *ret; - - SAVE_OPLINE(); - EX(call) = call->prev_execute_data; - - ret = NULL; - if (0) { - ret = EX_VAR(opline->result.var); - } - - call->prev_execute_data = execute_data; - execute_data = call; - i_init_func_execute_data(&fbc->op_array, ret, 0 EXECUTE_DATA_CC); - LOAD_OPLINE_EX(); - - ZEND_VM_ENTER_EX(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DO_UCALL_SPEC_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_execute_data *call = EX(call); - zend_function *fbc = call->func; - zval *ret; - - SAVE_OPLINE(); - EX(call) = call->prev_execute_data; - - ret = NULL; - if (1) { - ret = EX_VAR(opline->result.var); - } - - call->prev_execute_data = execute_data; - execute_data = call; - i_init_func_execute_data(&fbc->op_array, ret, 0 EXECUTE_DATA_CC); - LOAD_OPLINE_EX(); - - ZEND_VM_ENTER_EX(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_execute_data *call = EX(call); - zend_function *fbc = call->func; - zval *ret; - - SAVE_OPLINE(); - EX(call) = call->prev_execute_data; - - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION)) { - ret = NULL; - if (0) { - ret = EX_VAR(opline->result.var); - } - - call->prev_execute_data = execute_data; - execute_data = call; - i_init_func_execute_data(&fbc->op_array, ret, 0 EXECUTE_DATA_CC); - LOAD_OPLINE_EX(); - - ZEND_VM_ENTER_EX(); - } else { - zval retval; - ZEND_ASSERT(fbc->type == ZEND_INTERNAL_FUNCTION); - - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_DEPRECATED) != 0)) { - zend_deprecated_function(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - if (!0) { - ret = &retval; - ZVAL_UNDEF(ret); - } - goto fcall_by_name_end; - } - } - - call->prev_execute_data = execute_data; - EG(current_execute_data) = call; - - if (UNEXPECTED(fbc->common.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) - && UNEXPECTED(!zend_verify_internal_arg_types(fbc, call))) { - UNDEF_RESULT(); - if (!0) { - ret = &retval; - ZVAL_UNDEF(ret); - } - goto fcall_by_name_end; - } - - ret = 0 ? EX_VAR(opline->result.var) : &retval; - ZVAL_NULL(ret); - - fbc->internal_function.handler(call, ret); - -#if ZEND_DEBUG - if (!EG(exception) && call->func) { - ZEND_ASSERT(!(call->func->common.fn_flags & ZEND_ACC_HAS_RETURN_TYPE) || - zend_verify_internal_return_type(call->func, ret)); - ZEND_ASSERT((call->func->common.fn_flags & ZEND_ACC_RETURN_REFERENCE) - ? Z_ISREF_P(ret) : !Z_ISREF_P(ret)); - } -#endif - - EG(current_execute_data) = execute_data; - -fcall_by_name_end: - zend_vm_stack_free_args(call); - zend_vm_stack_free_call_frame(call); - - if (!0) { - i_zval_ptr_dtor(ret); - } - } - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION(); - } - ZEND_VM_SET_OPCODE(opline + 1); - ZEND_VM_CONTINUE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_execute_data *call = EX(call); - zend_function *fbc = call->func; - zval *ret; - - SAVE_OPLINE(); - EX(call) = call->prev_execute_data; - - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION)) { - ret = NULL; - if (1) { - ret = EX_VAR(opline->result.var); - } - - call->prev_execute_data = execute_data; - execute_data = call; - i_init_func_execute_data(&fbc->op_array, ret, 0 EXECUTE_DATA_CC); - LOAD_OPLINE_EX(); - - ZEND_VM_ENTER_EX(); - } else { - zval retval; - ZEND_ASSERT(fbc->type == ZEND_INTERNAL_FUNCTION); - - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_DEPRECATED) != 0)) { - zend_deprecated_function(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - if (!1) { - ret = &retval; - ZVAL_UNDEF(ret); - } - goto fcall_by_name_end; - } - } - - call->prev_execute_data = execute_data; - EG(current_execute_data) = call; - - if (UNEXPECTED(fbc->common.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) - && UNEXPECTED(!zend_verify_internal_arg_types(fbc, call))) { - UNDEF_RESULT(); - if (!1) { - ret = &retval; - ZVAL_UNDEF(ret); - } - goto fcall_by_name_end; - } - - ret = 1 ? EX_VAR(opline->result.var) : &retval; - ZVAL_NULL(ret); - - fbc->internal_function.handler(call, ret); - -#if ZEND_DEBUG - if (!EG(exception) && call->func) { - ZEND_ASSERT(!(call->func->common.fn_flags & ZEND_ACC_HAS_RETURN_TYPE) || - zend_verify_internal_return_type(call->func, ret)); - ZEND_ASSERT((call->func->common.fn_flags & ZEND_ACC_RETURN_REFERENCE) - ? Z_ISREF_P(ret) : !Z_ISREF_P(ret)); - } -#endif - - EG(current_execute_data) = execute_data; - -fcall_by_name_end: - zend_vm_stack_free_args(call); - zend_vm_stack_free_call_frame(call); - - if (!1) { - i_zval_ptr_dtor(ret); - } - } - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION(); - } - ZEND_VM_SET_OPCODE(opline + 1); - ZEND_VM_CONTINUE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DO_FCALL_SPEC_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_execute_data *call = EX(call); - zend_function *fbc = call->func; - zval *ret; - zval retval; - - SAVE_OPLINE(); - EX(call) = call->prev_execute_data; - if (UNEXPECTED((fbc->common.fn_flags & (ZEND_ACC_ABSTRACT|ZEND_ACC_DEPRECATED)) != 0)) { - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_ABSTRACT) != 0)) { - zend_abstract_method(fbc); -fcall_except: - UNDEF_RESULT(); - if (!0) { - ret = &retval; - ZVAL_UNDEF(ret); - } - goto fcall_end; - } else { - zend_deprecated_function(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - goto fcall_except; - } - } - } - - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION)) { - ret = NULL; - if (0) { - ret = EX_VAR(opline->result.var); - } - - call->prev_execute_data = execute_data; - execute_data = call; - i_init_func_execute_data(&fbc->op_array, ret, 1 EXECUTE_DATA_CC); - - if (EXPECTED(zend_execute_ex == execute_ex)) { - LOAD_OPLINE_EX(); - ZEND_VM_ENTER_EX(); - } else { - SAVE_OPLINE_EX(); - execute_data = EX(prev_execute_data); - LOAD_OPLINE(); - ZEND_ADD_CALL_FLAG(call, ZEND_CALL_TOP); - zend_execute_ex(call); - } - } else if (EXPECTED(fbc->type < ZEND_USER_FUNCTION)) { - call->prev_execute_data = execute_data; - EG(current_execute_data) = call; - - if (UNEXPECTED(fbc->common.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) - && UNEXPECTED(!zend_verify_internal_arg_types(fbc, call))) { - goto fcall_except; - } - - ret = 0 ? EX_VAR(opline->result.var) : &retval; - ZVAL_NULL(ret); - - if (!zend_execute_internal) { - /* saves one function call if zend_execute_internal is not used */ - fbc->internal_function.handler(call, ret); - } else { - zend_execute_internal(call, ret); - } - -#if ZEND_DEBUG - if (!EG(exception) && call->func) { - ZEND_ASSERT(!(call->func->common.fn_flags & ZEND_ACC_HAS_RETURN_TYPE) || - zend_verify_internal_return_type(call->func, ret)); - ZEND_ASSERT((call->func->common.fn_flags & ZEND_ACC_RETURN_REFERENCE) - ? Z_ISREF_P(ret) : !Z_ISREF_P(ret)); - } -#endif - - EG(current_execute_data) = execute_data; - -fcall_end: - zend_vm_stack_free_args(call); - if (!0) { - i_zval_ptr_dtor(ret); - } - } else { /* ZEND_OVERLOADED_FUNCTION */ - ret = 0 ? EX_VAR(opline->result.var) : &retval; - - call->prev_execute_data = execute_data; - - if (UNEXPECTED(!zend_do_fcall_overloaded(call, ret))) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - if (!0) { - zval_ptr_dtor(ret); - } - } - - if (UNEXPECTED(ZEND_CALL_INFO(call) & ZEND_CALL_RELEASE_THIS)) { - OBJ_RELEASE(Z_OBJ(call->This)); - } - - zend_vm_stack_free_call_frame(call); - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION(); - } - - ZEND_VM_SET_OPCODE(opline + 1); - ZEND_VM_CONTINUE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DO_FCALL_SPEC_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_execute_data *call = EX(call); - zend_function *fbc = call->func; - zval *ret; - zval retval; - - SAVE_OPLINE(); - EX(call) = call->prev_execute_data; - if (UNEXPECTED((fbc->common.fn_flags & (ZEND_ACC_ABSTRACT|ZEND_ACC_DEPRECATED)) != 0)) { - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_ABSTRACT) != 0)) { - zend_abstract_method(fbc); -fcall_except: - UNDEF_RESULT(); - if (!1) { - ret = &retval; - ZVAL_UNDEF(ret); - } - goto fcall_end; - } else { - zend_deprecated_function(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - goto fcall_except; - } - } - } - - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION)) { - ret = NULL; - if (1) { - ret = EX_VAR(opline->result.var); - } - - call->prev_execute_data = execute_data; - execute_data = call; - i_init_func_execute_data(&fbc->op_array, ret, 1 EXECUTE_DATA_CC); - - if (EXPECTED(zend_execute_ex == execute_ex)) { - LOAD_OPLINE_EX(); - ZEND_VM_ENTER_EX(); - } else { - SAVE_OPLINE_EX(); - execute_data = EX(prev_execute_data); - LOAD_OPLINE(); - ZEND_ADD_CALL_FLAG(call, ZEND_CALL_TOP); - zend_execute_ex(call); - } - } else if (EXPECTED(fbc->type < ZEND_USER_FUNCTION)) { - call->prev_execute_data = execute_data; - EG(current_execute_data) = call; - - if (UNEXPECTED(fbc->common.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) - && UNEXPECTED(!zend_verify_internal_arg_types(fbc, call))) { - goto fcall_except; - } - - ret = 1 ? EX_VAR(opline->result.var) : &retval; - ZVAL_NULL(ret); - - if (!zend_execute_internal) { - /* saves one function call if zend_execute_internal is not used */ - fbc->internal_function.handler(call, ret); - } else { - zend_execute_internal(call, ret); - } - -#if ZEND_DEBUG - if (!EG(exception) && call->func) { - ZEND_ASSERT(!(call->func->common.fn_flags & ZEND_ACC_HAS_RETURN_TYPE) || - zend_verify_internal_return_type(call->func, ret)); - ZEND_ASSERT((call->func->common.fn_flags & ZEND_ACC_RETURN_REFERENCE) - ? Z_ISREF_P(ret) : !Z_ISREF_P(ret)); - } -#endif - - EG(current_execute_data) = execute_data; - -fcall_end: - zend_vm_stack_free_args(call); - if (!1) { - i_zval_ptr_dtor(ret); - } - } else { /* ZEND_OVERLOADED_FUNCTION */ - ret = 1 ? EX_VAR(opline->result.var) : &retval; - - call->prev_execute_data = execute_data; - - if (UNEXPECTED(!zend_do_fcall_overloaded(call, ret))) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - if (!1) { - zval_ptr_dtor(ret); - } - } - - if (UNEXPECTED(ZEND_CALL_INFO(call) & ZEND_CALL_RELEASE_THIS)) { - OBJ_RELEASE(Z_OBJ(call->This)); - } - - zend_vm_stack_free_call_frame(call); - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION(); - } - - ZEND_VM_SET_OPCODE(opline + 1); - ZEND_VM_CONTINUE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GENERATOR_CREATE_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *return_value = EX(return_value); - - if (EXPECTED(return_value)) { - USE_OPLINE - zend_generator *generator; - zend_execute_data *gen_execute_data; - uint32_t num_args, used_stack, call_info; - - object_init_ex(return_value, zend_ce_generator); - - /* - * Normally the execute_data is allocated on the VM stack (because it does - * not actually do any allocation and thus is faster). For generators - * though this behavior would be suboptimal, because the (rather large) - * structure would have to be copied back and forth every time execution is - * suspended or resumed. That's why for generators the execution context - * is allocated on heap. - */ - num_args = EX_NUM_ARGS(); - if (EXPECTED(num_args <= EX(func)->op_array.num_args)) { - used_stack = (ZEND_CALL_FRAME_SLOT + EX(func)->op_array.last_var + EX(func)->op_array.T) * sizeof(zval); - gen_execute_data = (zend_execute_data*)emalloc(used_stack); - used_stack = (ZEND_CALL_FRAME_SLOT + EX(func)->op_array.last_var) * sizeof(zval); - } else { - used_stack = (ZEND_CALL_FRAME_SLOT + num_args + EX(func)->op_array.last_var + EX(func)->op_array.T - EX(func)->op_array.num_args) * sizeof(zval); - gen_execute_data = (zend_execute_data*)emalloc(used_stack); - } - memcpy(gen_execute_data, execute_data, used_stack); - - /* Save execution context in generator object. */ - generator = (zend_generator *) Z_OBJ_P(EX(return_value)); - generator->execute_data = gen_execute_data; - generator->frozen_call_stack = NULL; - generator->execute_fake.opline = NULL; - generator->execute_fake.func = NULL; - generator->execute_fake.prev_execute_data = NULL; - ZVAL_OBJ(&generator->execute_fake.This, (zend_object *) generator); - - gen_execute_data->opline = opline + 1; - /* EX(return_value) keeps pointer to zend_object (not a real zval) */ - gen_execute_data->return_value = (zval*)generator; - call_info = Z_TYPE_INFO(EX(This)); - if ((call_info & Z_TYPE_MASK) == IS_OBJECT - && (!(call_info & (ZEND_CALL_CLOSURE|ZEND_CALL_RELEASE_THIS)) - /* Bug #72523 */ - || UNEXPECTED(zend_execute_ex != execute_ex))) { - ZEND_ADD_CALL_FLAG_EX(call_info, ZEND_CALL_RELEASE_THIS); - Z_ADDREF(gen_execute_data->This); - } - ZEND_ADD_CALL_FLAG_EX(call_info, (ZEND_CALL_TOP_FUNCTION | ZEND_CALL_ALLOCATED | ZEND_CALL_GENERATOR)); - Z_TYPE_INFO(gen_execute_data->This) = call_info; - gen_execute_data->prev_execute_data = NULL; - - call_info = EX_CALL_INFO(); - EG(current_execute_data) = EX(prev_execute_data); - if (EXPECTED(!(call_info & (ZEND_CALL_TOP|ZEND_CALL_ALLOCATED)))) { - EG(vm_stack_top) = (zval*)execute_data; - execute_data = EX(prev_execute_data); - LOAD_NEXT_OPLINE(); - ZEND_VM_LEAVE(); - } else if (EXPECTED(!(call_info & ZEND_CALL_TOP))) { - zend_execute_data *old_execute_data = execute_data; - execute_data = EX(prev_execute_data); - zend_vm_stack_free_call_frame_ex(call_info, old_execute_data); - LOAD_NEXT_OPLINE(); - ZEND_VM_LEAVE(); - } else { - ZEND_VM_RETURN(); - } - } else { - ZEND_VM_TAIL_CALL(zend_leave_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static zend_never_inline ZEND_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_cannot_pass_by_ref_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *arg; - uint32_t arg_num = opline->op2.num; - - SAVE_OPLINE(); - zend_throw_error(NULL, "Cannot pass parameter %d by reference", arg_num); - FREE_UNFETCHED_OP(opline->op1_type, opline->op1.var); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_UNDEF(arg); - HANDLE_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_UNPACK_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *args; - int arg_num; - - SAVE_OPLINE(); - args = get_zval_ptr_undef(opline->op1_type, opline->op1, &free_op1, BP_VAR_R); - arg_num = ZEND_CALL_NUM_ARGS(EX(call)) + 1; - -send_again: - if (EXPECTED(Z_TYPE_P(args) == IS_ARRAY)) { - HashTable *ht = Z_ARRVAL_P(args); - zval *arg, *top; - zend_string *name; - - zend_vm_stack_extend_call_frame(&EX(call), arg_num - 1, zend_hash_num_elements(ht)); - - if ((opline->op1_type & (IS_VAR|IS_CV)) && Z_REFCOUNT_P(args) > 1) { - uint32_t i; - int separate = 0; - - /* check if any of arguments are going to be passed by reference */ - for (i = 0; i < zend_hash_num_elements(ht); i++) { - if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num + i)) { - separate = 1; - break; - } - } - if (separate) { - SEPARATE_ARRAY(args); - ht = Z_ARRVAL_P(args); - } - } - - ZEND_HASH_FOREACH_STR_KEY_VAL(ht, name, arg) { - if (name) { - zend_throw_error(NULL, "Cannot unpack array with string keys"); - FREE_OP(free_op1); - HANDLE_EXCEPTION(); - } - - top = ZEND_CALL_ARG(EX(call), arg_num); - if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - if (Z_ISREF_P(arg)) { - Z_ADDREF_P(arg); - ZVAL_REF(top, Z_REF_P(arg)); - } else if (opline->op1_type & (IS_VAR|IS_CV)) { - /* array is already separated above */ - ZVAL_MAKE_REF_EX(arg, 2); - ZVAL_REF(top, Z_REF_P(arg)); - } else { - Z_TRY_ADDREF_P(arg); - ZVAL_NEW_REF(top, arg); - } - } else { - ZVAL_COPY_DEREF(top, arg); - } - - ZEND_CALL_NUM_ARGS(EX(call))++; - arg_num++; - } ZEND_HASH_FOREACH_END(); - - } else if (EXPECTED(Z_TYPE_P(args) == IS_OBJECT)) { - zend_class_entry *ce = Z_OBJCE_P(args); - zend_object_iterator *iter; - - if (!ce || !ce->get_iterator) { - zend_error(E_WARNING, "Only arrays and Traversables can be unpacked"); - } else { - - iter = ce->get_iterator(ce, args, 0); - if (UNEXPECTED(!iter)) { - FREE_OP(free_op1); - if (!EG(exception)) { - zend_throw_exception_ex( - NULL, 0, "Object of type %s did not create an Iterator", ZSTR_VAL(ce->name) - ); - } - HANDLE_EXCEPTION(); - } - - if (iter->funcs->rewind) { - iter->funcs->rewind(iter); - } - - for (; iter->funcs->valid(iter) == SUCCESS; ++arg_num) { - zval *arg, *top; - - if (UNEXPECTED(EG(exception) != NULL)) { - break; - } - - arg = iter->funcs->get_current_data(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - break; - } - - if (iter->funcs->get_current_key) { - zval key; - iter->funcs->get_current_key(iter, &key); - if (UNEXPECTED(EG(exception) != NULL)) { - break; - } - - if (UNEXPECTED(Z_TYPE(key) != IS_LONG)) { - zend_throw_error(NULL, - (Z_TYPE(key) == IS_STRING) ? - "Cannot unpack Traversable with string keys" : - "Cannot unpack Traversable with non-integer keys"); - zval_ptr_dtor(&key); - break; - } - } - - if (ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - zend_error( - E_WARNING, "Cannot pass by-reference argument %d of %s%s%s()" - " by unpacking a Traversable, passing by-value instead", arg_num, - EX(call)->func->common.scope ? ZSTR_VAL(EX(call)->func->common.scope->name) : "", - EX(call)->func->common.scope ? "::" : "", - ZSTR_VAL(EX(call)->func->common.function_name) - ); - } - - ZVAL_DEREF(arg); - Z_TRY_ADDREF_P(arg); - - zend_vm_stack_extend_call_frame(&EX(call), arg_num - 1, 1); - top = ZEND_CALL_ARG(EX(call), arg_num); - ZVAL_COPY_VALUE(top, arg); - ZEND_CALL_NUM_ARGS(EX(call))++; - - iter->funcs->move_forward(iter); - } - - zend_iterator_dtor(iter); - } - } else if (EXPECTED(Z_ISREF_P(args))) { - args = Z_REFVAL_P(args); - goto send_again; - } else { - if (opline->op1_type == IS_CV && UNEXPECTED(Z_TYPE_P(args) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - zend_error(E_WARNING, "Only arrays and Traversables can be unpacked"); - } - - FREE_OP(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_ARRAY_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *args; - - SAVE_OPLINE(); - args = get_zval_ptr(opline->op1_type, opline->op1, &free_op1, BP_VAR_R); - - if (UNEXPECTED(Z_TYPE_P(args) != IS_ARRAY)) { - if ((opline->op1_type & (IS_VAR|IS_CV)) && Z_ISREF_P(args)) { - args = Z_REFVAL_P(args); - if (EXPECTED(Z_TYPE_P(args) == IS_ARRAY)) { - goto send_array; - } - } - zend_internal_type_error(EX_USES_STRICT_TYPES(), "call_user_func_array() expects parameter 2 to be array, %s given", zend_get_type_by_const(Z_TYPE_P(args))); - if (ZEND_CALL_INFO(EX(call)) & ZEND_CALL_CLOSURE) { - OBJ_RELEASE(ZEND_CLOSURE_OBJECT(EX(call)->func)); - } else if (ZEND_CALL_INFO(EX(call)) & ZEND_CALL_RELEASE_THIS) { - OBJ_RELEASE(Z_OBJ(EX(call)->This)); - } - EX(call)->func = (zend_function*)&zend_pass_function; - Z_OBJ(EX(call)->This) = NULL; - ZEND_CALL_INFO(EX(call)) &= ~(ZEND_CALL_RELEASE_THIS | ZEND_CALL_HAS_THIS); - FREE_UNFETCHED_OP(opline->op2_type, opline->op2.var); - } else { - uint32_t arg_num; - HashTable *ht; - zval *arg, *param; - - -send_array: - ht = Z_ARRVAL_P(args); - if (opline->op2_type != IS_UNUSED) { - zend_free_op free_op2; - zval *op2 = get_zval_ptr(opline->op2_type, opline->op2, &free_op2, BP_VAR_R); - uint32_t skip = opline->extended_value; - uint32_t count = zend_hash_num_elements(ht); - zend_long len = zval_get_long(op2); - - if (len < 0) { - len += (zend_long)(count - skip); - } - if (skip < count && len > 0) { - if (len > (zend_long)(count - skip)) { - len = (zend_long)(count - skip); - } - zend_vm_stack_extend_call_frame(&EX(call), 0, len); - arg_num = 1; - param = ZEND_CALL_ARG(EX(call), 1); - ZEND_HASH_FOREACH_VAL(ht, arg) { - zend_bool must_wrap = 0; - if (skip > 0) { - skip--; - continue; - } else if ((zend_long)(arg_num - 1) >= len) { - break; - } else if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - if (UNEXPECTED(!Z_ISREF_P(arg))) { - if (!ARG_MAY_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - /* By-value send is not allowed -- emit a warning, - * but still perform the call. */ - zend_param_must_be_ref(EX(call)->func, arg_num); - must_wrap = 1; - } - } - } else { - if (Z_ISREF_P(arg) && - !(EX(call)->func->common.fn_flags & ZEND_ACC_CALL_VIA_TRAMPOLINE)) { - /* don't separate references for __call */ - arg = Z_REFVAL_P(arg); - } - } - if (EXPECTED(!must_wrap)) { - ZVAL_COPY(param, arg); - } else { - Z_TRY_ADDREF_P(arg); - ZVAL_NEW_REF(param, arg); - } - ZEND_CALL_NUM_ARGS(EX(call))++; - arg_num++; - param++; - } ZEND_HASH_FOREACH_END(); - } - FREE_OP(free_op2); - } else { - zend_vm_stack_extend_call_frame(&EX(call), 0, zend_hash_num_elements(ht)); - arg_num = 1; - param = ZEND_CALL_ARG(EX(call), 1); - ZEND_HASH_FOREACH_VAL(ht, arg) { - zend_bool must_wrap = 0; - if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - if (UNEXPECTED(!Z_ISREF_P(arg))) { - if (!ARG_MAY_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - /* By-value send is not allowed -- emit a warning, - * but still perform the call. */ - zend_param_must_be_ref(EX(call)->func, arg_num); - must_wrap = 1; - } - } - } else { - if (Z_ISREF_P(arg) && - !(EX(call)->func->common.fn_flags & ZEND_ACC_CALL_VIA_TRAMPOLINE)) { - /* don't separate references for __call */ - arg = Z_REFVAL_P(arg); - } - } - if (EXPECTED(!must_wrap)) { - ZVAL_COPY(param, arg); - } else { - Z_TRY_ADDREF_P(arg); - ZVAL_NEW_REF(param, arg); - } - ZEND_CALL_NUM_ARGS(EX(call))++; - arg_num++; - param++; - } ZEND_HASH_FOREACH_END(); - } - } - FREE_OP(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_case_helper_SPEC(zval *op_1, zval *op_2 ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (UNEXPECTED(Z_TYPE_INFO_P(op_1) == IS_UNDEF)) { - op_1 = ZVAL_UNDEFINED_OP1(); - } - if (UNEXPECTED(Z_TYPE_INFO_P(op_2) == IS_UNDEF)) { - op_2 = ZVAL_UNDEFINED_OP2(); - } - compare_function(EX_VAR(opline->result.var), op_1, op_2); - if (opline->op2_type & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_nogc(op_2); - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - if (Z_LVAL_P(EX_VAR(opline->result.var)) == 0) { - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_UNPACK_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1; - - SAVE_OPLINE(); - op1 = get_zval_ptr(opline->op1_type, opline->op1, &free_op1, BP_VAR_R); - -add_unpack_again: - if (EXPECTED(Z_TYPE_P(op1) == IS_ARRAY)) { - HashTable *ht = Z_ARRVAL_P(op1); - zval *val; - zend_string *key; - - ZEND_HASH_FOREACH_STR_KEY_VAL(ht, key, val) { - if (key) { - zend_throw_error(NULL, "Cannot unpack array with string keys"); - FREE_OP(free_op1); - HANDLE_EXCEPTION(); - } else { - if (Z_ISREF_P(val) && Z_REFCOUNT_P(val) == 1) { - val = Z_REFVAL_P(val); - } - Z_TRY_ADDREF_P(val); - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), val)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(val); - break; - } - } - } ZEND_HASH_FOREACH_END(); - } else if (EXPECTED(Z_TYPE_P(op1) == IS_OBJECT)) { - zend_class_entry *ce = Z_OBJCE_P(op1); - zend_object_iterator *iter; - - if (!ce || !ce->get_iterator) { - zend_throw_error(NULL, "Only arrays and Traversables can be unpacked"); - } else { - iter = ce->get_iterator(ce, op1, 0); - if (UNEXPECTED(!iter)) { - FREE_OP(free_op1); - if (!EG(exception)) { - zend_throw_exception_ex( - NULL, 0, "Object of type %s did not create an Iterator", ZSTR_VAL(ce->name) - ); - } - HANDLE_EXCEPTION(); - } - - if (iter->funcs->rewind) { - iter->funcs->rewind(iter); - } - - for (; iter->funcs->valid(iter) == SUCCESS; ) { - zval *val; - - if (UNEXPECTED(EG(exception) != NULL)) { - break; - } - - val = iter->funcs->get_current_data(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - break; - } - - if (iter->funcs->get_current_key) { - zval key; - iter->funcs->get_current_key(iter, &key); - if (UNEXPECTED(EG(exception) != NULL)) { - break; - } - - if (UNEXPECTED(Z_TYPE(key) != IS_LONG)) { - zend_throw_error(NULL, - (Z_TYPE(key) == IS_STRING) ? - "Cannot unpack Traversable with string keys" : - "Cannot unpack Traversable with non-integer keys"); - zval_ptr_dtor(&key); - break; - } - } - - ZVAL_DEREF(val); - Z_TRY_ADDREF_P(val); - - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), val)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(val); - } - - iter->funcs->move_forward(iter); - } - - zend_iterator_dtor(iter); - } - } else if (EXPECTED(Z_ISREF_P(op1))) { - op1 = Z_REFVAL_P(op1); - goto add_unpack_again; - } else { - zend_throw_error(NULL, "Only arrays and Traversables can be unpacked"); - } - - FREE_OP(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_STATIC_PROP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varname; - zend_string *name, *tmp_name = NULL; - zend_class_entry *ce; - zend_free_op free_op1; - - SAVE_OPLINE(); - - if (opline->op2_type == IS_CONST) { - ce = CACHED_PTR(opline->extended_value); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - FREE_UNFETCHED_OP(opline->op1_type, opline->op1.var); - HANDLE_EXCEPTION(); - } - /*CACHE_PTR(opline->extended_value, ce);*/ - } - } else if (opline->op2_type == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op2.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - FREE_UNFETCHED_OP(opline->op1_type, opline->op1.var); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op2.var)); - } - - varname = get_zval_ptr_undef(opline->op1_type, opline->op1, &free_op1, BP_VAR_R); - if (opline->op1_type == IS_CONST) { - name = Z_STR_P(varname); - } else if (EXPECTED(Z_TYPE_P(varname) == IS_STRING)) { - name = Z_STR_P(varname); - } else { - if (opline->op1_type == IS_CV && UNEXPECTED(Z_TYPE_P(varname) == IS_UNDEF)) { - varname = ZVAL_UNDEFINED_OP1(); - } - name = zval_get_tmp_string(varname, &tmp_name); - } - - zend_std_unset_static_property(ce, name); - - zend_tmp_string_release(tmp_name); - FREE_OP(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - int result; - - SAVE_OPLINE(); - - result = zend_fetch_static_property_address(&value, NULL, opline->extended_value & ~ZEND_ISEMPTY, BP_VAR_IS, 0 OPLINE_CC EXECUTE_DATA_CC); - - if (!(opline->extended_value & ZEND_ISEMPTY)) { - result = result == SUCCESS && Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL); - } else { - result = result != SUCCESS || !i_zend_is_true(value); - } - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_EXIT_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (opline->op1_type != IS_UNUSED) { - zend_free_op free_op1; - zval *ptr = get_zval_ptr(opline->op1_type, opline->op1, &free_op1, BP_VAR_R); - - do { - if (Z_TYPE_P(ptr) == IS_LONG) { - EG(exit_status) = Z_LVAL_P(ptr); - } else { - if ((opline->op1_type & (IS_VAR|IS_CV)) && Z_ISREF_P(ptr)) { - ptr = Z_REFVAL_P(ptr); - if (Z_TYPE_P(ptr) == IS_LONG) { - EG(exit_status) = Z_LVAL_P(ptr); - break; - } - } - zend_print_zval(ptr, 0); - } - } while (0); - FREE_OP(free_op1); - } - zend_bailout(); - ZEND_VM_NEXT_OPCODE(); /* Never reached */ -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BEGIN_SILENCE_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - ZVAL_LONG(EX_VAR(opline->result.var), EG(error_reporting)); - - if (EG(error_reporting)) { - do { - EG(error_reporting) = 0; - if (!EG(error_reporting_ini_entry)) { - zval *zv = zend_hash_find_ex(EG(ini_directives), ZSTR_KNOWN(ZEND_STR_ERROR_REPORTING), 1); - if (zv) { - EG(error_reporting_ini_entry) = (zend_ini_entry *)Z_PTR_P(zv); - } else { - break; - } - } - if (!EG(error_reporting_ini_entry)->modified) { - if (!EG(modified_ini_directives)) { - ALLOC_HASHTABLE(EG(modified_ini_directives)); - zend_hash_init(EG(modified_ini_directives), 8, NULL, NULL, 0); - } - if (EXPECTED(zend_hash_add_ptr(EG(modified_ini_directives), ZSTR_KNOWN(ZEND_STR_ERROR_REPORTING), EG(error_reporting_ini_entry)) != NULL)) { - EG(error_reporting_ini_entry)->orig_value = EG(error_reporting_ini_entry)->value; - EG(error_reporting_ini_entry)->orig_modifiable = EG(error_reporting_ini_entry)->modifiable; - EG(error_reporting_ini_entry)->modified = 1; - } - } - } while (0); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_EXT_STMT_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - if (!EG(no_extensions)) { - SAVE_OPLINE(); - zend_llist_apply_with_argument(&zend_extensions, (llist_apply_with_arg_func_t) zend_extension_statement_handler, execute_data); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_EXT_FCALL_BEGIN_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - if (!EG(no_extensions)) { - SAVE_OPLINE(); - zend_llist_apply_with_argument(&zend_extensions, (llist_apply_with_arg_func_t) zend_extension_fcall_begin_handler, execute_data); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_EXT_FCALL_END_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - if (!EG(no_extensions)) { - SAVE_OPLINE(); - zend_llist_apply_with_argument(&zend_extensions, (llist_apply_with_arg_func_t) zend_extension_fcall_end_handler, execute_data); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DECLARE_ANON_CLASS_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *zv; - zend_class_entry *ce; - USE_OPLINE - - ce = CACHED_PTR(opline->extended_value); - if (UNEXPECTED(ce == NULL)) { - zend_string *rtd_key = Z_STR_P(RT_CONSTANT(opline, opline->op1)); - zv = zend_hash_find_ex(EG(class_table), rtd_key, 1); - if (UNEXPECTED(zv == NULL)) { - SAVE_OPLINE(); - do { - ZEND_ASSERT(EX(func)->op_array.fn_flags & ZEND_ACC_PRELOADED); - if (zend_preload_autoload - && zend_preload_autoload(EX(func)->op_array.filename) == SUCCESS) { - zv = zend_hash_find_ex(EG(class_table), rtd_key, 1); - if (EXPECTED(zv != NULL)) { - break; - } - } - zend_error_noreturn(E_ERROR, "Anonymous class wasn't preloaded"); - } while (0); - } - ZEND_ASSERT(zv != NULL); - ce = Z_CE_P(zv); - if (!(ce->ce_flags & ZEND_ACC_LINKED)) { - SAVE_OPLINE(); - if (zend_do_link_class(ce, (opline->op2_type == IS_CONST) ? Z_STR_P(RT_CONSTANT(opline, opline->op2)) : NULL) == FAILURE) { - HANDLE_EXCEPTION(); - } - } - CACHE_PTR(opline->extended_value, ce); - } - Z_CE_P(EX_VAR(opline->result.var)) = ce; - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DECLARE_FUNCTION_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - do_bind_function(RT_CONSTANT(opline, opline->op1)); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_TICKS_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - if ((uint32_t)++EG(ticks_count) >= opline->extended_value) { - EG(ticks_count) = 0; - if (zend_ticks_function) { - SAVE_OPLINE(); - zend_ticks_function(opline->extended_value); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_EXT_NOP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_NOP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - ZEND_VM_NEXT_OPCODE(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_dispatch_try_catch_finally_helper_SPEC(uint32_t try_catch_offset, uint32_t op_num ZEND_OPCODE_HANDLER_ARGS_DC) -{ - /* May be NULL during generator closing (only finally blocks are executed) */ - zend_object *ex = EG(exception); - - /* Walk try/catch/finally structures upwards, performing the necessary actions */ - while (try_catch_offset != (uint32_t) -1) { - zend_try_catch_element *try_catch = - &EX(func)->op_array.try_catch_array[try_catch_offset]; - - if (op_num < try_catch->catch_op && ex) { - /* Go to catch block */ - cleanup_live_vars(execute_data, op_num, try_catch->catch_op); - ZEND_VM_JMP_EX(&EX(func)->op_array.opcodes[try_catch->catch_op], 0); - - } else if (op_num < try_catch->finally_op) { - /* Go to finally block */ - zval *fast_call = EX_VAR(EX(func)->op_array.opcodes[try_catch->finally_end].op1.var); - cleanup_live_vars(execute_data, op_num, try_catch->finally_op); - Z_OBJ_P(fast_call) = EG(exception); - EG(exception) = NULL; - Z_OPLINE_NUM_P(fast_call) = (uint32_t)-1; - ZEND_VM_JMP_EX(&EX(func)->op_array.opcodes[try_catch->finally_op], 0); - - } else if (op_num < try_catch->finally_end) { - zval *fast_call = EX_VAR(EX(func)->op_array.opcodes[try_catch->finally_end].op1.var); - - /* cleanup incomplete RETURN statement */ - if (Z_OPLINE_NUM_P(fast_call) != (uint32_t)-1 - && (EX(func)->op_array.opcodes[Z_OPLINE_NUM_P(fast_call)].op2_type & (IS_TMP_VAR | IS_VAR))) { - zval *return_value = EX_VAR(EX(func)->op_array.opcodes[Z_OPLINE_NUM_P(fast_call)].op2.var); - - zval_ptr_dtor(return_value); - } - - /* Chain potential exception from wrapping finally block */ - if (Z_OBJ_P(fast_call)) { - if (ex) { - zend_exception_set_previous(ex, Z_OBJ_P(fast_call)); - } else { - EG(exception) = Z_OBJ_P(fast_call); - } - ex = Z_OBJ_P(fast_call); - } - } - - try_catch_offset--; - } - - /* Uncaught exception */ - cleanup_live_vars(execute_data, op_num, 0); - if (UNEXPECTED((EX_CALL_INFO() & ZEND_CALL_GENERATOR) != 0)) { - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - zend_generator_close(generator, 1); - ZEND_VM_RETURN(); - } else { - /* We didn't execute RETURN, and have to initialize return_value */ - if (EX(return_value)) { - ZVAL_UNDEF(EX(return_value)); - } - ZEND_VM_TAIL_CALL(zend_leave_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_HANDLE_EXCEPTION_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - const zend_op *throw_op = EG(opline_before_exception); - uint32_t throw_op_num = throw_op - EX(func)->op_array.opcodes; - int i, current_try_catch_offset = -1; - - if ((throw_op->opcode == ZEND_FREE || throw_op->opcode == ZEND_FE_FREE) - && throw_op->extended_value & ZEND_FREE_ON_RETURN) { - /* exceptions thrown because of loop var destruction on return/break/... - * are logically thrown at the end of the foreach loop, so adjust the - * throw_op_num. - */ - const zend_live_range *range = find_live_range( - &EX(func)->op_array, throw_op_num, throw_op->op1.var); - throw_op_num = range->end; - } - - /* Find the innermost try/catch/finally the exception was thrown in */ - for (i = 0; i < EX(func)->op_array.last_try_catch; i++) { - zend_try_catch_element *try_catch = &EX(func)->op_array.try_catch_array[i]; - if (try_catch->try_op > throw_op_num) { - /* further blocks will not be relevant... */ - break; - } - if (throw_op_num < try_catch->catch_op || throw_op_num < try_catch->finally_end) { - current_try_catch_offset = i; - } - } - - cleanup_unfinished_calls(execute_data, throw_op_num); - - if (throw_op->result_type & (IS_VAR | IS_TMP_VAR)) { - switch (throw_op->opcode) { - case ZEND_ADD_ARRAY_ELEMENT: - case ZEND_ADD_ARRAY_UNPACK: - case ZEND_ROPE_INIT: - case ZEND_ROPE_ADD: - break; /* exception while building structures, live range handling will free those */ - - case ZEND_FETCH_CLASS: - case ZEND_DECLARE_ANON_CLASS: - break; /* return value is zend_class_entry pointer */ - - default: - zval_ptr_dtor_nogc(EX_VAR(throw_op->result.var)); - } - } - - ZEND_VM_TAIL_CALL(zend_dispatch_try_catch_finally_helper_SPEC(current_try_catch_offset, throw_op_num ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_USER_OPCODE_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - int ret; - - SAVE_OPLINE(); - ret = zend_user_opcode_handlers[opline->opcode](execute_data); - opline = EX(opline); - - switch (ret) { - case ZEND_USER_OPCODE_CONTINUE: - ZEND_VM_CONTINUE(); - case ZEND_USER_OPCODE_RETURN: - if (UNEXPECTED((EX_CALL_INFO() & ZEND_CALL_GENERATOR) != 0)) { - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - zend_generator_close(generator, 1); - ZEND_VM_RETURN(); - } else { - ZEND_VM_TAIL_CALL(zend_leave_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - case ZEND_USER_OPCODE_ENTER: - ZEND_VM_ENTER(); - case ZEND_USER_OPCODE_LEAVE: - ZEND_VM_LEAVE(); - case ZEND_USER_OPCODE_DISPATCH: - ZEND_VM_DISPATCH(opline->opcode, opline); - default: - ZEND_VM_DISPATCH((zend_uchar)(ret & 0xff), opline); - } -} - -static zend_never_inline ZEND_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - zend_throw_error(NULL, "Cannot yield from finally in a force-closed generator"); - FREE_UNFETCHED_OP(opline->op2_type, opline->op2.var); - FREE_UNFETCHED_OP(opline->op1_type, opline->op1.var); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DISCARD_EXCEPTION_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *fast_call = EX_VAR(opline->op1.var); - SAVE_OPLINE(); - - /* cleanup incomplete RETURN statement */ - if (Z_OPLINE_NUM_P(fast_call) != (uint32_t)-1 - && (EX(func)->op_array.opcodes[Z_OPLINE_NUM_P(fast_call)].op2_type & (IS_TMP_VAR | IS_VAR))) { - zval *return_value = EX_VAR(EX(func)->op_array.opcodes[Z_OPLINE_NUM_P(fast_call)].op2.var); - - zval_ptr_dtor(return_value); - } - - /* cleanup delayed exception */ - if (Z_OBJ_P(fast_call) != NULL) { - /* discard the previously thrown exception */ - OBJ_RELEASE(Z_OBJ_P(fast_call)); - Z_OBJ_P(fast_call) = NULL; - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FAST_CALL_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *fast_call = EX_VAR(opline->result.var); - - Z_OBJ_P(fast_call) = NULL; - /* set return address */ - Z_OPLINE_NUM_P(fast_call) = opline - EX(func)->op_array.opcodes; - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op1), 0); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FAST_RET_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *fast_call = EX_VAR(opline->op1.var); - uint32_t current_try_catch_offset, current_op_num; - - if (Z_OPLINE_NUM_P(fast_call) != (uint32_t)-1) { - const zend_op *fast_ret = EX(func)->op_array.opcodes + Z_OPLINE_NUM_P(fast_call); - - ZEND_VM_JMP_EX(fast_ret + 1, 0); - } - - /* special case for unhandled exceptions */ - EG(exception) = Z_OBJ_P(fast_call); - Z_OBJ_P(fast_call) = NULL; - current_try_catch_offset = opline->op2.num; - current_op_num = opline - EX(func)->op_array.opcodes; - ZEND_VM_TAIL_CALL(zend_dispatch_try_catch_finally_helper_SPEC(current_try_catch_offset, current_op_num ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSERT_CHECK_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - if (EG(assertions) <= 0) { - zend_op *target = OP_JMP_ADDR(opline, opline->op2); - if (RETURN_VALUE_USED(opline)) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - } - ZEND_VM_JMP_EX(target, 0); - } else { - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CALL_TRAMPOLINE_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zend_array *args = NULL; - zend_function *fbc = EX(func); - zval *ret = EX(return_value); - uint32_t call_info = EX_CALL_INFO() & (ZEND_CALL_NESTED | ZEND_CALL_TOP | ZEND_CALL_RELEASE_THIS); - uint32_t num_args = EX_NUM_ARGS(); - zend_execute_data *call; - - SAVE_OPLINE(); - - if (num_args) { - zval *p = ZEND_CALL_ARG(execute_data, 1); - zval *end = p + num_args; - - args = zend_new_array(num_args); - zend_hash_real_init_packed(args); - ZEND_HASH_FILL_PACKED(args) { - do { - ZEND_HASH_FILL_ADD(p); - p++; - } while (p != end); - } ZEND_HASH_FILL_END(); - } - - call = execute_data; - execute_data = EG(current_execute_data) = EX(prev_execute_data); - - call->func = (fbc->op_array.fn_flags & ZEND_ACC_STATIC) ? fbc->op_array.scope->__callstatic : fbc->op_array.scope->__call; - ZEND_ASSERT(zend_vm_calc_used_stack(2, call->func) <= (size_t)(((char*)EG(vm_stack_end)) - (char*)call)); - ZEND_CALL_NUM_ARGS(call) = 2; - - ZVAL_STR(ZEND_CALL_ARG(call, 1), fbc->common.function_name); - if (args) { - ZVAL_ARR(ZEND_CALL_ARG(call, 2), args); - } else { - ZVAL_EMPTY_ARRAY(ZEND_CALL_ARG(call, 2)); - } - zend_free_trampoline(fbc); - fbc = call->func; - - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION)) { - if (UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - execute_data = call; - i_init_func_execute_data(&fbc->op_array, ret, 0 EXECUTE_DATA_CC); - if (EXPECTED(zend_execute_ex == execute_ex)) { - LOAD_OPLINE_EX(); - ZEND_VM_ENTER_EX(); - } else { - SAVE_OPLINE_EX(); - execute_data = EX(prev_execute_data); - LOAD_OPLINE(); - ZEND_ADD_CALL_FLAG(call, ZEND_CALL_TOP); - zend_execute_ex(call); - } - } else { - zval retval; - - ZEND_ASSERT(fbc->type == ZEND_INTERNAL_FUNCTION); - - EG(current_execute_data) = call; - - if (UNEXPECTED(fbc->common.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) - && UNEXPECTED(!zend_verify_internal_arg_types(fbc, call))) { - zend_vm_stack_free_call_frame(call); - if (ret) { - ZVAL_UNDEF(ret); - } - goto call_trampoline_end; - } - - if (ret == NULL) { - ret = &retval; - } - - ZVAL_NULL(ret); - if (!zend_execute_internal) { - /* saves one function call if zend_execute_internal is not used */ - fbc->internal_function.handler(call, ret); - } else { - zend_execute_internal(call, ret); - } - -#if ZEND_DEBUG - if (!EG(exception) && call->func) { - ZEND_ASSERT(!(call->func->common.fn_flags & ZEND_ACC_HAS_RETURN_TYPE) || - zend_verify_internal_return_type(call->func, ret)); - ZEND_ASSERT((call->func->common.fn_flags & ZEND_ACC_RETURN_REFERENCE) - ? Z_ISREF_P(ret) : !Z_ISREF_P(ret)); - } -#endif - - EG(current_execute_data) = call->prev_execute_data; - -call_trampoline_end: - zend_vm_stack_free_args(call); - if (ret == &retval) { - zval_ptr_dtor(ret); - } - } - - execute_data = EG(current_execute_data); - - if (!EX(func) || !ZEND_USER_CODE(EX(func)->type) || (call_info & ZEND_CALL_TOP)) { - ZEND_VM_RETURN(); - } - - if (UNEXPECTED(call_info & ZEND_CALL_RELEASE_THIS)) { - zend_object *object = Z_OBJ(call->This); - OBJ_RELEASE(object); - } - zend_vm_stack_free_call_frame(call); - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION_LEAVE(); - } - - LOAD_OPLINE(); - ZEND_VM_INC_OPCODE(); - ZEND_VM_LEAVE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMP_FORWARD_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - OPLINE = OP_JMP_ADDR(opline, opline->op1); - ZEND_VM_CONTINUE(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_interrupt_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS) -{ - EG(vm_interrupt) = 0; - SAVE_OPLINE(); - if (EG(timed_out)) { - zend_timeout(0); - } else if (zend_interrupt_function) { - zend_interrupt_function(execute_data); - ZEND_VM_ENTER(); - } - ZEND_VM_CONTINUE(); -} -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_function *fbc; - zval *function_name, *func; - zend_execute_data *call; - - fbc = CACHED_PTR(opline->result.num); - if (UNEXPECTED(fbc == NULL)) { - function_name = (zval*)RT_CONSTANT(opline, opline->op2); - func = zend_hash_find_ex(EG(function_table), Z_STR_P(function_name+1), 1); - if (UNEXPECTED(func == NULL)) { - ZEND_VM_TAIL_CALL(zend_undefined_function_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - fbc = Z_FUNC_P(func); - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - CACHE_PTR(opline->result.num, fbc); - } - call = _zend_vm_stack_push_call_frame(ZEND_CALL_NESTED_FUNCTION, - fbc, opline->extended_value, NULL); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_DYNAMIC_CALL_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *function_name; - zend_execute_data *call; - - SAVE_OPLINE(); - function_name = RT_CONSTANT(opline, opline->op2); - -try_function_name: - if (IS_CONST != IS_CONST && EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - call = zend_init_dynamic_call_string(Z_STR_P(function_name), opline->extended_value); - } else if (IS_CONST != IS_CONST && EXPECTED(Z_TYPE_P(function_name) == IS_OBJECT)) { - call = zend_init_dynamic_call_object(function_name, opline->extended_value); - } else if (EXPECTED(Z_TYPE_P(function_name) == IS_ARRAY)) { - call = zend_init_dynamic_call_array(Z_ARRVAL_P(function_name), opline->extended_value); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(function_name) == IS_REFERENCE)) { - function_name = Z_REFVAL_P(function_name); - goto try_function_name; - } else { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - call = NULL; - } - - if (UNEXPECTED(!call)) { - HANDLE_EXCEPTION(); - } - - if (IS_CONST & (IS_VAR|IS_TMP_VAR)) { - if (UNEXPECTED(EG(exception))) { - if (call) { - if (call->func->common.fn_flags & ZEND_ACC_CALL_VIA_TRAMPOLINE) { - zend_string_release_ex(call->func->common.function_name, 0); - zend_free_trampoline(call->func); - } - zend_vm_stack_free_call_frame(call); - } - HANDLE_EXCEPTION(); - } - } - - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_NS_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *func_name; - zval *func; - zend_function *fbc; - zend_execute_data *call; - - fbc = CACHED_PTR(opline->result.num); - if (UNEXPECTED(fbc == NULL)) { - func_name = (zval *)RT_CONSTANT(opline, opline->op2); - func = zend_hash_find_ex(EG(function_table), Z_STR_P(func_name + 1), 1); - if (func == NULL) { - func = zend_hash_find_ex(EG(function_table), Z_STR_P(func_name + 2), 1); - if (UNEXPECTED(func == NULL)) { - ZEND_VM_TAIL_CALL(zend_undefined_function_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - } - fbc = Z_FUNC_P(func); - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - CACHE_PTR(opline->result.num, fbc); - } - - call = _zend_vm_stack_push_call_frame(ZEND_CALL_NESTED_FUNCTION, - fbc, opline->extended_value, NULL); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_FCALL_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *fname; - zval *func; - zend_function *fbc; - zend_execute_data *call; - - fbc = CACHED_PTR(opline->result.num); - if (UNEXPECTED(fbc == NULL)) { - fname = (zval*)RT_CONSTANT(opline, opline->op2); - func = zend_hash_find_ex(EG(function_table), Z_STR_P(fname), 1); - if (UNEXPECTED(func == NULL)) { - ZEND_VM_TAIL_CALL(zend_undefined_function_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - fbc = Z_FUNC_P(func); - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - CACHE_PTR(opline->result.num, fbc); - } - - call = _zend_vm_stack_push_call_frame_ex( - opline->op1.num, ZEND_CALL_NESTED_FUNCTION, - fbc, opline->extended_value, NULL); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RECV_INIT_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - uint32_t arg_num; - zval *param; - - ZEND_VM_REPEATABLE_OPCODE - - arg_num = opline->op1.num; - param = EX_VAR(opline->result.var); - if (arg_num > EX_NUM_ARGS()) { - zval *default_value = RT_CONSTANT(opline, opline->op2); - - if (Z_OPT_TYPE_P(default_value) == IS_CONSTANT_AST) { - zval *cache_val = (zval*)CACHE_ADDR(Z_CACHE_SLOT_P(default_value)); - - /* we keep in cache only not refcounted values */ - if (Z_TYPE_P(cache_val) != IS_UNDEF) { - ZVAL_COPY_VALUE(param, cache_val); - } else { - SAVE_OPLINE(); - ZVAL_COPY(param, default_value); - if (UNEXPECTED(zval_update_constant_ex(param, EX(func)->op_array.scope) != SUCCESS)) { - zval_ptr_dtor_nogc(param); - ZVAL_UNDEF(param); - HANDLE_EXCEPTION(); - } - if (!Z_REFCOUNTED_P(param)) { - ZVAL_COPY_VALUE(cache_val, param); - } - } - goto recv_init_check_type; - } else { - ZVAL_COPY(param, default_value); - } - } else { -recv_init_check_type: - if (UNEXPECTED((EX(func)->op_array.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) != 0)) { - zval *default_value = RT_CONSTANT(opline, opline->op2); - - SAVE_OPLINE(); - if (UNEXPECTED(!zend_verify_recv_arg_type(EX(func), arg_num, param, default_value, CACHE_ADDR(opline->extended_value)))) { - HANDLE_EXCEPTION(); - } - } - } - - ZEND_VM_REPEAT_OPCODE(ZEND_RECV_INIT); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *function_name; - zend_execute_data *call; - - SAVE_OPLINE(); - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - -try_function_name: - if ((IS_TMP_VAR|IS_VAR) != IS_CONST && EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - call = zend_init_dynamic_call_string(Z_STR_P(function_name), opline->extended_value); - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && EXPECTED(Z_TYPE_P(function_name) == IS_OBJECT)) { - call = zend_init_dynamic_call_object(function_name, opline->extended_value); - } else if (EXPECTED(Z_TYPE_P(function_name) == IS_ARRAY)) { - call = zend_init_dynamic_call_array(Z_ARRVAL_P(function_name), opline->extended_value); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(function_name) == IS_REFERENCE)) { - function_name = Z_REFVAL_P(function_name); - goto try_function_name; - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - call = NULL; - } - - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(!call)) { - HANDLE_EXCEPTION(); - } - - if ((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_TMP_VAR)) { - if (UNEXPECTED(EG(exception))) { - if (call) { - if (call->func->common.fn_flags & ZEND_ACC_CALL_VIA_TRAMPOLINE) { - zend_string_release_ex(call->func->common.function_name, 0); - zend_free_trampoline(call->func); - } - zend_vm_stack_free_call_frame(call); - } - HANDLE_EXCEPTION(); - } - } - - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RECV_SPEC_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - uint32_t arg_num = opline->op1.num; - - if (UNEXPECTED(arg_num > EX_NUM_ARGS())) { - SAVE_OPLINE(); - zend_missing_arg_error(execute_data); - HANDLE_EXCEPTION(); - } else { - zval *param = EX_VAR(opline->result.var); - - SAVE_OPLINE(); - if (UNEXPECTED(!zend_verify_recv_arg_type(EX(func), arg_num, param, NULL, CACHE_ADDR(opline->op2.num)))) { - HANDLE_EXCEPTION(); - } - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RECV_VARIADIC_SPEC_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - uint32_t arg_num = opline->op1.num; - uint32_t arg_count = EX_NUM_ARGS(); - zval *params; - - SAVE_OPLINE(); - - params = EX_VAR(opline->result.var); - - if (arg_num <= arg_count) { - zval *param; - - array_init_size(params, arg_count - arg_num + 1); - zend_hash_real_init_packed(Z_ARRVAL_P(params)); - ZEND_HASH_FILL_PACKED(Z_ARRVAL_P(params)) { - param = EX_VAR_NUM(EX(func)->op_array.last_var + EX(func)->op_array.T); - if (UNEXPECTED((EX(func)->op_array.fn_flags & ZEND_ACC_HAS_TYPE_HINTS) != 0)) { - ZEND_ADD_CALL_FLAG(execute_data, ZEND_CALL_FREE_EXTRA_ARGS); - do { - zend_verify_variadic_arg_type(EX(func), arg_num, param, NULL, CACHE_ADDR(opline->op2.num)); - if (Z_OPT_REFCOUNTED_P(param)) Z_ADDREF_P(param); - ZEND_HASH_FILL_ADD(param); - param++; - } while (++arg_num <= arg_count); - } else { - do { - if (Z_OPT_REFCOUNTED_P(param)) Z_ADDREF_P(param); - ZEND_HASH_FILL_ADD(param); - param++; - } while (++arg_num <= arg_count); - } - } ZEND_HASH_FILL_END(); - } else { - ZVAL_EMPTY_ARRAY(params); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_DYNAMIC_CALL_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *function_name; - zend_execute_data *call; - - SAVE_OPLINE(); - function_name = EX_VAR(opline->op2.var); - -try_function_name: - if (IS_CV != IS_CONST && EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - call = zend_init_dynamic_call_string(Z_STR_P(function_name), opline->extended_value); - } else if (IS_CV != IS_CONST && EXPECTED(Z_TYPE_P(function_name) == IS_OBJECT)) { - call = zend_init_dynamic_call_object(function_name, opline->extended_value); - } else if (EXPECTED(Z_TYPE_P(function_name) == IS_ARRAY)) { - call = zend_init_dynamic_call_array(Z_ARRVAL_P(function_name), opline->extended_value); - } else if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(function_name) == IS_REFERENCE)) { - function_name = Z_REFVAL_P(function_name); - goto try_function_name; - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - call = NULL; - } - - if (UNEXPECTED(!call)) { - HANDLE_EXCEPTION(); - } - - if (IS_CV & (IS_VAR|IS_TMP_VAR)) { - if (UNEXPECTED(EG(exception))) { - if (call) { - if (call->func->common.fn_flags & ZEND_ACC_CALL_VIA_TRAMPOLINE) { - zend_string_release_ex(call->func->common.function_name, 0); - zend_free_trampoline(call->func); - } - zend_vm_stack_free_call_frame(call); - } - HANDLE_EXCEPTION(); - } - } - - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BW_NOT_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1; - - op1 = RT_CONSTANT(opline, opline->op1); - if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), ~Z_LVAL_P(op1)); - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = ZVAL_UNDEFINED_OP1(); - } - bitwise_not_function(EX_VAR(opline->result.var), op1); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BOOL_NOT_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *val; - - - val = RT_CONSTANT(opline, opline->op1); - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - /* The result and op1 can be the same cv zval */ - const uint32_t orig_val_type = Z_TYPE_INFO_P(val); - ZVAL_TRUE(EX_VAR(opline->result.var)); - if (IS_CONST == IS_CV && UNEXPECTED(orig_val_type == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } else { - SAVE_OPLINE(); - ZVAL_BOOL(EX_VAR(opline->result.var), !i_zend_is_true(val)); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ECHO_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *z; - - SAVE_OPLINE(); - z = RT_CONSTANT(opline, opline->op1); - - if (Z_TYPE_P(z) == IS_STRING) { - zend_string *str = Z_STR_P(z); - - if (ZSTR_LEN(str) != 0) { - zend_write(ZSTR_VAL(str), ZSTR_LEN(str)); - } - } else { - zend_string *str = zval_get_string_func(z); - - if (ZSTR_LEN(str) != 0) { - zend_write(ZSTR_VAL(str), ZSTR_LEN(str)); - } else if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(z) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - zend_string_release_ex(str, 0); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZ_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *val; - - val = RT_CONSTANT(opline, opline->op1); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - SAVE_OPLINE(); - if (i_zend_is_true(val)) { - opline++; - } else { - opline = OP_JMP_ADDR(opline, opline->op2); - } - - ZEND_VM_JMP(opline); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPNZ_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *val; - - val = RT_CONSTANT(opline, opline->op1); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (i_zend_is_true(val)) { - opline = OP_JMP_ADDR(opline, opline->op2); - } else { - opline++; - } - - ZEND_VM_JMP(opline); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZNZ_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *val; - - val = RT_CONSTANT(opline, opline->op1); - - if (EXPECTED(Z_TYPE_INFO_P(val) == IS_TRUE)) { - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - SAVE_OPLINE(); - if (i_zend_is_true(val)) { - opline = ZEND_OFFSET_TO_OPLINE(opline, opline->extended_value); - } else { - opline = OP_JMP_ADDR(opline, opline->op2); - } - - ZEND_VM_JMP(opline); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZ_EX_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *val; - int ret; - - val = RT_CONSTANT(opline, opline->op1); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - SAVE_OPLINE(); - ret = i_zend_is_true(val); - - if (ret) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - opline++; - } else { - ZVAL_FALSE(EX_VAR(opline->result.var)); - opline = OP_JMP_ADDR(opline, opline->op2); - } - ZEND_VM_JMP(opline); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPNZ_EX_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *val; - int ret; - - val = RT_CONSTANT(opline, opline->op1); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - - SAVE_OPLINE(); - ret = i_zend_is_true(val); - - if (ret) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - opline = OP_JMP_ADDR(opline, opline->op2); - } else { - ZVAL_FALSE(EX_VAR(opline->result.var)); - opline++; - } - ZEND_VM_JMP(opline); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RETURN_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *retval_ptr; - zval *return_value; - zend_free_op free_op1; - - retval_ptr = RT_CONSTANT(opline, opline->op1); - return_value = EX(return_value); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(retval_ptr) == IS_UNDEF)) { - SAVE_OPLINE(); - retval_ptr = ZVAL_UNDEFINED_OP1(); - if (return_value) { - ZVAL_NULL(return_value); - } - } else if (!return_value) { - if (IS_CONST & (IS_VAR|IS_TMP_VAR)) { - if (Z_REFCOUNTED_P(free_op1) && !Z_DELREF_P(free_op1)) { - SAVE_OPLINE(); - rc_dtor_func(Z_COUNTED_P(free_op1)); - } - } - } else { - if ((IS_CONST & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(return_value))) { - Z_ADDREF_P(return_value); - } - } - } else if (IS_CONST == IS_CV) { - do { - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - if (EXPECTED(!Z_OPT_ISREF_P(retval_ptr))) { - if (EXPECTED(!(EX_CALL_INFO() & ZEND_CALL_CODE))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (GC_MAY_LEAK(ref)) { - gc_possible_root(ref); - } - ZVAL_NULL(retval_ptr); - break; - } else { - Z_ADDREF_P(retval_ptr); - } - } else { - retval_ptr = Z_REFVAL_P(retval_ptr); - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } - } - ZVAL_COPY_VALUE(return_value, retval_ptr); - } while (0); - } else /* if (IS_CONST == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - - retval_ptr = Z_REFVAL_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } else { - ZVAL_COPY_VALUE(return_value, retval_ptr); - } - } - } - ZEND_VM_TAIL_CALL(zend_leave_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RETURN_BY_REF_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *retval_ptr; - - - SAVE_OPLINE(); - - do { - if ((IS_CONST & (IS_CONST|IS_TMP_VAR)) || - (IS_CONST == IS_VAR && opline->extended_value == ZEND_RETURNS_VALUE)) { - /* Not supposed to happen, but we'll allow it */ - zend_error(E_NOTICE, "Only variable references should be returned by reference"); - - retval_ptr = RT_CONSTANT(opline, opline->op1); - if (!EX(return_value)) { - - } else { - if (IS_CONST == IS_VAR && UNEXPECTED(Z_ISREF_P(retval_ptr))) { - ZVAL_COPY_VALUE(EX(return_value), retval_ptr); - break; - } - - ZVAL_NEW_REF(EX(return_value), retval_ptr); - if (IS_CONST == IS_CONST) { - Z_TRY_ADDREF_P(retval_ptr); - } - } - break; - } - - retval_ptr = NULL; - - if (IS_CONST == IS_VAR) { - ZEND_ASSERT(retval_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION && !Z_ISREF_P(retval_ptr)) { - zend_error(E_NOTICE, "Only variable references should be returned by reference"); - if (EX(return_value)) { - ZVAL_NEW_REF(EX(return_value), retval_ptr); - } else { - - } - break; - } - } - - if (EX(return_value)) { - if (Z_ISREF_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } else { - ZVAL_MAKE_REF_EX(retval_ptr, 2); - } - ZVAL_REF(EX(return_value), Z_REF_P(retval_ptr)); - } - - } while (0); - - ZEND_VM_TAIL_CALL(zend_leave_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GENERATOR_RETURN_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *retval; - - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - retval = RT_CONSTANT(opline, opline->op1); - - /* Copy return value into generator->retval */ - if ((IS_CONST & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(&generator->retval, retval); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->retval))) { - Z_ADDREF(generator->retval); - } - } - } else if (IS_CONST == IS_CV) { - ZVAL_COPY_DEREF(&generator->retval, retval); - } else /* if (IS_CONST == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_refcounted *ref = Z_COUNTED_P(retval); - - retval = Z_REFVAL_P(retval); - ZVAL_COPY_VALUE(&generator->retval, retval); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval)) { - Z_ADDREF_P(retval); - } - } else { - ZVAL_COPY_VALUE(&generator->retval, retval); - } - } - - /* Close the generator to free up resources */ - zend_generator_close(generator, 1); - - /* Pass execution back to handling code */ - ZEND_VM_RETURN(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_THROW_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - - - SAVE_OPLINE(); - value = RT_CONSTANT(opline, opline->op1); - - do { - if (IS_CONST == IS_CONST || UNEXPECTED(Z_TYPE_P(value) != IS_OBJECT)) { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - value = Z_REFVAL_P(value); - if (EXPECTED(Z_TYPE_P(value) == IS_OBJECT)) { - break; - } - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Can only throw objects"); - - HANDLE_EXCEPTION(); - } - } while (0); - - zend_exception_save(); - if (IS_CONST != IS_TMP_VAR) { - Z_TRY_ADDREF_P(value); - } - - zend_throw_exception_object(value); - zend_exception_restore(); - - HANDLE_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CATCH_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_class_entry *ce, *catch_ce; - zend_object *exception; - zval *ex; - - SAVE_OPLINE(); - /* Check whether an exception has been thrown, if not, jump over code */ - zend_exception_restore(); - if (EG(exception) == NULL) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - catch_ce = CACHED_PTR(opline->extended_value & ~ZEND_LAST_CATCH); - if (UNEXPECTED(catch_ce == NULL)) { - catch_ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD); - - CACHE_PTR(opline->extended_value & ~ZEND_LAST_CATCH, catch_ce); - } - ce = EG(exception)->ce; - -#ifdef HAVE_DTRACE - if (DTRACE_EXCEPTION_CAUGHT_ENABLED()) { - DTRACE_EXCEPTION_CAUGHT((char *)ce->name); - } -#endif /* HAVE_DTRACE */ - - if (ce != catch_ce) { - if (!catch_ce || !instanceof_function(ce, catch_ce)) { - if (opline->extended_value & ZEND_LAST_CATCH) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION(); - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - } - - exception = EG(exception); - ex = EX_VAR(opline->result.var); - { - /* Always perform a strict assignment. There is a reasonable expectation that if you - * write "catch (Exception $e)" then $e will actually be instanceof Exception. As such, - * we should not permit coercion to string here. */ - zval tmp; - ZVAL_OBJ(&tmp, exception); - EG(exception) = NULL; - zend_assign_to_variable(ex, &tmp, IS_TMP_VAR, /* strict */ 1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAL_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value, *arg; - - - value = RT_CONSTANT(opline, opline->op1); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, value); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(arg))) { - Z_ADDREF_P(arg); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAL_EX_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value, *arg; - - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(0)) { - if (QUICK_ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - goto send_val_by_ref; - } - } else if (ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { -send_val_by_ref: - ZEND_VM_TAIL_CALL(zend_cannot_pass_by_ref_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - value = RT_CONSTANT(opline, opline->op1); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, value); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(arg))) { - Z_ADDREF_P(arg); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAL_EX_SPEC_CONST_QUICK_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value, *arg; - - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(1)) { - if (QUICK_ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - goto send_val_by_ref; - } - } else if (ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { -send_val_by_ref: - ZEND_VM_TAIL_CALL(zend_cannot_pass_by_ref_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - value = RT_CONSTANT(opline, opline->op1); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, value); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(arg))) { - Z_ADDREF_P(arg); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_USER_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *arg, *param; - - - SAVE_OPLINE(); - - if (UNEXPECTED(ARG_MUST_BE_SENT_BY_REF(EX(call)->func, opline->op2.num))) { - zend_param_must_be_ref(EX(call)->func, opline->op2.num); - } - - arg = RT_CONSTANT(opline, opline->op1); - param = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY(param, arg); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BOOL_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *val; - - - val = RT_CONSTANT(opline, opline->op1); - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - /* The result and op1 can be the same cv zval */ - const uint32_t orig_val_type = Z_TYPE_INFO_P(val); - ZVAL_FALSE(EX_VAR(opline->result.var)); - if (IS_CONST == IS_CV && UNEXPECTED(orig_val_type == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } else { - SAVE_OPLINE(); - ZVAL_BOOL(EX_VAR(opline->result.var), i_zend_is_true(val)); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CLONE_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *obj; - zend_class_entry *ce, *scope; - zend_function *clone; - zend_object_clone_obj_t clone_call; - - SAVE_OPLINE(); - obj = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_UNUSED && UNEXPECTED(Z_TYPE_P(obj) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - do { - if (IS_CONST == IS_CONST || - (IS_CONST != IS_UNUSED && UNEXPECTED(Z_TYPE_P(obj) != IS_OBJECT))) { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(obj)) { - obj = Z_REFVAL_P(obj); - if (EXPECTED(Z_TYPE_P(obj) == IS_OBJECT)) { - break; - } - } - ZVAL_UNDEF(EX_VAR(opline->result.var)); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(obj) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "__clone method called on non-object"); - - HANDLE_EXCEPTION(); - } - } while (0); - - ce = Z_OBJCE_P(obj); - clone = ce->clone; - clone_call = Z_OBJ_HT_P(obj)->clone_obj; - if (UNEXPECTED(clone_call == NULL)) { - zend_throw_error(NULL, "Trying to clone an uncloneable object of class %s", ZSTR_VAL(ce->name)); - - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - - if (clone && !(clone->common.fn_flags & ZEND_ACC_PUBLIC)) { - scope = EX(func)->op_array.scope; - if (clone->common.scope != scope) { - if (UNEXPECTED(clone->common.fn_flags & ZEND_ACC_PRIVATE) - || UNEXPECTED(!zend_check_protected(zend_get_function_root_class(clone), scope))) { - zend_wrong_clone_call(clone, scope); - - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - } - - ZVAL_OBJ(EX_VAR(opline->result.var), clone_call(obj)); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CAST_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *expr; - zval *result = EX_VAR(opline->result.var); - HashTable *ht; - - SAVE_OPLINE(); - expr = RT_CONSTANT(opline, opline->op1); - - switch (opline->extended_value) { - case IS_NULL: - ZVAL_NULL(result); - break; - case _IS_BOOL: - ZVAL_BOOL(result, zend_is_true(expr)); - break; - case IS_LONG: - ZVAL_LONG(result, zval_get_long(expr)); - break; - case IS_DOUBLE: - ZVAL_DOUBLE(result, zval_get_double(expr)); - break; - case IS_STRING: - ZVAL_STR(result, zval_get_string(expr)); - break; - default: - if (IS_CONST & (IS_VAR|IS_CV)) { - ZVAL_DEREF(expr); - } - /* If value is already of correct type, return it directly */ - if (Z_TYPE_P(expr) == opline->extended_value) { - ZVAL_COPY_VALUE(result, expr); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (IS_CONST != IS_TMP_VAR) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - if (opline->extended_value == IS_ARRAY) { - if (IS_CONST == IS_CONST || Z_TYPE_P(expr) != IS_OBJECT || Z_OBJCE_P(expr) == zend_ce_closure) { - if (Z_TYPE_P(expr) != IS_NULL) { - ZVAL_ARR(result, zend_new_array(1)); - expr = zend_hash_index_add_new(Z_ARRVAL_P(result), 0, expr); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(expr))) Z_ADDREF_P(expr); - } else { - if (Z_OPT_REFCOUNTED_P(expr)) Z_ADDREF_P(expr); - } - } else { - ZVAL_EMPTY_ARRAY(result); - } - } else { - HashTable *obj_ht = zend_get_properties_for(expr, ZEND_PROP_PURPOSE_ARRAY_CAST); - if (obj_ht) { - /* fast copy */ - ZVAL_ARR(result, zend_proptable_to_symtable(obj_ht, - (Z_OBJCE_P(expr)->default_properties_count || - Z_OBJ_P(expr)->handlers != &std_object_handlers || - GC_IS_RECURSIVE(obj_ht)))); - zend_release_properties(obj_ht); - } else { - ZVAL_EMPTY_ARRAY(result); - } - } - } else { - ZVAL_OBJ(result, zend_objects_new(zend_standard_class_def)); - if (Z_TYPE_P(expr) == IS_ARRAY) { - ht = zend_symtable_to_proptable(Z_ARR_P(expr)); - if (GC_FLAGS(ht) & IS_ARRAY_IMMUTABLE) { - /* TODO: try not to duplicate immutable arrays as well ??? */ - ht = zend_array_dup(ht); - } - Z_OBJ_P(result)->properties = ht; - } else if (Z_TYPE_P(expr) != IS_NULL) { - Z_OBJ_P(result)->properties = ht = zend_new_array(1); - expr = zend_hash_add_new(ht, ZSTR_KNOWN(ZEND_STR_SCALAR), expr); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(expr))) Z_ADDREF_P(expr); - } else { - if (Z_OPT_REFCOUNTED_P(expr)) Z_ADDREF_P(expr); - } - } - } - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_op_array *new_op_array; - - zval *inc_filename; - - SAVE_OPLINE(); - inc_filename = RT_CONSTANT(opline, opline->op1); - new_op_array = zend_include_or_eval(inc_filename, opline->extended_value); - - if (UNEXPECTED(EG(exception) != NULL)) { - if (new_op_array != ZEND_FAKE_OP_ARRAY && new_op_array != NULL) { - destroy_op_array(new_op_array); - efree_size(new_op_array, sizeof(zend_op_array)); - } - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else if (new_op_array == ZEND_FAKE_OP_ARRAY) { - if (RETURN_VALUE_USED(opline)) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - } - } else if (EXPECTED(new_op_array != NULL)) { - zval *return_value = NULL; - zend_execute_data *call; - - if (RETURN_VALUE_USED(opline)) { - return_value = EX_VAR(opline->result.var); - } - - new_op_array->scope = EX(func)->op_array.scope; - - call = zend_vm_stack_push_call_frame( - (Z_TYPE_INFO(EX(This)) & ZEND_CALL_HAS_THIS) | ZEND_CALL_NESTED_CODE | ZEND_CALL_HAS_SYMBOL_TABLE, - (zend_function*)new_op_array, 0, - Z_PTR(EX(This))); - - if (EX_CALL_INFO() & ZEND_CALL_HAS_SYMBOL_TABLE) { - call->symbol_table = EX(symbol_table); - } else { - call->symbol_table = zend_rebuild_symbol_table(); - } - - call->prev_execute_data = execute_data; - i_init_code_execute_data(call, new_op_array, return_value); - if (EXPECTED(zend_execute_ex == execute_ex)) { - ZEND_VM_ENTER(); - } else { - ZEND_ADD_CALL_FLAG(call, ZEND_CALL_TOP); - zend_execute_ex(call); - zend_vm_stack_free_call_frame(call); - } - - destroy_op_array(new_op_array); - efree_size(new_op_array, sizeof(zend_op_array)); - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - } else if (RETURN_VALUE_USED(opline)) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_RESET_R_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *array_ptr, *result; - - SAVE_OPLINE(); - - array_ptr = RT_CONSTANT(opline, opline->op1); - if (EXPECTED(Z_TYPE_P(array_ptr) == IS_ARRAY)) { - result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, array_ptr); - if (IS_CONST != IS_TMP_VAR && Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(array_ptr); - } - Z_FE_POS_P(result) = 0; - - ZEND_VM_NEXT_OPCODE(); - } else if (IS_CONST != IS_CONST && EXPECTED(Z_TYPE_P(array_ptr) == IS_OBJECT)) { - if (!Z_OBJCE_P(array_ptr)->get_iterator) { - HashTable *properties; - if (Z_OBJ_P(array_ptr)->properties - && UNEXPECTED(GC_REFCOUNT(Z_OBJ_P(array_ptr)->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(Z_OBJ_P(array_ptr)->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(Z_OBJ_P(array_ptr)->properties); - } - Z_OBJ_P(array_ptr)->properties = zend_array_dup(Z_OBJ_P(array_ptr)->properties); - } - - properties = Z_OBJPROP_P(array_ptr); - result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, array_ptr); - if (IS_CONST != IS_TMP_VAR) { - Z_ADDREF_P(array_ptr); - } - - if (zend_hash_num_elements(properties) == 0) { - Z_FE_ITER_P(result) = (uint32_t) -1; - - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } - - Z_FE_ITER_P(result) = zend_hash_iterator_add(properties, 0); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - zend_bool is_empty = zend_fe_reset_iterator(array_ptr, 0 OPLINE_CC EXECUTE_DATA_CC); - - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } else if (is_empty) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - } else { - zend_error(E_WARNING, "Invalid argument supplied for foreach()"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t)-1; - - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_RESET_RW_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *array_ptr, *array_ref; - - SAVE_OPLINE(); - - if (IS_CONST == IS_VAR || IS_CONST == IS_CV) { - array_ref = array_ptr = NULL; - if (Z_ISREF_P(array_ref)) { - array_ptr = Z_REFVAL_P(array_ref); - } - } else { - array_ref = array_ptr = RT_CONSTANT(opline, opline->op1); - } - - if (EXPECTED(Z_TYPE_P(array_ptr) == IS_ARRAY)) { - if (IS_CONST == IS_VAR || IS_CONST == IS_CV) { - if (array_ptr == array_ref) { - ZVAL_NEW_REF(array_ref, array_ref); - array_ptr = Z_REFVAL_P(array_ref); - } - Z_ADDREF_P(array_ref); - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), array_ref); - } else { - array_ref = EX_VAR(opline->result.var); - ZVAL_NEW_REF(array_ref, array_ptr); - array_ptr = Z_REFVAL_P(array_ref); - } - if (IS_CONST == IS_CONST) { - ZVAL_ARR(array_ptr, zend_array_dup(Z_ARRVAL_P(array_ptr))); - } else { - SEPARATE_ARRAY(array_ptr); - } - Z_FE_ITER_P(EX_VAR(opline->result.var)) = zend_hash_iterator_add(Z_ARRVAL_P(array_ptr), 0); - - if (IS_CONST == IS_VAR) { - - } - ZEND_VM_NEXT_OPCODE(); - } else if (IS_CONST != IS_CONST && EXPECTED(Z_TYPE_P(array_ptr) == IS_OBJECT)) { - if (!Z_OBJCE_P(array_ptr)->get_iterator) { - HashTable *properties; - if (IS_CONST == IS_VAR || IS_CONST == IS_CV) { - if (array_ptr == array_ref) { - ZVAL_NEW_REF(array_ref, array_ref); - array_ptr = Z_REFVAL_P(array_ref); - } - Z_ADDREF_P(array_ref); - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), array_ref); - } else { - array_ptr = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(array_ptr, array_ref); - } - if (Z_OBJ_P(array_ptr)->properties - && UNEXPECTED(GC_REFCOUNT(Z_OBJ_P(array_ptr)->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(Z_OBJ_P(array_ptr)->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(Z_OBJ_P(array_ptr)->properties); - } - Z_OBJ_P(array_ptr)->properties = zend_array_dup(Z_OBJ_P(array_ptr)->properties); - } - - properties = Z_OBJPROP_P(array_ptr); - if (zend_hash_num_elements(properties) == 0) { - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t) -1; - - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } - - Z_FE_ITER_P(EX_VAR(opline->result.var)) = zend_hash_iterator_add(properties, 0); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - zend_bool is_empty = zend_fe_reset_iterator(array_ptr, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CONST == IS_VAR) { - - } else { - - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } else if (is_empty) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - } else { - zend_error(E_WARNING, "Invalid argument supplied for foreach()"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t)-1; - if (IS_CONST == IS_VAR) { - - } else { - - } - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMP_SET_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - zval *ref = NULL; - int ret; - - SAVE_OPLINE(); - value = RT_CONSTANT(opline, opline->op1); - - if ((IS_CONST == IS_VAR || IS_CONST == IS_CV) && Z_ISREF_P(value)) { - if (IS_CONST == IS_VAR) { - ref = value; - } - value = Z_REFVAL_P(value); - } - - ret = i_zend_is_true(value); - - if (UNEXPECTED(EG(exception))) { - - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - - if (ret) { - zval *result = EX_VAR(opline->result.var); - - ZVAL_COPY_VALUE(result, value); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (IS_CONST == IS_CV) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } else if (IS_CONST == IS_VAR && ref) { - zend_reference *r = Z_REF_P(ref); - - if (UNEXPECTED(GC_DELREF(r) == 0)) { - efree_size(r, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_COALESCE_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - zval *ref = NULL; - - SAVE_OPLINE(); - value = RT_CONSTANT(opline, opline->op1); - - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - if (IS_CONST & IS_VAR) { - ref = value; - } - value = Z_REFVAL_P(value); - } - - if (Z_TYPE_P(value) > IS_NULL) { - zval *result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, value); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (IS_CONST == IS_CV) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } else if ((IS_CONST & IS_VAR) && ref) { - zend_reference *r = Z_REF_P(ref); - - if (UNEXPECTED(GC_DELREF(r) == 0)) { - efree_size(r, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_QM_ASSIGN_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - zval *result = EX_VAR(opline->result.var); - - value = RT_CONSTANT(opline, opline->op1); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZVAL_NULL(result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - if (IS_CONST == IS_CV) { - ZVAL_COPY_DEREF(result, value); - } else if (IS_CONST == IS_VAR) { - if (UNEXPECTED(Z_ISREF_P(value))) { - ZVAL_COPY_VALUE(result, Z_REFVAL_P(value)); - if (UNEXPECTED(Z_DELREF_P(value) == 0)) { - efree_size(Z_REF_P(value), sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } else { - ZVAL_COPY_VALUE(result, value); - } - } else { - ZVAL_COPY_VALUE(result, value); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) { - Z_ADDREF_P(result); - } - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DECLARE_CLASS_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - do_bind_class(RT_CONSTANT(opline, opline->op1), (opline->op2_type == IS_CONST) ? Z_STR_P(RT_CONSTANT(opline, opline->op2)) : NULL); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_FROM_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - zval *val; - - - SAVE_OPLINE(); - val = RT_CONSTANT(opline, opline->op1); - - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - zend_throw_error(NULL, "Cannot use \"yield from\" in a force-closed generator"); - - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - if (Z_TYPE_P(val) == IS_ARRAY) { - ZVAL_COPY_VALUE(&generator->values, val); - if (IS_CONST != IS_TMP_VAR && Z_OPT_REFCOUNTED_P(val)) { - Z_ADDREF_P(val); - } - Z_FE_POS(generator->values) = 0; - - } else if (IS_CONST != IS_CONST && Z_TYPE_P(val) == IS_OBJECT && Z_OBJCE_P(val)->get_iterator) { - zend_class_entry *ce = Z_OBJCE_P(val); - if (ce == zend_ce_generator) { - zend_generator *new_gen = (zend_generator *) Z_OBJ_P(val); - - if (IS_CONST != IS_TMP_VAR) { - Z_ADDREF_P(val); - } - - if (Z_ISUNDEF(new_gen->retval)) { - if (UNEXPECTED(zend_generator_get_current(new_gen) == generator)) { - zend_throw_error(NULL, "Impossible to yield from the Generator being currently run"); - zval_ptr_dtor(val); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else { - zend_generator_yield_from(generator, new_gen); - } - } else if (UNEXPECTED(new_gen->execute_data == NULL)) { - zend_throw_error(NULL, "Generator passed to yield from was aborted without proper return and is unable to continue"); - zval_ptr_dtor(val); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else { - if (RETURN_VALUE_USED(opline)) { - ZVAL_COPY(EX_VAR(opline->result.var), &new_gen->retval); - } - ZEND_VM_NEXT_OPCODE(); - } - } else { - zend_object_iterator *iter = ce->get_iterator(ce, val, 0); - - if (UNEXPECTED(!iter) || UNEXPECTED(EG(exception))) { - if (!EG(exception)) { - zend_throw_error(NULL, "Object of type %s did not create an Iterator", ZSTR_VAL(ce->name)); - } - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - iter->index = 0; - if (iter->funcs->rewind) { - iter->funcs->rewind(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - OBJ_RELEASE(&iter->std); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - } - - ZVAL_OBJ(&generator->values, &iter->std); - } - } else { - zend_throw_error(NULL, "Can use \"yield from\" only with arrays and Traversables"); - - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - /* This is the default return value - * when the expression is a Generator, it will be overwritten in zend_generator_resume() */ - if (RETURN_VALUE_USED(opline)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - - /* This generator has no send target (though the generator we delegate to might have one) */ - generator->send_target = NULL; - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_STRLEN_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - - - value = RT_CONSTANT(opline, opline->op1); - if (EXPECTED(Z_TYPE_P(value) == IS_STRING)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_STRLEN_P(value)); - - ZEND_VM_NEXT_OPCODE(); - } else { - zend_bool strict; - - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_TYPE_P(value) == IS_REFERENCE) { - value = Z_REFVAL_P(value); - if (EXPECTED(Z_TYPE_P(value) == IS_STRING)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_STRLEN_P(value)); - - ZEND_VM_NEXT_OPCODE(); - } - } - - SAVE_OPLINE(); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - value = ZVAL_UNDEFINED_OP1(); - } - strict = EX_USES_STRICT_TYPES(); - do { - if (EXPECTED(!strict)) { - zend_string *str; - zval tmp; - - ZVAL_COPY(&tmp, value); - if (zend_parse_arg_str_weak(&tmp, &str)) { - ZVAL_LONG(EX_VAR(opline->result.var), ZSTR_LEN(str)); - zval_ptr_dtor(&tmp); - break; - } - zval_ptr_dtor(&tmp); - } - if (!EG(exception)) { - zend_internal_type_error(strict, "strlen() expects parameter 1 to be string, %s given", zend_get_type_by_const(Z_TYPE_P(value))); - } - ZVAL_NULL(EX_VAR(opline->result.var)); - } while (0); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_TYPE_CHECK_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - int result = 0; - - - value = RT_CONSTANT(opline, opline->op1); - if ((opline->extended_value >> (uint32_t)Z_TYPE_P(value)) & 1) { -type_check_resource: - if (EXPECTED(Z_TYPE_P(value) != IS_RESOURCE) - || EXPECTED(NULL != zend_rsrc_list_get_rsrc_type(Z_RES_P(value)))) { - result = 1; - } - } else if ((IS_CONST & (IS_CV|IS_VAR)) && Z_ISREF_P(value)) { - value = Z_REFVAL_P(value); - if ((opline->extended_value >> (uint32_t)Z_TYPE_P(value)) & 1) { - goto type_check_resource; - } - } else if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - result = ((1 << IS_NULL) & opline->extended_value) != 0; - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - SAVE_OPLINE(); - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DEFINED_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_constant *c; - - c = CACHED_PTR(opline->extended_value); - if (EXPECTED(c != NULL)) { - if (!IS_SPECIAL_CACHE_VAL(c)) { -defined_true: - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(zend_hash_num_elements(EG(zend_constants)) == DECODE_SPECIAL_CACHE_NUM(c))) { -defined_false: - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } - if (zend_quick_check_constant(RT_CONSTANT(opline, opline->op1) OPLINE_CC EXECUTE_DATA_CC) != SUCCESS) { - CACHE_PTR(opline->extended_value, ENCODE_SPECIAL_CACHE_NUM(zend_hash_num_elements(EG(zend_constants)))); - goto defined_false; - } else { - goto defined_true; - } -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_QM_ASSIGN_LONG_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - - value = RT_CONSTANT(opline, opline->op1); - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(value)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_QM_ASSIGN_DOUBLE_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - - value = RT_CONSTANT(opline, opline->op1); - ZVAL_DOUBLE(EX_VAR(opline->result.var), Z_DVAL_P(value)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_QM_ASSIGN_NOREF_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - - value = RT_CONSTANT(opline, opline->op1); - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), value); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAL_SIMPLE_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value, *arg; - - - value = RT_CONSTANT(opline, opline->op1); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, value); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAL_EX_SIMPLE_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value, *arg; - - uint32_t arg_num = opline->op2.num; - - if (QUICK_ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_VM_TAIL_CALL(zend_cannot_pass_by_ref_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - value = RT_CONSTANT(opline, opline->op1); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, value); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CONST == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - fast_long_add_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto add_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -add_double: - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 + d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto add_double; - } - } - - ZEND_VM_TAIL_CALL(zend_add_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CONST == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - fast_long_sub_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto sub_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -sub_double: - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 - d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto sub_double; - } - } - - ZEND_VM_TAIL_CALL(zend_sub_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CONST == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - zend_long overflow; - - result = EX_VAR(opline->result.var); - ZEND_SIGNED_MULTIPLY_LONG(Z_LVAL_P(op1), Z_LVAL_P(op2), Z_LVAL_P(result), Z_DVAL_P(result), overflow); - Z_TYPE_INFO_P(result) = overflow ? IS_DOUBLE : IS_LONG; - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto mul_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -mul_double: - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 * d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto mul_double; - } - } - - ZEND_VM_TAIL_CALL(zend_mul_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DIV_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - fast_div_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MOD_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CONST == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - if (UNEXPECTED(Z_LVAL_P(op2) == 0)) { - ZEND_VM_TAIL_CALL(zend_mod_by_zero_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else if (UNEXPECTED(Z_LVAL_P(op2) == -1)) { - /* Prevent overflow error/crash if op1==ZEND_LONG_MIN */ - ZVAL_LONG(result, 0); - } else { - ZVAL_LONG(result, Z_LVAL_P(op1) % Z_LVAL_P(op2)); - } - ZEND_VM_NEXT_OPCODE(); - } - } - - ZEND_VM_TAIL_CALL(zend_mod_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CONST == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG) - && EXPECTED((zend_ulong)Z_LVAL_P(op2) < SIZEOF_ZEND_LONG * 8)) { - /* Perform shift on unsigned numbers to get well-defined wrap behavior. */ - ZVAL_LONG(EX_VAR(opline->result.var), - (zend_long) ((zend_ulong) Z_LVAL_P(op1) << Z_LVAL_P(op2))); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_shift_left_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SR_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CONST == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG) - && EXPECTED((zend_ulong)Z_LVAL_P(op2) < SIZEOF_ZEND_LONG * 8)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) >> Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_shift_right_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POW_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - pow_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_IDENTICAL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - result = fast_is_identical_function(op1, op2); - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_IDENTICAL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - result = fast_is_not_identical_function(op1, op2); - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CONST == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CONST == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CONST == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) < Z_LVAL_P(op2))) { -is_smaller_true: - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_false: - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_double: - if (d1 < d2) { - goto is_smaller_true; - } else { - goto is_smaller_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CONST == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) <= Z_LVAL_P(op2))) { -is_smaller_or_equal_true: - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_or_equal_false: - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_or_equal_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_or_equal_double: - if (d1 <= d2) { - goto is_smaller_or_equal_true; - } else { - goto is_smaller_or_equal_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_or_equal_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_or_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SPACESHIP_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - compare_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BW_OR_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CONST == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) | Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_bw_or_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BW_AND_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CONST == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) & Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_bw_and_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BW_XOR_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CONST == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) ^ Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_bw_xor_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BOOL_XOR_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - boolean_xor_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container, *dim, *value; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - dim = RT_CONSTANT(opline, opline->op2); - if (IS_CONST != IS_CONST) { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_array: - value = zend_fetch_dimension_address_inner(Z_ARRVAL_P(container), dim, IS_CONST, BP_VAR_R EXECUTE_DATA_CC); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - } else if (EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_array; - } else { - goto fetch_dim_r_slow; - } - } else { -fetch_dim_r_slow: - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_fetch_dimension_address_read_R(container, dim, IS_CONST OPLINE_CC EXECUTE_DATA_CC); - } - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_IS_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - zend_fetch_dimension_address_read_IS(container, RT_CONSTANT(opline, opline->op2), IS_CONST OPLINE_CC EXECUTE_DATA_CC); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_CONST & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if (IS_CONST == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_R_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = RT_CONSTANT(opline, opline->op2); - - if (IS_CONST == IS_CONST || - (IS_CONST != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - zend_wrong_property_read(offset); - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_r_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CONST == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_REF /* FUNC_ARG fetch may contain it */); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_INFO_P(retval) != IS_UNDEF)) { - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { -fetch_obj_r_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - } - } else if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_R, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_r_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_r_finish: - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = RT_CONSTANT(opline, opline->op2); - - if (IS_CONST == IS_CONST || - (IS_CONST != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_is_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CONST == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_P(retval) != IS_UNDEF)) { - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { -fetch_obj_is_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - } - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_IS, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_is_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_is_finish: - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_CONST & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_LIST_R_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - zend_fetch_dimension_address_LIST_r(container, RT_CONSTANT(opline, opline->op2), IS_CONST OPLINE_CC EXECUTE_DATA_CC); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FAST_CONCAT_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - zend_string *op1_str, *op2_str, *str; - - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = RT_CONSTANT(opline, opline->op2); - if ((IS_CONST == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - (IS_CONST == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if (IS_CONST != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CONST == IS_CONST || IS_CONST == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if (IS_CONST != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CONST == IS_CONST || IS_CONST == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if (IS_CONST != IS_CONST && IS_CONST != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_CONST == IS_CONST) { - op1_str = Z_STR_P(op1); - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - op1_str = zend_string_copy(Z_STR_P(op1)); - } else { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - op1_str = zval_get_string_func(op1); - } - if (IS_CONST == IS_CONST) { - op2_str = Z_STR_P(op2); - } else if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - op2_str = zend_string_copy(Z_STR_P(op2)); - } else { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - op2_str = zval_get_string_func(op2); - } - do { - if (IS_CONST != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op2))) { - GC_ADDREF(op2_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - zend_string_release_ex(op1_str, 0); - break; - } - } - if (IS_CONST != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op1))) { - GC_ADDREF(op1_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - zend_string_release_ex(op2_str, 0); - break; - } - } - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CONST != IS_CONST) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CONST != IS_CONST) { - zend_string_release_ex(op2_str, 0); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_free_op free_op1; - zval *object; - zend_function *fbc; - zend_class_entry *called_scope; - zend_object *obj; - zend_execute_data *call; - uint32_t call_info; - - SAVE_OPLINE(); - - object = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - if (IS_CONST != IS_CONST) { - function_name = RT_CONSTANT(opline, opline->op2); - } - - if (IS_CONST != IS_CONST && - UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Method name must be a string"); - - - HANDLE_EXCEPTION(); - } while (0); - } - - if (IS_CONST != IS_UNUSED) { - do { - if (IS_CONST == IS_CONST || UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(object))) { - object = Z_REFVAL_P(object); - if (EXPECTED(Z_TYPE_P(object) == IS_OBJECT)) { - break; - } - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - object = ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if (IS_CONST != IS_CONST) { - - } - HANDLE_EXCEPTION(); - } - } - if (IS_CONST == IS_CONST) { - function_name = RT_CONSTANT(opline, opline->op2); - } - zend_invalid_method_call(object, function_name); - - - HANDLE_EXCEPTION(); - } - } while (0); - } - - obj = Z_OBJ_P(object); - called_scope = obj->ce; - - if (IS_CONST == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == called_scope)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else { - zend_object *orig_obj = obj; - - if (IS_CONST == IS_CONST) { - function_name = RT_CONSTANT(opline, opline->op2); - } - - /* First, locate the function. */ - fbc = obj->handlers->get_method(&obj, Z_STR_P(function_name), ((IS_CONST == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(obj->ce, Z_STR_P(function_name)); - } - - - HANDLE_EXCEPTION(); - } - if (IS_CONST == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE))) && - EXPECTED(obj == orig_obj)) { - CACHE_POLYMORPHIC_PTR(opline->result.num, called_scope, fbc); - } - if ((IS_CONST & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(obj != orig_obj)) { - /* Reset "object" to trigger reference counting */ - object = NULL; - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (IS_CONST != IS_CONST) { - - } - - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_STATIC) != 0)) { - - if ((IS_CONST & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - /* call static method */ - obj = (zend_object*)called_scope; - call_info = ZEND_CALL_NESTED_FUNCTION; - } else if (IS_CONST & (IS_VAR|IS_TMP_VAR|IS_CV)) { - if (IS_CONST == IS_CV) { - GC_ADDREF(obj); /* For $this pointer */ - } else if (free_op1 != object) { - GC_ADDREF(obj); /* For $this pointer */ - - } - /* CV may be changed indirectly (e.g. when it's a reference) */ - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS | ZEND_CALL_RELEASE_THIS; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, obj); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_class_entry *ce; - uint32_t call_info; - zend_function *fbc; - zend_execute_data *call; - - SAVE_OPLINE(); - - if (IS_CONST == IS_CONST) { - /* no function found. try a static method in class */ - ce = CACHED_PTR(opline->result.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - if (IS_CONST != IS_CONST) { - CACHE_PTR(opline->result.num, ce); - } - } - } else if (IS_CONST == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - if (IS_CONST == IS_CONST && - IS_CONST == IS_CONST && - EXPECTED((fbc = CACHED_PTR(opline->result.num + sizeof(void*))) != NULL)) { - /* nothing to do */ - } else if (IS_CONST != IS_CONST && - IS_CONST == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == ce)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else if (IS_CONST != IS_UNUSED) { - - - function_name = RT_CONSTANT(opline, opline->op2); - if (IS_CONST != IS_CONST) { - if (UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (IS_CONST & (IS_VAR|IS_CV) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - - HANDLE_EXCEPTION(); - } while (0); - } - } - - if (ce->get_static_method) { - fbc = ce->get_static_method(ce, Z_STR_P(function_name)); - } else { - fbc = zend_std_get_static_method(ce, Z_STR_P(function_name), ((IS_CONST == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - } - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(ce, Z_STR_P(function_name)); - } - - HANDLE_EXCEPTION(); - } - if (IS_CONST == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE)))) { - CACHE_POLYMORPHIC_PTR(opline->result.num, ce, fbc); - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - if (IS_CONST != IS_CONST) { - - } - } else { - if (UNEXPECTED(ce->constructor == NULL)) { - zend_throw_error(NULL, "Cannot call constructor"); - HANDLE_EXCEPTION(); - } - if (Z_TYPE(EX(This)) == IS_OBJECT && Z_OBJ(EX(This))->ce != ce->constructor->common.scope && (ce->constructor->common.fn_flags & ZEND_ACC_PRIVATE)) { - zend_throw_error(NULL, "Cannot call private %s::__construct()", ZSTR_VAL(ce->name)); - HANDLE_EXCEPTION(); - } - fbc = ce->constructor; - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (!(fbc->common.fn_flags & ZEND_ACC_STATIC)) { - if (Z_TYPE(EX(This)) == IS_OBJECT && instanceof_function(Z_OBJCE(EX(This)), ce)) { - ce = (zend_class_entry*)Z_OBJ(EX(This)); - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - } else { - zend_non_static_method_call(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - goto check_parent_and_self; - } - } else { -check_parent_and_self: - /* previous opcode is ZEND_FETCH_CLASS */ - if (IS_CONST == IS_UNUSED - && ((opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_PARENT || - (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF)) { - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ce = Z_OBJCE(EX(This)); - } else { - ce = Z_CE(EX(This)); - } - } - call_info = ZEND_CALL_NESTED_FUNCTION; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, ce); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_USER_CALL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *function_name; - zend_fcall_info_cache fcc; - char *error = NULL; - zend_function *func; - void *object_or_called_scope; - zend_execute_data *call; - uint32_t call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_DYNAMIC; - - SAVE_OPLINE(); - function_name = RT_CONSTANT(opline, opline->op2); - if (zend_is_callable_ex(function_name, NULL, 0, NULL, &fcc, &error)) { - func = fcc.function_handler; - if (error) { - efree(error); - /* This is the only soft error is_callable() can generate */ - zend_non_static_method_call(func); - if (UNEXPECTED(EG(exception) != NULL)) { - - HANDLE_EXCEPTION(); - } - } - object_or_called_scope = fcc.called_scope; - if (func->common.fn_flags & ZEND_ACC_CLOSURE) { - /* Delay closure destruction until its invocation */ - GC_ADDREF(ZEND_CLOSURE_OBJECT(func)); - call_info |= ZEND_CALL_CLOSURE; - if (func->common.fn_flags & ZEND_ACC_FAKE_CLOSURE) { - call_info |= ZEND_CALL_FAKE_CLOSURE; - } - if (fcc.object) { - object_or_called_scope = fcc.object; - call_info |= ZEND_CALL_HAS_THIS; - } - } else if (fcc.object) { - GC_ADDREF(fcc.object); /* For $this pointer */ - object_or_called_scope = fcc.object; - call_info |= ZEND_CALL_RELEASE_THIS | ZEND_CALL_HAS_THIS; - } - - if ((IS_CONST & (IS_TMP_VAR|IS_VAR)) && UNEXPECTED(EG(exception))) { - if (call_info & ZEND_CALL_CLOSURE) { - zend_object_release(ZEND_CLOSURE_OBJECT(func)); - } else if (call_info & ZEND_CALL_RELEASE_THIS) { - zend_object_release(fcc.object); - } - HANDLE_EXCEPTION(); - } - - if (EXPECTED(func->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&func->op_array))) { - init_func_run_time_cache(&func->op_array); - } - } else { - zend_internal_type_error(EX_USES_STRICT_TYPES(), "%s() expects parameter 1 to be a valid callback, %s", Z_STRVAL_P(RT_CONSTANT(opline, opline->op1)), error); - efree(error); - - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - func = (zend_function*)&zend_pass_function; - object_or_called_scope = NULL; - } - - call = zend_vm_stack_push_call_frame(call_info, - func, opline->extended_value, object_or_called_scope); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_CONSTANT_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zend_class_entry *ce, *scope; - zend_class_constant *c; - zval *value, *zv; - USE_OPLINE - - SAVE_OPLINE(); - - do { - if (IS_CONST == IS_CONST) { - if (EXPECTED(CACHED_PTR(opline->extended_value + sizeof(void*)))) { - value = CACHED_PTR(opline->extended_value + sizeof(void*)); - break; - } else if (EXPECTED(CACHED_PTR(opline->extended_value))) { - ce = CACHED_PTR(opline->extended_value); - } else { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - } else { - if (IS_CONST == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - if (EXPECTED(CACHED_PTR(opline->extended_value) == ce)) { - value = CACHED_PTR(opline->extended_value + sizeof(void*)); - break; - } - } - - zv = zend_hash_find_ex(&ce->constants_table, Z_STR_P(RT_CONSTANT(opline, opline->op2)), 1); - if (EXPECTED(zv != NULL)) { - c = Z_PTR_P(zv); - scope = EX(func)->op_array.scope; - if (!zend_verify_const_access(c, scope)) { - zend_throw_error(NULL, "Cannot access %s const %s::%s", zend_visibility_string(Z_ACCESS_FLAGS(c->value)), ZSTR_VAL(ce->name), Z_STRVAL_P(RT_CONSTANT(opline, opline->op2))); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - value = &c->value; - if (Z_TYPE_P(value) == IS_CONSTANT_AST) { - zval_update_constant_ex(value, c->ce); - if (UNEXPECTED(EG(exception) != NULL)) { - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - CACHE_POLYMORPHIC_PTR(opline->extended_value, ce, value); - } else { - zend_throw_error(NULL, "Undefined class constant '%s'", Z_STRVAL_P(RT_CONSTANT(opline, opline->op2))); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } while (0); - - ZVAL_COPY_OR_DUP(EX_VAR(opline->result.var), value); - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_CONST == IS_VAR || IS_CONST == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = NULL; - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - - } else { - expr_ptr = RT_CONSTANT(opline, opline->op1); - if (IS_CONST == IS_TMP_VAR) { - /* pass */ - } else if (IS_CONST == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_CONST == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_CONST == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if (IS_CONST != IS_UNUSED) { - - zval *offset = RT_CONSTANT(opline, opline->op2); - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CONST != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if (IS_CONST == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_CONST != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - int result; - zend_ulong hval; - zval *offset; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - offset = RT_CONSTANT(opline, opline->op2); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - zval *value; - zend_string *str; - -isset_dim_obj_array: - ht = Z_ARRVAL_P(container); -isset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CONST != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index_prop; - } - } - value = zend_hash_find_ex_ind(ht, str, IS_CONST == IS_CONST); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_prop: - value = zend_hash_index_find(ht, hval); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(offset))) { - offset = Z_REFVAL_P(offset); - goto isset_again; - } else { - value = zend_find_array_dim_slow(ht, offset EXECUTE_DATA_CC); - if (UNEXPECTED(EG(exception))) { - result = 0; - goto isset_dim_obj_exit; - } - } - - if (!(opline->extended_value & ZEND_ISEMPTY)) { - /* > IS_NULL means not IS_UNDEF and not IS_NULL */ - result = value != NULL && Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL); - - if (IS_CONST & (IS_CONST|IS_CV)) { - /* avoid exception check */ - - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } - } else { - result = (value == NULL || !i_zend_is_true(value)); - } - goto isset_dim_obj_exit; - } else if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto isset_dim_obj_array; - } - } - - if (IS_CONST == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - result = zend_isset_dim_slow(container, offset EXECUTE_DATA_CC); - } else { - result = zend_isempty_dim_slow(container, offset EXECUTE_DATA_CC); - } - -isset_dim_obj_exit: - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - int result; - zval *offset; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = RT_CONSTANT(opline, opline->op2); - - if (IS_CONST == IS_CONST || - (IS_CONST != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } else { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } - - result = - (opline->extended_value & ZEND_ISEMPTY) ^ - Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY), ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_ISEMPTY) : NULL)); - -isset_object_finish: - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - - zval *key, *subject; - HashTable *ht; - uint32_t result; - - SAVE_OPLINE(); - - key = RT_CONSTANT(opline, opline->op1); - subject = RT_CONSTANT(opline, opline->op2); - - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { -array_key_exists_array: - ht = Z_ARRVAL_P(subject); - result = zend_array_key_exists_fast(ht, key OPLINE_CC EXECUTE_DATA_CC); - } else { - if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(subject))) { - subject = Z_REFVAL_P(subject); - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { - goto array_key_exists_array; - } - } - result = zend_array_key_exists_slow(subject, key OPLINE_CC EXECUTE_DATA_CC); - } - - - ZEND_VM_SMART_BRANCH(result == IS_TRUE, 1); - Z_TYPE_INFO_P(EX_VAR(opline->result.var)) = result; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|UNUSED|CV, ANY) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DECLARE_CLASS_DELAYED_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *lcname, *zv; - zend_class_entry *ce; - - ce = CACHED_PTR(opline->extended_value); - if (ce == NULL) { - lcname = RT_CONSTANT(opline, opline->op1); - zv = zend_hash_find_ex(EG(class_table), Z_STR_P(lcname + 1), 1); - if (zv) { - SAVE_OPLINE(); - ce = Z_CE_P(zv); - zv = zend_hash_set_bucket_key(EG(class_table), (Bucket*)zv, Z_STR_P(lcname)); - if (UNEXPECTED(!zv)) { - zend_error_noreturn(E_COMPILE_ERROR, "Cannot declare %s %s, because the name is already in use", zend_get_object_type(ce), ZSTR_VAL(ce->name)); - } else { - if (zend_do_link_class(ce, Z_STR_P(RT_CONSTANT(opline, opline->op2))) == FAILURE) { - /* Reload bucket pointer, the hash table may have been reallocated */ - zv = zend_hash_find(EG(class_table), Z_STR_P(lcname)); - zend_hash_set_bucket_key(EG(class_table), (Bucket *) zv, Z_STR_P(lcname + 1)); - HANDLE_EXCEPTION(); - } - } - } - CACHE_PTR(opline->extended_value, ce); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DECLARE_CONST_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *name; - zval *val; - zend_constant c; - - SAVE_OPLINE(); - name = RT_CONSTANT(opline, opline->op1); - val = RT_CONSTANT(opline, opline->op2); - - ZVAL_COPY(&c.value, val); - if (Z_OPT_CONSTANT(c.value)) { - if (UNEXPECTED(zval_update_constant_ex(&c.value, EX(func)->op_array.scope) != SUCCESS)) { - zval_ptr_dtor_nogc(&c.value); - - - HANDLE_EXCEPTION(); - } - } - /* non persistent, case sensitive */ - ZEND_CONSTANT_SET_FLAGS(&c, CONST_CS, PHP_USER_CONSTANT); - c.name = zend_string_copy(Z_STR_P(name)); - - if (zend_register_constant(&c) == FAILURE) { - } - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_CONST != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_CONST & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = RT_CONSTANT(opline, opline->op1); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_CONST == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = RT_CONSTANT(opline, opline->op1); - - /* Consts, temporary variables and references need copying */ - if (IS_CONST == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_CONST == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CONST == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_CONST != IS_UNUSED) { - - zval *key = RT_CONSTANT(opline, opline->op2); - - /* Consts, temporary variables and references need copying */ - if (IS_CONST == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_CONST == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_CONST == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SWITCH_LONG_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op, *jump_zv; - HashTable *jumptable; - - op = RT_CONSTANT(opline, opline->op1); - jumptable = Z_ARRVAL_P(RT_CONSTANT(opline, opline->op2)); - - if (Z_TYPE_P(op) != IS_LONG) { - ZVAL_DEREF(op); - if (Z_TYPE_P(op) != IS_LONG) { - /* Wrong type, fall back to ZEND_CASE chain */ - ZEND_VM_NEXT_OPCODE(); - } - } - - jump_zv = zend_hash_index_find(jumptable, Z_LVAL_P(op)); - if (jump_zv != NULL) { - ZEND_VM_SET_RELATIVE_OPCODE(opline, Z_LVAL_P(jump_zv)); - ZEND_VM_CONTINUE(); - } else { - /* default */ - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SWITCH_STRING_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op, *jump_zv; - HashTable *jumptable; - - op = RT_CONSTANT(opline, opline->op1); - jumptable = Z_ARRVAL_P(RT_CONSTANT(opline, opline->op2)); - - if (Z_TYPE_P(op) != IS_STRING) { - if (IS_CONST == IS_CONST) { - /* Wrong type, fall back to ZEND_CASE chain */ - ZEND_VM_NEXT_OPCODE(); - } else { - ZVAL_DEREF(op); - if (Z_TYPE_P(op) != IS_STRING) { - /* Wrong type, fall back to ZEND_CASE chain */ - ZEND_VM_NEXT_OPCODE(); - } - } - } - - jump_zv = zend_hash_find_ex(jumptable, Z_STR_P(op), IS_CONST == IS_CONST); - if (jump_zv != NULL) { - ZEND_VM_SET_RELATIVE_OPCODE(opline, Z_LVAL_P(jump_zv)); - ZEND_VM_CONTINUE(); - } else { - /* default */ - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IN_ARRAY_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1; - HashTable *ht = Z_ARRVAL_P(RT_CONSTANT(opline, opline->op2)); - zval *result; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - result = zend_hash_find_ex(ht, Z_STR_P(op1), IS_CONST == IS_CONST); - } else if (opline->extended_value) { - if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - result = zend_hash_index_find(ht, Z_LVAL_P(op1)); - } else { - result = NULL; - } - } else if (Z_TYPE_P(op1) <= IS_FALSE) { - result = zend_hash_find_ex(ht, ZSTR_EMPTY_ALLOC(), 1); - } else { - zend_string *key; - zval key_tmp, result_tmp, *val; - - result = NULL; - ZEND_HASH_FOREACH_STR_KEY_VAL(ht, key, val) { - ZVAL_STR(&key_tmp, key); - compare_function(&result_tmp, op1, &key_tmp); - if (Z_LVAL(result_tmp) == 0) { - result = val; - break; - } - } ZEND_HASH_FOREACH_END(); - } - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result != NULL); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CONST == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - fast_long_add_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto add_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -add_double: - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 + d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto add_double; - } - } - - ZEND_VM_TAIL_CALL(zend_add_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CONST == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - fast_long_sub_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto sub_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -sub_double: - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 - d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto sub_double; - } - } - - ZEND_VM_TAIL_CALL(zend_sub_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MOD_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CONST == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - if (UNEXPECTED(Z_LVAL_P(op2) == 0)) { - ZEND_VM_TAIL_CALL(zend_mod_by_zero_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else if (UNEXPECTED(Z_LVAL_P(op2) == -1)) { - /* Prevent overflow error/crash if op1==ZEND_LONG_MIN */ - ZVAL_LONG(result, 0); - } else { - ZVAL_LONG(result, Z_LVAL_P(op1) % Z_LVAL_P(op2)); - } - ZEND_VM_NEXT_OPCODE(); - } - } - - ZEND_VM_TAIL_CALL(zend_mod_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SL_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CONST == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG) - && EXPECTED((zend_ulong)Z_LVAL_P(op2) < SIZEOF_ZEND_LONG * 8)) { - /* Perform shift on unsigned numbers to get well-defined wrap behavior. */ - ZVAL_LONG(EX_VAR(opline->result.var), - (zend_long) ((zend_ulong) Z_LVAL_P(op1) << Z_LVAL_P(op2))); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_shift_left_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SR_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CONST == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG) - && EXPECTED((zend_ulong)Z_LVAL_P(op2) < SIZEOF_ZEND_LONG * 8)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) >> Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_shift_right_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CONST == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) < Z_LVAL_P(op2))) { -is_smaller_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_double: - if (d1 < d2) { - goto is_smaller_true; - } else { - goto is_smaller_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CONST == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) < Z_LVAL_P(op2))) { -is_smaller_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_double: - if (d1 < d2) { - goto is_smaller_true; - } else { - goto is_smaller_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CONST == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) < Z_LVAL_P(op2))) { -is_smaller_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_double: - if (d1 < d2) { - goto is_smaller_true; - } else { - goto is_smaller_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CONST == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) <= Z_LVAL_P(op2))) { -is_smaller_or_equal_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_or_equal_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_or_equal_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_or_equal_double: - if (d1 <= d2) { - goto is_smaller_or_equal_true; - } else { - goto is_smaller_or_equal_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_or_equal_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_or_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CONST == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) <= Z_LVAL_P(op2))) { -is_smaller_or_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_or_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_or_equal_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_or_equal_double: - if (d1 <= d2) { - goto is_smaller_or_equal_true; - } else { - goto is_smaller_or_equal_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_or_equal_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_or_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CONST == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) <= Z_LVAL_P(op2))) { -is_smaller_or_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_or_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_or_equal_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_or_equal_double: - if (d1 <= d2) { - goto is_smaller_or_equal_true; - } else { - goto is_smaller_or_equal_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_or_equal_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_or_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = EX_VAR(opline->result.var); - ZVAL_LONG(result, Z_LVAL_P(op1) - Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_LONG_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = EX_VAR(opline->result.var); - fast_long_sub_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, Z_DVAL_P(op1) - Z_DVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) < Z_LVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) < Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) < Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) < Z_DVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) < Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) < Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_INDEX_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container, *dim, *value; - zend_long offset; - HashTable *ht; - - container = RT_CONSTANT(opline, opline->op1); - dim = EX_VAR(opline->op2.var); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_index_array: - if (EXPECTED(Z_TYPE_P(dim) == IS_LONG)) { - offset = Z_LVAL_P(dim); - } else { - offset = zval_get_long(dim); - } - ht = Z_ARRVAL_P(container); - ZEND_HASH_INDEX_FIND(ht, offset, value, fetch_dim_r_index_undef); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - SAVE_OPLINE(); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } else if (IS_CONST != IS_CONST && EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_index_array; - } else { - goto fetch_dim_r_index_slow; - } - } else { -fetch_dim_r_index_slow: - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - -fetch_dim_r_index_undef: - ZVAL_NULL(EX_VAR(opline->result.var)); - SAVE_OPLINE(); - zend_undefined_offset(offset); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DIV_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - fast_div_function(EX_VAR(opline->result.var), op1, op2); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POW_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - pow_function(EX_VAR(opline->result.var), op1, op2); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CONCAT_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if ((IS_CONST == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - ((IS_TMP_VAR|IS_VAR) == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if (IS_CONST != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || (IS_TMP_VAR|IS_VAR) == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CONST == IS_CONST || IS_CONST == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if (IS_CONST != IS_CONST && IS_CONST != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } else { - SAVE_OPLINE(); - - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = ZVAL_UNDEFINED_OP1(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - op2 = ZVAL_UNDEFINED_OP2(); - } - concat_function(EX_VAR(opline->result.var), op1, op2); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SPACESHIP_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - compare_function(EX_VAR(opline->result.var), op1, op2); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container, *dim, *value; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (IS_CONST != IS_CONST) { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_array: - value = zend_fetch_dimension_address_inner(Z_ARRVAL_P(container), dim, (IS_TMP_VAR|IS_VAR), BP_VAR_R EXECUTE_DATA_CC); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - } else if (EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_array; - } else { - goto fetch_dim_r_slow; - } - } else { -fetch_dim_r_slow: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_fetch_dimension_address_read_R(container, dim, (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - } - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - zend_fetch_dimension_address_read_IS(container, _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC), (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_CONST & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - zend_free_op free_op2; - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (IS_CONST == IS_CONST || - (IS_CONST != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - zend_wrong_property_read(offset); - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_r_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_REF /* FUNC_ARG fetch may contain it */); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_INFO_P(retval) != IS_UNDEF)) { - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { -fetch_obj_r_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - } - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_R, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_r_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_r_finish: - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - zend_free_op free_op2; - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (IS_CONST == IS_CONST || - (IS_CONST != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_is_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_P(retval) != IS_UNDEF)) { - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { -fetch_obj_is_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - } - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_IS, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_is_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_is_finish: - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_CONST & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_LIST_R_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - zend_fetch_dimension_address_LIST_r(container, _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC), (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - zend_string *op1_str, *op2_str, *str; - - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_CONST == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - ((IS_TMP_VAR|IS_VAR) == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if (IS_CONST != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || (IS_TMP_VAR|IS_VAR) == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CONST == IS_CONST || IS_CONST == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if (IS_CONST != IS_CONST && IS_CONST != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - if (UNEXPECTED(len > ZSTR_MAX_LEN - ZSTR_LEN(op2_str))) { - zend_error_noreturn(E_ERROR, "Integer overflow in memory allocation"); - } - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_CONST == IS_CONST) { - op1_str = Z_STR_P(op1); - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - op1_str = zend_string_copy(Z_STR_P(op1)); - } else { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - op1_str = zval_get_string_func(op1); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - op2_str = Z_STR_P(op2); - } else if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - op2_str = zend_string_copy(Z_STR_P(op2)); - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - op2_str = zval_get_string_func(op2); - } - do { - if (IS_CONST != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op2))) { - GC_ADDREF(op2_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - zend_string_release_ex(op1_str, 0); - break; - } - } - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op1))) { - GC_ADDREF(op1_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - zend_string_release_ex(op2_str, 0); - break; - } - } - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CONST != IS_CONST) { - zend_string_release_ex(op1_str, 0); - } - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zend_string_release_ex(op2_str, 0); - } - } while (0); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_free_op free_op1, free_op2; - zval *object; - zend_function *fbc; - zend_class_entry *called_scope; - zend_object *obj; - zend_execute_data *call; - uint32_t call_info; - - SAVE_OPLINE(); - - object = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - } - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST && - UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Method name must be a string"); - zval_ptr_dtor_nogc(free_op2); - - HANDLE_EXCEPTION(); - } while (0); - } - - if (IS_CONST != IS_UNUSED) { - do { - if (IS_CONST == IS_CONST || UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(object))) { - object = Z_REFVAL_P(object); - if (EXPECTED(Z_TYPE_P(object) == IS_OBJECT)) { - break; - } - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - object = ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zval_ptr_dtor_nogc(free_op2); - } - HANDLE_EXCEPTION(); - } - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - } - zend_invalid_method_call(object, function_name); - zval_ptr_dtor_nogc(free_op2); - - HANDLE_EXCEPTION(); - } - } while (0); - } - - obj = Z_OBJ_P(object); - called_scope = obj->ce; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == called_scope)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else { - zend_object *orig_obj = obj; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - } - - /* First, locate the function. */ - fbc = obj->handlers->get_method(&obj, Z_STR_P(function_name), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(obj->ce, Z_STR_P(function_name)); - } - zval_ptr_dtor_nogc(free_op2); - - HANDLE_EXCEPTION(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE))) && - EXPECTED(obj == orig_obj)) { - CACHE_POLYMORPHIC_PTR(opline->result.num, called_scope, fbc); - } - if ((IS_CONST & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(obj != orig_obj)) { - /* Reset "object" to trigger reference counting */ - object = NULL; - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zval_ptr_dtor_nogc(free_op2); - } - - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_STATIC) != 0)) { - - if ((IS_CONST & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - /* call static method */ - obj = (zend_object*)called_scope; - call_info = ZEND_CALL_NESTED_FUNCTION; - } else if (IS_CONST & (IS_VAR|IS_TMP_VAR|IS_CV)) { - if (IS_CONST == IS_CV) { - GC_ADDREF(obj); /* For $this pointer */ - } else if (free_op1 != object) { - GC_ADDREF(obj); /* For $this pointer */ - - } - /* CV may be changed indirectly (e.g. when it's a reference) */ - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS | ZEND_CALL_RELEASE_THIS; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, obj); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_class_entry *ce; - uint32_t call_info; - zend_function *fbc; - zend_execute_data *call; - - SAVE_OPLINE(); - - if (IS_CONST == IS_CONST) { - /* no function found. try a static method in class */ - ce = CACHED_PTR(opline->result.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - zval_ptr_dtor_nogc(EX_VAR(opline->op2.var)); - HANDLE_EXCEPTION(); - } - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - CACHE_PTR(opline->result.num, ce); - } - } - } else if (IS_CONST == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - zval_ptr_dtor_nogc(EX_VAR(opline->op2.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - if (IS_CONST == IS_CONST && - (IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED((fbc = CACHED_PTR(opline->result.num + sizeof(void*))) != NULL)) { - /* nothing to do */ - } else if (IS_CONST != IS_CONST && - (IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == ce)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zend_free_op free_op2; - - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if ((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - zval_ptr_dtor_nogc(free_op2); - HANDLE_EXCEPTION(); - } while (0); - } - } - - if (ce->get_static_method) { - fbc = ce->get_static_method(ce, Z_STR_P(function_name)); - } else { - fbc = zend_std_get_static_method(ce, Z_STR_P(function_name), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - } - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(ce, Z_STR_P(function_name)); - } - zval_ptr_dtor_nogc(free_op2); - HANDLE_EXCEPTION(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE)))) { - CACHE_POLYMORPHIC_PTR(opline->result.num, ce, fbc); - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zval_ptr_dtor_nogc(free_op2); - } - } else { - if (UNEXPECTED(ce->constructor == NULL)) { - zend_throw_error(NULL, "Cannot call constructor"); - HANDLE_EXCEPTION(); - } - if (Z_TYPE(EX(This)) == IS_OBJECT && Z_OBJ(EX(This))->ce != ce->constructor->common.scope && (ce->constructor->common.fn_flags & ZEND_ACC_PRIVATE)) { - zend_throw_error(NULL, "Cannot call private %s::__construct()", ZSTR_VAL(ce->name)); - HANDLE_EXCEPTION(); - } - fbc = ce->constructor; - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (!(fbc->common.fn_flags & ZEND_ACC_STATIC)) { - if (Z_TYPE(EX(This)) == IS_OBJECT && instanceof_function(Z_OBJCE(EX(This)), ce)) { - ce = (zend_class_entry*)Z_OBJ(EX(This)); - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - } else { - zend_non_static_method_call(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - goto check_parent_and_self; - } - } else { -check_parent_and_self: - /* previous opcode is ZEND_FETCH_CLASS */ - if (IS_CONST == IS_UNUSED - && ((opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_PARENT || - (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF)) { - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ce = Z_OBJCE(EX(This)); - } else { - ce = Z_CE(EX(This)); - } - } - call_info = ZEND_CALL_NESTED_FUNCTION; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, ce); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *function_name; - zend_fcall_info_cache fcc; - char *error = NULL; - zend_function *func; - void *object_or_called_scope; - zend_execute_data *call; - uint32_t call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_DYNAMIC; - - SAVE_OPLINE(); - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (zend_is_callable_ex(function_name, NULL, 0, NULL, &fcc, &error)) { - func = fcc.function_handler; - if (error) { - efree(error); - /* This is the only soft error is_callable() can generate */ - zend_non_static_method_call(func); - if (UNEXPECTED(EG(exception) != NULL)) { - zval_ptr_dtor_nogc(free_op2); - HANDLE_EXCEPTION(); - } - } - object_or_called_scope = fcc.called_scope; - if (func->common.fn_flags & ZEND_ACC_CLOSURE) { - /* Delay closure destruction until its invocation */ - GC_ADDREF(ZEND_CLOSURE_OBJECT(func)); - call_info |= ZEND_CALL_CLOSURE; - if (func->common.fn_flags & ZEND_ACC_FAKE_CLOSURE) { - call_info |= ZEND_CALL_FAKE_CLOSURE; - } - if (fcc.object) { - object_or_called_scope = fcc.object; - call_info |= ZEND_CALL_HAS_THIS; - } - } else if (fcc.object) { - GC_ADDREF(fcc.object); /* For $this pointer */ - object_or_called_scope = fcc.object; - call_info |= ZEND_CALL_RELEASE_THIS | ZEND_CALL_HAS_THIS; - } - - zval_ptr_dtor_nogc(free_op2); - if (((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) && UNEXPECTED(EG(exception))) { - if (call_info & ZEND_CALL_CLOSURE) { - zend_object_release(ZEND_CLOSURE_OBJECT(func)); - } else if (call_info & ZEND_CALL_RELEASE_THIS) { - zend_object_release(fcc.object); - } - HANDLE_EXCEPTION(); - } - - if (EXPECTED(func->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&func->op_array))) { - init_func_run_time_cache(&func->op_array); - } - } else { - zend_internal_type_error(EX_USES_STRICT_TYPES(), "%s() expects parameter 1 to be a valid callback, %s", Z_STRVAL_P(RT_CONSTANT(opline, opline->op1)), error); - efree(error); - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - func = (zend_function*)&zend_pass_function; - object_or_called_scope = NULL; - } - - call = zend_vm_stack_push_call_frame(call_info, - func, opline->extended_value, object_or_called_scope); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_CONST == IS_VAR || IS_CONST == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = NULL; - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - - } else { - expr_ptr = RT_CONSTANT(opline, opline->op1); - if (IS_CONST == IS_TMP_VAR) { - /* pass */ - } else if (IS_CONST == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_CONST == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_CONST == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zend_free_op free_op2; - zval *offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - zval_ptr_dtor_nogc(free_op2); - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_CONST != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container; - int result; - zend_ulong hval; - zval *offset; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - zval *value; - zend_string *str; - -isset_dim_obj_array: - ht = Z_ARRVAL_P(container); -isset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index_prop; - } - } - value = zend_hash_find_ex_ind(ht, str, (IS_TMP_VAR|IS_VAR) == IS_CONST); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_prop: - value = zend_hash_index_find(ht, hval); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(offset))) { - offset = Z_REFVAL_P(offset); - goto isset_again; - } else { - value = zend_find_array_dim_slow(ht, offset EXECUTE_DATA_CC); - if (UNEXPECTED(EG(exception))) { - result = 0; - goto isset_dim_obj_exit; - } - } - - if (!(opline->extended_value & ZEND_ISEMPTY)) { - /* > IS_NULL means not IS_UNDEF and not IS_NULL */ - result = value != NULL && Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL); - - if (IS_CONST & (IS_CONST|IS_CV)) { - /* avoid exception check */ - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } - } else { - result = (value == NULL || !i_zend_is_true(value)); - } - goto isset_dim_obj_exit; - } else if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto isset_dim_obj_array; - } - } - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - result = zend_isset_dim_slow(container, offset EXECUTE_DATA_CC); - } else { - result = zend_isempty_dim_slow(container, offset EXECUTE_DATA_CC); - } - -isset_dim_obj_exit: - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container; - int result; - zval *offset; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (IS_CONST == IS_CONST || - (IS_CONST != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } else { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } - - result = - (opline->extended_value & ZEND_ISEMPTY) ^ - Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_ISEMPTY) : NULL)); - -isset_object_finish: - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_free_op free_op2; - zval *key, *subject; - HashTable *ht; - uint32_t result; - - SAVE_OPLINE(); - - key = RT_CONSTANT(opline, opline->op1); - subject = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { -array_key_exists_array: - ht = Z_ARRVAL_P(subject); - result = zend_array_key_exists_fast(ht, key OPLINE_CC EXECUTE_DATA_CC); - } else { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(subject))) { - subject = Z_REFVAL_P(subject); - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { - goto array_key_exists_array; - } - } - result = zend_array_key_exists_slow(subject, key OPLINE_CC EXECUTE_DATA_CC); - } - - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_SMART_BRANCH(result == IS_TRUE, 1); - Z_TYPE_INFO_P(EX_VAR(opline->result.var)) = result; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|UNUSED|CV, ANY) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_CONST != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_CONST & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = RT_CONSTANT(opline, opline->op1); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_CONST == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = RT_CONSTANT(opline, opline->op1); - - /* Consts, temporary variables and references need copying */ - if (IS_CONST == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_CONST == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CONST == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_TMP_VAR != IS_UNUSED) { - zend_free_op free_op2; - zval *key = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_TMP_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_TMP_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_TMP_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_TMP_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_CONST != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_CONST & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = RT_CONSTANT(opline, opline->op1); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_CONST == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = RT_CONSTANT(opline, opline->op1); - - /* Consts, temporary variables and references need copying */ - if (IS_CONST == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_CONST == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CONST == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_VAR != IS_UNUSED) { - zend_free_op free_op2; - zval *key = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - zval_ptr_dtor_nogc(free_op2); - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_var_address_helper_SPEC_CONST_UNUSED(int type ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - zval *varname; - zval *retval; - zend_string *name, *tmp_name; - HashTable *target_symbol_table; - - SAVE_OPLINE(); - varname = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_CONST) { - name = Z_STR_P(varname); - } else if (EXPECTED(Z_TYPE_P(varname) == IS_STRING)) { - name = Z_STR_P(varname); - tmp_name = NULL; - } else { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(varname) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - name = zval_try_get_tmp_string(varname, &tmp_name); - if (UNEXPECTED(!name)) { - - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - - target_symbol_table = zend_get_target_symbol_table(opline->extended_value EXECUTE_DATA_CC); - retval = zend_hash_find_ex(target_symbol_table, name, IS_CONST == IS_CONST); - if (retval == NULL) { - if (UNEXPECTED(zend_string_equals(name, ZSTR_KNOWN(ZEND_STR_THIS)))) { -fetch_this: - zend_fetch_this_var(type OPLINE_CC EXECUTE_DATA_CC); - if (IS_CONST != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - if (type == BP_VAR_W) { - retval = zend_hash_add_new(target_symbol_table, name, &EG(uninitialized_zval)); - } else if (type == BP_VAR_IS) { - retval = &EG(uninitialized_zval); - } else { - zend_error(E_NOTICE,"Undefined variable: %s", ZSTR_VAL(name)); - if (type == BP_VAR_RW) { - retval = zend_hash_update(target_symbol_table, name, &EG(uninitialized_zval)); - } else { - retval = &EG(uninitialized_zval); - } - } - /* GLOBAL or $$name variable may be an INDIRECT pointer to CV */ - } else if (Z_TYPE_P(retval) == IS_INDIRECT) { - retval = Z_INDIRECT_P(retval); - if (Z_TYPE_P(retval) == IS_UNDEF) { - if (UNEXPECTED(zend_string_equals(name, ZSTR_KNOWN(ZEND_STR_THIS)))) { - goto fetch_this; - } - if (type == BP_VAR_W) { - ZVAL_NULL(retval); - } else if (type == BP_VAR_IS) { - retval = &EG(uninitialized_zval); - } else { - zend_error(E_NOTICE,"Undefined variable: %s", ZSTR_VAL(name)); - if (type == BP_VAR_RW) { - ZVAL_NULL(retval); - } else { - retval = &EG(uninitialized_zval); - } - } - } - } - - if (!(opline->extended_value & ZEND_FETCH_GLOBAL_LOCK)) { - - } - - if (IS_CONST != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - - ZEND_ASSERT(retval != NULL); - if (type == BP_VAR_R || type == BP_VAR_IS) { - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else { - ZVAL_INDIRECT(EX_VAR(opline->result.var), retval); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_R_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_CONST_UNUSED(BP_VAR_R ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_W_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_CONST_UNUSED(BP_VAR_W ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_RW_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_CONST_UNUSED(BP_VAR_RW ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_FUNC_ARG_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - int fetch_type = - (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) ? - BP_VAR_W : BP_VAR_R; - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_CONST_UNUSED(fetch_type ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_UNSET_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_CONST_UNUSED(BP_VAR_UNSET ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_IS_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_CONST_UNUSED(BP_VAR_IS ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_CONST & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if (IS_UNUSED == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_class_entry *ce; - uint32_t call_info; - zend_function *fbc; - zend_execute_data *call; - - SAVE_OPLINE(); - - if (IS_CONST == IS_CONST) { - /* no function found. try a static method in class */ - ce = CACHED_PTR(opline->result.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - if (IS_UNUSED != IS_CONST) { - CACHE_PTR(opline->result.num, ce); - } - } - } else if (IS_CONST == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - if (IS_CONST == IS_CONST && - IS_UNUSED == IS_CONST && - EXPECTED((fbc = CACHED_PTR(opline->result.num + sizeof(void*))) != NULL)) { - /* nothing to do */ - } else if (IS_CONST != IS_CONST && - IS_UNUSED == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == ce)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else if (IS_UNUSED != IS_UNUSED) { - - - function_name = NULL; - if (IS_UNUSED != IS_CONST) { - if (UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (IS_UNUSED & (IS_VAR|IS_CV) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_UNUSED == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - - HANDLE_EXCEPTION(); - } while (0); - } - } - - if (ce->get_static_method) { - fbc = ce->get_static_method(ce, Z_STR_P(function_name)); - } else { - fbc = zend_std_get_static_method(ce, Z_STR_P(function_name), ((IS_UNUSED == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - } - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(ce, Z_STR_P(function_name)); - } - - HANDLE_EXCEPTION(); - } - if (IS_UNUSED == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE)))) { - CACHE_POLYMORPHIC_PTR(opline->result.num, ce, fbc); - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - if (IS_UNUSED != IS_CONST) { - - } - } else { - if (UNEXPECTED(ce->constructor == NULL)) { - zend_throw_error(NULL, "Cannot call constructor"); - HANDLE_EXCEPTION(); - } - if (Z_TYPE(EX(This)) == IS_OBJECT && Z_OBJ(EX(This))->ce != ce->constructor->common.scope && (ce->constructor->common.fn_flags & ZEND_ACC_PRIVATE)) { - zend_throw_error(NULL, "Cannot call private %s::__construct()", ZSTR_VAL(ce->name)); - HANDLE_EXCEPTION(); - } - fbc = ce->constructor; - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (!(fbc->common.fn_flags & ZEND_ACC_STATIC)) { - if (Z_TYPE(EX(This)) == IS_OBJECT && instanceof_function(Z_OBJCE(EX(This)), ce)) { - ce = (zend_class_entry*)Z_OBJ(EX(This)); - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - } else { - zend_non_static_method_call(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - goto check_parent_and_self; - } - } else { -check_parent_and_self: - /* previous opcode is ZEND_FETCH_CLASS */ - if (IS_CONST == IS_UNUSED - && ((opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_PARENT || - (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF)) { - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ce = Z_OBJCE(EX(This)); - } else { - ce = Z_CE(EX(This)); - } - } - call_info = ZEND_CALL_NESTED_FUNCTION; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, ce); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_VERIFY_RETURN_TYPE_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (IS_CONST == IS_UNUSED) { - zend_verify_missing_return_type(EX(func), CACHE_ADDR(opline->op2.num)); - } else { -/* prevents "undefined variable opline" errors */ -#if 0 || (IS_CONST != IS_UNUSED) - zval *retval_ref, *retval_ptr; - - zend_arg_info *ret_info = EX(func)->common.arg_info - 1; - - retval_ref = retval_ptr = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_CONST) { - ZVAL_COPY(EX_VAR(opline->result.var), retval_ptr); - retval_ref = retval_ptr = EX_VAR(opline->result.var); - } else if (IS_CONST == IS_VAR) { - if (UNEXPECTED(Z_TYPE_P(retval_ptr) == IS_INDIRECT)) { - retval_ptr = Z_INDIRECT_P(retval_ptr); - } - ZVAL_DEREF(retval_ptr); - } else if (IS_CONST == IS_CV) { - ZVAL_DEREF(retval_ptr); - } - - if (UNEXPECTED(!ZEND_TYPE_IS_CLASS(ret_info->type) - && ZEND_TYPE_CODE(ret_info->type) != IS_CALLABLE - && ZEND_TYPE_CODE(ret_info->type) != IS_ITERABLE - && !ZEND_SAME_FAKE_TYPE(ZEND_TYPE_CODE(ret_info->type), Z_TYPE_P(retval_ptr)) - && !(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE) - && retval_ref != retval_ptr) - ) { - /* A cast might happen - unwrap the reference if this is a by-value return */ - if (Z_REFCOUNT_P(retval_ref) == 1) { - ZVAL_UNREF(retval_ref); - } else { - Z_DELREF_P(retval_ref); - ZVAL_COPY(retval_ref, retval_ptr); - } - retval_ptr = retval_ref; - } - zend_verify_return_type(EX(func), retval_ptr, CACHE_ADDR(opline->op2.num)); -#endif - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_NEW_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *result; - zend_function *constructor; - zend_class_entry *ce; - zend_execute_data *call; - - SAVE_OPLINE(); - if (IS_CONST == IS_CONST) { - ce = CACHED_PTR(opline->op2.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - CACHE_PTR(opline->op2.num, ce); - } - } else if (IS_CONST == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - result = EX_VAR(opline->result.var); - if (UNEXPECTED(object_init_ex(result, ce) != SUCCESS)) { - ZVAL_UNDEF(result); - HANDLE_EXCEPTION(); - } - - constructor = Z_OBJ_HT_P(result)->get_constructor(Z_OBJ_P(result)); - if (constructor == NULL) { - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - - /* If there are no arguments, skip over the DO_FCALL opcode. We check if the next - * opcode is DO_FCALL in case EXT instructions are used. */ - if (EXPECTED(opline->extended_value == 0 && (opline+1)->opcode == ZEND_DO_FCALL)) { - ZEND_VM_NEXT_OPCODE_EX(1, 2); - } - - /* Perform a dummy function call */ - call = zend_vm_stack_push_call_frame( - ZEND_CALL_FUNCTION, (zend_function *) &zend_pass_function, - opline->extended_value, NULL); - } else { - if (EXPECTED(constructor->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&constructor->op_array))) { - init_func_run_time_cache(&constructor->op_array); - } - /* We are not handling overloaded classes right now */ - call = zend_vm_stack_push_call_frame( - ZEND_CALL_FUNCTION | ZEND_CALL_RELEASE_THIS | ZEND_CALL_HAS_THIS, - constructor, - opline->extended_value, - Z_OBJ_P(result)); - Z_ADDREF_P(result); - } - - call->prev_execute_data = EX(call); - EX(call) = call; - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_CONST == IS_VAR || IS_CONST == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = NULL; - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - - } else { - expr_ptr = RT_CONSTANT(opline, opline->op1); - if (IS_CONST == IS_TMP_VAR) { - /* pass */ - } else if (IS_CONST == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_CONST == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_CONST == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if (IS_UNUSED != IS_UNUSED) { - - zval *offset = NULL; - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_UNUSED != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if (IS_UNUSED == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_CONST != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_VAR_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varname; - zend_string *name, *tmp_name; - HashTable *target_symbol_table; - - - SAVE_OPLINE(); - - varname = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_CONST) { - name = Z_STR_P(varname); - } else if (EXPECTED(Z_TYPE_P(varname) == IS_STRING)) { - name = Z_STR_P(varname); - tmp_name = NULL; - } else { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(varname) == IS_UNDEF)) { - varname = ZVAL_UNDEFINED_OP1(); - } - name = zval_try_get_tmp_string(varname, &tmp_name); - if (UNEXPECTED(!name)) { - - HANDLE_EXCEPTION(); - } - } - - target_symbol_table = zend_get_target_symbol_table(opline->extended_value EXECUTE_DATA_CC); - zend_hash_del_ind(target_symbol_table, name); - - if (IS_CONST != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - int result; - - zval *varname; - zend_string *name, *tmp_name; - HashTable *target_symbol_table; - - SAVE_OPLINE(); - varname = RT_CONSTANT(opline, opline->op1); - if (IS_CONST == IS_CONST) { - name = Z_STR_P(varname); - } else { - name = zval_get_tmp_string(varname, &tmp_name); - } - - target_symbol_table = zend_get_target_symbol_table(opline->extended_value EXECUTE_DATA_CC); - value = zend_hash_find_ex(target_symbol_table, name, IS_CONST == IS_CONST); - - if (IS_CONST != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - - if (!value) { - result = (opline->extended_value & ZEND_ISEMPTY); - } else { - if (Z_TYPE_P(value) == IS_INDIRECT) { - value = Z_INDIRECT_P(value); - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - if (Z_ISREF_P(value)) { - value = Z_REFVAL_P(value); - } - result = Z_TYPE_P(value) > IS_NULL; - } else { - result = !i_zend_is_true(value); - } - } - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DECLARE_LAMBDA_FUNCTION_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_function *func; - zval *zfunc; - zval *object; - zend_class_entry *called_scope; - - func = CACHED_PTR(opline->extended_value); - if (UNEXPECTED(func == NULL)) { - zfunc = zend_hash_find_ex(EG(function_table), Z_STR_P(RT_CONSTANT(opline, opline->op1)), 1); - ZEND_ASSERT(zfunc != NULL); - func = Z_FUNC_P(zfunc); - ZEND_ASSERT(func->type == ZEND_USER_FUNCTION); - CACHE_PTR(opline->extended_value, func); - } - - if (Z_TYPE(EX(This)) == IS_OBJECT) { - called_scope = Z_OBJCE(EX(This)); - if (UNEXPECTED((func->common.fn_flags & ZEND_ACC_STATIC) || - (EX(func)->common.fn_flags & ZEND_ACC_STATIC))) { - object = NULL; - } else { - object = &EX(This); - } - } else { - called_scope = Z_CE(EX(This)); - object = NULL; - } - zend_create_closure(EX_VAR(opline->result.var), func, - EX(func)->op_array.scope, called_scope, object); - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_CONST != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_CONST & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = RT_CONSTANT(opline, opline->op1); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_CONST == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = RT_CONSTANT(opline, opline->op1); - - /* Consts, temporary variables and references need copying */ - if (IS_CONST == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_CONST == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CONST == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_UNUSED != IS_UNUSED) { - - zval *key = NULL; - - /* Consts, temporary variables and references need copying */ - if (IS_UNUSED == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_UNUSED == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_UNUSED == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_COUNT_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1; - zend_long count; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - while (1) { - if (Z_TYPE_P(op1) == IS_ARRAY) { - count = zend_array_count(Z_ARRVAL_P(op1)); - break; - } else if (Z_TYPE_P(op1) == IS_OBJECT) { - /* first, we check if the handler is defined */ - if (Z_OBJ_HT_P(op1)->count_elements) { - if (SUCCESS == Z_OBJ_HT_P(op1)->count_elements(op1, &count)) { - break; - } - if (UNEXPECTED(EG(exception))) { - count = 0; - break; - } - } - - /* if not and the object implements Countable we call its count() method */ - if (instanceof_function(Z_OBJCE_P(op1), zend_ce_countable)) { - zval retval; - - zend_call_method_with_0_params(op1, NULL, NULL, "count", &retval); - count = zval_get_long(&retval); - zval_ptr_dtor(&retval); - break; - } - - /* If There's no handler and it doesn't implement Countable then add a warning */ - count = 1; - } else if ((IS_CONST & (IS_VAR|IS_CV)) != 0 && Z_TYPE_P(op1) == IS_REFERENCE) { - op1 = Z_REFVAL_P(op1); - continue; - } else if (Z_TYPE_P(op1) <= IS_NULL) { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - count = 0; - } else { - count = 1; - } - zend_error(E_WARNING, "%s(): Parameter must be an array or an object that implements Countable", opline->extended_value ? "sizeof" : "count"); - break; - } - - ZVAL_LONG(EX_VAR(opline->result.var), count); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GET_CLASS_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - if (IS_CONST == IS_UNUSED) { - if (UNEXPECTED(!EX(func)->common.scope)) { - SAVE_OPLINE(); - zend_error(E_WARNING, "get_class() called without object from outside a class"); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZVAL_STR_COPY(EX_VAR(opline->result.var), EX(func)->common.scope->name); - ZEND_VM_NEXT_OPCODE(); - } - } else { - - zval *op1; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - while (1) { - if (Z_TYPE_P(op1) == IS_OBJECT) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), Z_OBJCE_P(op1)->name); - } else if ((IS_CONST & (IS_VAR|IS_CV)) != 0 && Z_TYPE_P(op1) == IS_REFERENCE) { - op1 = Z_REFVAL_P(op1); - continue; - } else { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - zend_error(E_WARNING, "get_class() expects parameter 1 to be object, %s given", zend_get_type_by_const(Z_TYPE_P(op1))); - ZVAL_FALSE(EX_VAR(opline->result.var)); - } - break; - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GET_TYPE_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1; - zend_string *type; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - type = zend_zval_get_type(op1); - if (EXPECTED(type)) { - ZVAL_INTERNED_STR(EX_VAR(opline->result.var), type); - } else { - ZVAL_STRING(EX_VAR(opline->result.var), "unknown type"); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FUNC_GET_ARGS_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_array *ht; - uint32_t arg_count, result_size, skip; - - arg_count = EX_NUM_ARGS(); - if (IS_CONST == IS_CONST) { - skip = Z_LVAL_P(RT_CONSTANT(opline, opline->op1)); - if (arg_count < skip) { - result_size = 0; - } else { - result_size = arg_count - skip; - } - } else { - skip = 0; - result_size = arg_count; - } - - if (result_size) { - uint32_t first_extra_arg = EX(func)->op_array.num_args; - - ht = zend_new_array(result_size); - ZVAL_ARR(EX_VAR(opline->result.var), ht); - zend_hash_real_init_packed(ht); - ZEND_HASH_FILL_PACKED(ht) { - zval *p, *q; - uint32_t i = skip; - p = EX_VAR_NUM(i); - if (arg_count > first_extra_arg) { - while (i < first_extra_arg) { - q = p; - if (EXPECTED(Z_TYPE_INFO_P(q) != IS_UNDEF)) { - ZVAL_DEREF(q); - if (Z_OPT_REFCOUNTED_P(q)) { - Z_ADDREF_P(q); - } - ZEND_HASH_FILL_SET(q); - } else { - ZEND_HASH_FILL_SET_NULL(); - } - ZEND_HASH_FILL_NEXT(); - p++; - i++; - } - if (skip < first_extra_arg) { - skip = 0; - } else { - skip -= first_extra_arg; - } - p = EX_VAR_NUM(EX(func)->op_array.last_var + EX(func)->op_array.T + skip); - } - while (i < arg_count) { - q = p; - if (EXPECTED(Z_TYPE_INFO_P(q) != IS_UNDEF)) { - ZVAL_DEREF(q); - if (Z_OPT_REFCOUNTED_P(q)) { - Z_ADDREF_P(q); - } - ZEND_HASH_FILL_SET(q); - } else { - ZEND_HASH_FILL_SET_NULL(); - } - ZEND_HASH_FILL_NEXT(); - p++; - i++; - } - } ZEND_HASH_FILL_END(); - ht->nNumOfElements = result_size; - } else { - ZVAL_EMPTY_ARRAY(EX_VAR(opline->result.var)); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DIV_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - op2 = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - fast_div_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POW_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - op2 = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - pow_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CONCAT_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - - if ((IS_CONST == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - (IS_CV == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if (IS_CONST != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CV == IS_CONST || IS_CV == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if (IS_CV != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CONST == IS_CONST || IS_CONST == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if (IS_CONST != IS_CONST && IS_CONST != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } else { - SAVE_OPLINE(); - - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = ZVAL_UNDEFINED_OP1(); - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - op2 = ZVAL_UNDEFINED_OP2(); - } - concat_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SPACESHIP_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = RT_CONSTANT(opline, opline->op1); - op2 = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - compare_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container, *dim, *value; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - dim = EX_VAR(opline->op2.var); - if (IS_CONST != IS_CONST) { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_array: - value = zend_fetch_dimension_address_inner(Z_ARRVAL_P(container), dim, IS_CV, BP_VAR_R EXECUTE_DATA_CC); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - } else if (EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_array; - } else { - goto fetch_dim_r_slow; - } - } else { -fetch_dim_r_slow: - if (IS_CV == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_fetch_dimension_address_read_R(container, dim, IS_CV OPLINE_CC EXECUTE_DATA_CC); - } - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_IS_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - zend_fetch_dimension_address_read_IS(container, EX_VAR(opline->op2.var), IS_CV OPLINE_CC EXECUTE_DATA_CC); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_CONST & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if (IS_CV == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_R_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = EX_VAR(opline->op2.var); - - if (IS_CONST == IS_CONST || - (IS_CONST != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - zend_wrong_property_read(offset); - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_r_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CV == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_REF /* FUNC_ARG fetch may contain it */); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_INFO_P(retval) != IS_UNDEF)) { - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { -fetch_obj_r_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - } - } else if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_R, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_r_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_r_finish: - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - if (IS_CONST == IS_CONST || - (IS_CONST != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_is_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CV == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_P(retval) != IS_UNDEF)) { - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { -fetch_obj_is_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_CONST & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - } - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_IS, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_is_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_is_finish: - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_CONST & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_LIST_R_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - zend_fetch_dimension_address_LIST_r(container, EX_VAR(opline->op2.var), IS_CV OPLINE_CC EXECUTE_DATA_CC); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FAST_CONCAT_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - zend_string *op1_str, *op2_str, *str; - - - op1 = RT_CONSTANT(opline, opline->op1); - op2 = EX_VAR(opline->op2.var); - if ((IS_CONST == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - (IS_CV == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if (IS_CONST != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CV == IS_CONST || IS_CV == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if (IS_CV != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CONST == IS_CONST || IS_CONST == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if (IS_CONST != IS_CONST && IS_CONST != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - if (UNEXPECTED(len > ZSTR_MAX_LEN - ZSTR_LEN(op2_str))) { - zend_error_noreturn(E_ERROR, "Integer overflow in memory allocation"); - } - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_CONST == IS_CONST) { - op1_str = Z_STR_P(op1); - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - op1_str = zend_string_copy(Z_STR_P(op1)); - } else { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - op1_str = zval_get_string_func(op1); - } - if (IS_CV == IS_CONST) { - op2_str = Z_STR_P(op2); - } else if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - op2_str = zend_string_copy(Z_STR_P(op2)); - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - op2_str = zval_get_string_func(op2); - } - do { - if (IS_CONST != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op2))) { - GC_ADDREF(op2_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - zend_string_release_ex(op1_str, 0); - break; - } - } - if (IS_CV != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op1))) { - GC_ADDREF(op1_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - zend_string_release_ex(op2_str, 0); - break; - } - } - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CONST != IS_CONST) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CV != IS_CONST) { - zend_string_release_ex(op2_str, 0); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_free_op free_op1; - zval *object; - zend_function *fbc; - zend_class_entry *called_scope; - zend_object *obj; - zend_execute_data *call; - uint32_t call_info; - - SAVE_OPLINE(); - - object = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - if (IS_CV != IS_CONST) { - function_name = EX_VAR(opline->op2.var); - } - - if (IS_CV != IS_CONST && - UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Method name must be a string"); - - - HANDLE_EXCEPTION(); - } while (0); - } - - if (IS_CONST != IS_UNUSED) { - do { - if (IS_CONST == IS_CONST || UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(object))) { - object = Z_REFVAL_P(object); - if (EXPECTED(Z_TYPE_P(object) == IS_OBJECT)) { - break; - } - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - object = ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if (IS_CV != IS_CONST) { - - } - HANDLE_EXCEPTION(); - } - } - if (IS_CV == IS_CONST) { - function_name = EX_VAR(opline->op2.var); - } - zend_invalid_method_call(object, function_name); - - - HANDLE_EXCEPTION(); - } - } while (0); - } - - obj = Z_OBJ_P(object); - called_scope = obj->ce; - - if (IS_CV == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == called_scope)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else { - zend_object *orig_obj = obj; - - if (IS_CV == IS_CONST) { - function_name = EX_VAR(opline->op2.var); - } - - /* First, locate the function. */ - fbc = obj->handlers->get_method(&obj, Z_STR_P(function_name), ((IS_CV == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(obj->ce, Z_STR_P(function_name)); - } - - - HANDLE_EXCEPTION(); - } - if (IS_CV == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE))) && - EXPECTED(obj == orig_obj)) { - CACHE_POLYMORPHIC_PTR(opline->result.num, called_scope, fbc); - } - if ((IS_CONST & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(obj != orig_obj)) { - /* Reset "object" to trigger reference counting */ - object = NULL; - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (IS_CV != IS_CONST) { - - } - - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_STATIC) != 0)) { - - if ((IS_CONST & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - /* call static method */ - obj = (zend_object*)called_scope; - call_info = ZEND_CALL_NESTED_FUNCTION; - } else if (IS_CONST & (IS_VAR|IS_TMP_VAR|IS_CV)) { - if (IS_CONST == IS_CV) { - GC_ADDREF(obj); /* For $this pointer */ - } else if (free_op1 != object) { - GC_ADDREF(obj); /* For $this pointer */ - - } - /* CV may be changed indirectly (e.g. when it's a reference) */ - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS | ZEND_CALL_RELEASE_THIS; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, obj); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_class_entry *ce; - uint32_t call_info; - zend_function *fbc; - zend_execute_data *call; - - SAVE_OPLINE(); - - if (IS_CONST == IS_CONST) { - /* no function found. try a static method in class */ - ce = CACHED_PTR(opline->result.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - if (IS_CV != IS_CONST) { - CACHE_PTR(opline->result.num, ce); - } - } - } else if (IS_CONST == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - if (IS_CONST == IS_CONST && - IS_CV == IS_CONST && - EXPECTED((fbc = CACHED_PTR(opline->result.num + sizeof(void*))) != NULL)) { - /* nothing to do */ - } else if (IS_CONST != IS_CONST && - IS_CV == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == ce)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else if (IS_CV != IS_UNUSED) { - - - function_name = EX_VAR(opline->op2.var); - if (IS_CV != IS_CONST) { - if (UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (IS_CV & (IS_VAR|IS_CV) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - - HANDLE_EXCEPTION(); - } while (0); - } - } - - if (ce->get_static_method) { - fbc = ce->get_static_method(ce, Z_STR_P(function_name)); - } else { - fbc = zend_std_get_static_method(ce, Z_STR_P(function_name), ((IS_CV == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - } - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(ce, Z_STR_P(function_name)); - } - - HANDLE_EXCEPTION(); - } - if (IS_CV == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE)))) { - CACHE_POLYMORPHIC_PTR(opline->result.num, ce, fbc); - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - if (IS_CV != IS_CONST) { - - } - } else { - if (UNEXPECTED(ce->constructor == NULL)) { - zend_throw_error(NULL, "Cannot call constructor"); - HANDLE_EXCEPTION(); - } - if (Z_TYPE(EX(This)) == IS_OBJECT && Z_OBJ(EX(This))->ce != ce->constructor->common.scope && (ce->constructor->common.fn_flags & ZEND_ACC_PRIVATE)) { - zend_throw_error(NULL, "Cannot call private %s::__construct()", ZSTR_VAL(ce->name)); - HANDLE_EXCEPTION(); - } - fbc = ce->constructor; - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (!(fbc->common.fn_flags & ZEND_ACC_STATIC)) { - if (Z_TYPE(EX(This)) == IS_OBJECT && instanceof_function(Z_OBJCE(EX(This)), ce)) { - ce = (zend_class_entry*)Z_OBJ(EX(This)); - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - } else { - zend_non_static_method_call(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - goto check_parent_and_self; - } - } else { -check_parent_and_self: - /* previous opcode is ZEND_FETCH_CLASS */ - if (IS_CONST == IS_UNUSED - && ((opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_PARENT || - (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF)) { - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ce = Z_OBJCE(EX(This)); - } else { - ce = Z_CE(EX(This)); - } - } - call_info = ZEND_CALL_NESTED_FUNCTION; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, ce); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_USER_CALL_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *function_name; - zend_fcall_info_cache fcc; - char *error = NULL; - zend_function *func; - void *object_or_called_scope; - zend_execute_data *call; - uint32_t call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_DYNAMIC; - - SAVE_OPLINE(); - function_name = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - if (zend_is_callable_ex(function_name, NULL, 0, NULL, &fcc, &error)) { - func = fcc.function_handler; - if (error) { - efree(error); - /* This is the only soft error is_callable() can generate */ - zend_non_static_method_call(func); - if (UNEXPECTED(EG(exception) != NULL)) { - - HANDLE_EXCEPTION(); - } - } - object_or_called_scope = fcc.called_scope; - if (func->common.fn_flags & ZEND_ACC_CLOSURE) { - /* Delay closure destruction until its invocation */ - GC_ADDREF(ZEND_CLOSURE_OBJECT(func)); - call_info |= ZEND_CALL_CLOSURE; - if (func->common.fn_flags & ZEND_ACC_FAKE_CLOSURE) { - call_info |= ZEND_CALL_FAKE_CLOSURE; - } - if (fcc.object) { - object_or_called_scope = fcc.object; - call_info |= ZEND_CALL_HAS_THIS; - } - } else if (fcc.object) { - GC_ADDREF(fcc.object); /* For $this pointer */ - object_or_called_scope = fcc.object; - call_info |= ZEND_CALL_RELEASE_THIS | ZEND_CALL_HAS_THIS; - } - - if ((IS_CV & (IS_TMP_VAR|IS_VAR)) && UNEXPECTED(EG(exception))) { - if (call_info & ZEND_CALL_CLOSURE) { - zend_object_release(ZEND_CLOSURE_OBJECT(func)); - } else if (call_info & ZEND_CALL_RELEASE_THIS) { - zend_object_release(fcc.object); - } - HANDLE_EXCEPTION(); - } - - if (EXPECTED(func->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&func->op_array))) { - init_func_run_time_cache(&func->op_array); - } - } else { - zend_internal_type_error(EX_USES_STRICT_TYPES(), "%s() expects parameter 1 to be a valid callback, %s", Z_STRVAL_P(RT_CONSTANT(opline, opline->op1)), error); - efree(error); - - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - func = (zend_function*)&zend_pass_function; - object_or_called_scope = NULL; - } - - call = zend_vm_stack_push_call_frame(call_info, - func, opline->extended_value, object_or_called_scope); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_CONST == IS_VAR || IS_CONST == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = NULL; - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - - } else { - expr_ptr = RT_CONSTANT(opline, opline->op1); - if (IS_CONST == IS_TMP_VAR) { - /* pass */ - } else if (IS_CONST == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_CONST == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_CONST == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if (IS_CV != IS_UNUSED) { - - zval *offset = EX_VAR(opline->op2.var); - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CV != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if (IS_CV == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_CONST != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - int result; - zend_ulong hval; - zval *offset; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - offset = EX_VAR(opline->op2.var); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - zval *value; - zend_string *str; - -isset_dim_obj_array: - ht = Z_ARRVAL_P(container); -isset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CV != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index_prop; - } - } - value = zend_hash_find_ex_ind(ht, str, IS_CV == IS_CONST); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_prop: - value = zend_hash_index_find(ht, hval); - } else if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(offset))) { - offset = Z_REFVAL_P(offset); - goto isset_again; - } else { - value = zend_find_array_dim_slow(ht, offset EXECUTE_DATA_CC); - if (UNEXPECTED(EG(exception))) { - result = 0; - goto isset_dim_obj_exit; - } - } - - if (!(opline->extended_value & ZEND_ISEMPTY)) { - /* > IS_NULL means not IS_UNDEF and not IS_NULL */ - result = value != NULL && Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL); - - if (IS_CONST & (IS_CONST|IS_CV)) { - /* avoid exception check */ - - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } - } else { - result = (value == NULL || !i_zend_is_true(value)); - } - goto isset_dim_obj_exit; - } else if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto isset_dim_obj_array; - } - } - - if (IS_CV == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - result = zend_isset_dim_slow(container, offset EXECUTE_DATA_CC); - } else { - result = zend_isempty_dim_slow(container, offset EXECUTE_DATA_CC); - } - -isset_dim_obj_exit: - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_COLD ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - int result; - zval *offset; - - SAVE_OPLINE(); - container = RT_CONSTANT(opline, opline->op1); - - if (IS_CONST == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - if (IS_CONST == IS_CONST || - (IS_CONST != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } else { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } - - result = - (opline->extended_value & ZEND_ISEMPTY) ^ - Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY), ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_ISEMPTY) : NULL)); - -isset_object_finish: - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - - zval *key, *subject; - HashTable *ht; - uint32_t result; - - SAVE_OPLINE(); - - key = RT_CONSTANT(opline, opline->op1); - subject = EX_VAR(opline->op2.var); - - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { -array_key_exists_array: - ht = Z_ARRVAL_P(subject); - result = zend_array_key_exists_fast(ht, key OPLINE_CC EXECUTE_DATA_CC); - } else { - if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(subject))) { - subject = Z_REFVAL_P(subject); - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { - goto array_key_exists_array; - } - } - result = zend_array_key_exists_slow(subject, key OPLINE_CC EXECUTE_DATA_CC); - } - - - ZEND_VM_SMART_BRANCH(result == IS_TRUE, 1); - Z_TYPE_INFO_P(EX_VAR(opline->result.var)) = result; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|UNUSED|CV, ANY) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_CONST != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_CONST & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = RT_CONSTANT(opline, opline->op1); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_CONST == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = RT_CONSTANT(opline, opline->op1); - - /* Consts, temporary variables and references need copying */ - if (IS_CONST == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_CONST == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CONST == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_CV != IS_UNUSED) { - - zval *key = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_CV == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_CV == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_CV == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_QM_ASSIGN_LONG_SPEC_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - - value = EX_VAR(opline->op1.var); - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(value)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_QM_ASSIGN_DOUBLE_SPEC_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - - value = EX_VAR(opline->op1.var); - ZVAL_DOUBLE(EX_VAR(opline->result.var), Z_DVAL_P(value)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - - value = EX_VAR(opline->op1.var); - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), value); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - fast_long_add_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto add_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -add_double: - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 + d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto add_double; - } - } - - ZEND_VM_TAIL_CALL(zend_add_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - fast_long_sub_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto sub_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -sub_double: - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 - d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto sub_double; - } - } - - ZEND_VM_TAIL_CALL(zend_sub_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - zend_long overflow; - - result = EX_VAR(opline->result.var); - ZEND_SIGNED_MULTIPLY_LONG(Z_LVAL_P(op1), Z_LVAL_P(op2), Z_LVAL_P(result), Z_DVAL_P(result), overflow); - Z_TYPE_INFO_P(result) = overflow ? IS_DOUBLE : IS_LONG; - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto mul_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -mul_double: - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 * d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto mul_double; - } - } - - ZEND_VM_TAIL_CALL(zend_mul_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MOD_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - if (UNEXPECTED(Z_LVAL_P(op2) == 0)) { - ZEND_VM_TAIL_CALL(zend_mod_by_zero_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else if (UNEXPECTED(Z_LVAL_P(op2) == -1)) { - /* Prevent overflow error/crash if op1==ZEND_LONG_MIN */ - ZVAL_LONG(result, 0); - } else { - ZVAL_LONG(result, Z_LVAL_P(op1) % Z_LVAL_P(op2)); - } - ZEND_VM_NEXT_OPCODE(); - } - } - - ZEND_VM_TAIL_CALL(zend_mod_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SL_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG) - && EXPECTED((zend_ulong)Z_LVAL_P(op2) < SIZEOF_ZEND_LONG * 8)) { - /* Perform shift on unsigned numbers to get well-defined wrap behavior. */ - ZVAL_LONG(EX_VAR(opline->result.var), - (zend_long) ((zend_ulong) Z_LVAL_P(op1) << Z_LVAL_P(op2))); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_shift_left_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SR_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG) - && EXPECTED((zend_ulong)Z_LVAL_P(op2) < SIZEOF_ZEND_LONG * 8)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) >> Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_shift_right_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) < Z_LVAL_P(op2))) { -is_smaller_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_double: - if (d1 < d2) { - goto is_smaller_true; - } else { - goto is_smaller_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) < Z_LVAL_P(op2))) { -is_smaller_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_double: - if (d1 < d2) { - goto is_smaller_true; - } else { - goto is_smaller_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) < Z_LVAL_P(op2))) { -is_smaller_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_double: - if (d1 < d2) { - goto is_smaller_true; - } else { - goto is_smaller_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) <= Z_LVAL_P(op2))) { -is_smaller_or_equal_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_or_equal_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_or_equal_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_or_equal_double: - if (d1 <= d2) { - goto is_smaller_or_equal_true; - } else { - goto is_smaller_or_equal_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_or_equal_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_or_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) <= Z_LVAL_P(op2))) { -is_smaller_or_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_or_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_or_equal_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_or_equal_double: - if (d1 <= d2) { - goto is_smaller_or_equal_true; - } else { - goto is_smaller_or_equal_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_or_equal_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_or_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) <= Z_LVAL_P(op2))) { -is_smaller_or_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_or_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_or_equal_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_or_equal_double: - if (d1 <= d2) { - goto is_smaller_or_equal_true; - } else { - goto is_smaller_or_equal_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_or_equal_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_or_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BW_OR_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) | Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_bw_or_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BW_AND_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) & Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_bw_and_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BW_XOR_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) ^ Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_bw_xor_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_LIST_r(container, RT_CONSTANT(opline, opline->op2), IS_CONST OPLINE_CC EXECUTE_DATA_CC); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SWITCH_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op, *jump_zv; - HashTable *jumptable; - - op = EX_VAR(opline->op1.var); - jumptable = Z_ARRVAL_P(RT_CONSTANT(opline, opline->op2)); - - if (Z_TYPE_P(op) != IS_LONG) { - ZVAL_DEREF(op); - if (Z_TYPE_P(op) != IS_LONG) { - /* Wrong type, fall back to ZEND_CASE chain */ - ZEND_VM_NEXT_OPCODE(); - } - } - - jump_zv = zend_hash_index_find(jumptable, Z_LVAL_P(op)); - if (jump_zv != NULL) { - ZEND_VM_SET_RELATIVE_OPCODE(opline, Z_LVAL_P(jump_zv)); - ZEND_VM_CONTINUE(); - } else { - /* default */ - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SWITCH_STRING_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op, *jump_zv; - HashTable *jumptable; - - op = EX_VAR(opline->op1.var); - jumptable = Z_ARRVAL_P(RT_CONSTANT(opline, opline->op2)); - - if (Z_TYPE_P(op) != IS_STRING) { - if ((IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* Wrong type, fall back to ZEND_CASE chain */ - ZEND_VM_NEXT_OPCODE(); - } else { - ZVAL_DEREF(op); - if (Z_TYPE_P(op) != IS_STRING) { - /* Wrong type, fall back to ZEND_CASE chain */ - ZEND_VM_NEXT_OPCODE(); - } - } - } - - jump_zv = zend_hash_find_ex(jumptable, Z_STR_P(op), (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST); - if (jump_zv != NULL) { - ZEND_VM_SET_RELATIVE_OPCODE(opline, Z_LVAL_P(jump_zv)); - ZEND_VM_CONTINUE(); - } else { - /* default */ - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - ZVAL_LONG(result, Z_LVAL_P(op1) + Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - fast_long_add_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, Z_DVAL_P(op1) + Z_DVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - ZVAL_LONG(result, Z_LVAL_P(op1) - Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - fast_long_sub_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, Z_DVAL_P(op1) - Z_DVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - ZVAL_LONG(result, Z_LVAL_P(op1) * Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - zend_long overflow; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - ZEND_SIGNED_MULTIPLY_LONG(Z_LVAL_P(op1), Z_LVAL_P(op2), Z_LVAL_P(result), Z_DVAL_P(result), overflow); - Z_TYPE_INFO_P(result) = overflow ? IS_DOUBLE : IS_LONG; - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, Z_DVAL_P(op1) * Z_DVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_LVAL_P(op1) == Z_LVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_LVAL_P(op1) == Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_LVAL_P(op1) == Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_DVAL_P(op1) == Z_DVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_DVAL_P(op1) == Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_DVAL_P(op1) == Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_LVAL_P(op1) != Z_LVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_LVAL_P(op1) != Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_LVAL_P(op1) != Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_DVAL_P(op1) != Z_DVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_DVAL_P(op1) != Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_DVAL_P(op1) != Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_LVAL_P(op1) < Z_LVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_LVAL_P(op1) < Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_LVAL_P(op1) < Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_DVAL_P(op1) < Z_DVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_DVAL_P(op1) < Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_DVAL_P(op1) < Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - fast_long_add_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto add_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -add_double: - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 + d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto add_double; - } - } - - ZEND_VM_TAIL_CALL(zend_add_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - fast_long_sub_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto sub_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -sub_double: - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 - d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto sub_double; - } - } - - ZEND_VM_TAIL_CALL(zend_sub_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - zend_long overflow; - - result = EX_VAR(opline->result.var); - ZEND_SIGNED_MULTIPLY_LONG(Z_LVAL_P(op1), Z_LVAL_P(op2), Z_LVAL_P(result), Z_DVAL_P(result), overflow); - Z_TYPE_INFO_P(result) = overflow ? IS_DOUBLE : IS_LONG; - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto mul_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -mul_double: - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, d1 * d2); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto mul_double; - } - } - - ZEND_VM_TAIL_CALL(zend_mul_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - result = EX_VAR(opline->result.var); - if (UNEXPECTED(Z_LVAL_P(op2) == 0)) { - ZEND_VM_TAIL_CALL(zend_mod_by_zero_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else if (UNEXPECTED(Z_LVAL_P(op2) == -1)) { - /* Prevent overflow error/crash if op1==ZEND_LONG_MIN */ - ZVAL_LONG(result, 0); - } else { - ZVAL_LONG(result, Z_LVAL_P(op1) % Z_LVAL_P(op2)); - } - ZEND_VM_NEXT_OPCODE(); - } - } - - ZEND_VM_TAIL_CALL(zend_mod_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SL_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG) - && EXPECTED((zend_ulong)Z_LVAL_P(op2) < SIZEOF_ZEND_LONG * 8)) { - /* Perform shift on unsigned numbers to get well-defined wrap behavior. */ - ZVAL_LONG(EX_VAR(opline->result.var), - (zend_long) ((zend_ulong) Z_LVAL_P(op1) << Z_LVAL_P(op2))); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_shift_left_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SR_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG) - && EXPECTED((zend_ulong)Z_LVAL_P(op2) < SIZEOF_ZEND_LONG * 8)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) >> Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_shift_right_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) < Z_LVAL_P(op2))) { -is_smaller_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_double: - if (d1 < d2) { - goto is_smaller_true; - } else { - goto is_smaller_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) < Z_LVAL_P(op2))) { -is_smaller_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_double: - if (d1 < d2) { - goto is_smaller_true; - } else { - goto is_smaller_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) < Z_LVAL_P(op2))) { -is_smaller_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_double: - if (d1 < d2) { - goto is_smaller_true; - } else { - goto is_smaller_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) <= Z_LVAL_P(op2))) { -is_smaller_or_equal_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_or_equal_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_or_equal_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_or_equal_double: - if (d1 <= d2) { - goto is_smaller_or_equal_true; - } else { - goto is_smaller_or_equal_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_or_equal_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_or_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) <= Z_LVAL_P(op2))) { -is_smaller_or_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_or_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_or_equal_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_or_equal_double: - if (d1 <= d2) { - goto is_smaller_or_equal_true; - } else { - goto is_smaller_or_equal_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_or_equal_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_or_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) <= Z_LVAL_P(op2))) { -is_smaller_or_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_smaller_or_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_smaller_or_equal_double; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_smaller_or_equal_double: - if (d1 <= d2) { - goto is_smaller_or_equal_true; - } else { - goto is_smaller_or_equal_false; - } - } else if (EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_smaller_or_equal_double; - } - } - ZEND_VM_TAIL_CALL(zend_is_smaller_or_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) | Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_bw_or_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) & Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_bw_and_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && (IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG) - && EXPECTED(Z_TYPE_INFO_P(op2) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(op1) ^ Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_bw_xor_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = EX_VAR(opline->result.var); - ZVAL_LONG(result, Z_LVAL_P(op1) + Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = EX_VAR(opline->result.var); - fast_long_add_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, Z_DVAL_P(op1) + Z_DVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = EX_VAR(opline->result.var); - ZVAL_LONG(result, Z_LVAL_P(op1) - Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = EX_VAR(opline->result.var); - fast_long_sub_function(result, op1, op2); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, Z_DVAL_P(op1) - Z_DVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = EX_VAR(opline->result.var); - ZVAL_LONG(result, Z_LVAL_P(op1) * Z_LVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - zend_long overflow; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = EX_VAR(opline->result.var); - ZEND_SIGNED_MULTIPLY_LONG(Z_LVAL_P(op1), Z_LVAL_P(op2), Z_LVAL_P(result), Z_DVAL_P(result), overflow); - Z_TYPE_INFO_P(result) = overflow ? IS_DOUBLE : IS_LONG; - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2, *result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = EX_VAR(opline->result.var); - ZVAL_DOUBLE(result, Z_DVAL_P(op1) * Z_DVAL_P(op2)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) == Z_LVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) == Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) == Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) == Z_DVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) == Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) == Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) != Z_LVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) != Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) != Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) != Z_DVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) != Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) != Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) < Z_LVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) < Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) < Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) < Z_DVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) < Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) < Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_LVAL_P(op1) <= Z_LVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2)); - - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1, *op2; - int result; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - result = (Z_DVAL_P(op1) <= Z_DVAL_P(op2)); - ZEND_VM_SMART_BRANCH_JMPNZ(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_LIST_r(container, _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC), (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_LIST_r(container, EX_VAR(opline->op2.var), IS_CV OPLINE_CC EXECUTE_DATA_CC); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BW_NOT_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), ~Z_LVAL_P(op1)); - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = ZVAL_UNDEFINED_OP1(); - } - bitwise_not_function(EX_VAR(opline->result.var), op1); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BOOL_NOT_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *val; - zend_free_op free_op1; - - val = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - /* The result and op1 can be the same cv zval */ - const uint32_t orig_val_type = Z_TYPE_INFO_P(val); - ZVAL_TRUE(EX_VAR(opline->result.var)); - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(orig_val_type == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } else { - SAVE_OPLINE(); - ZVAL_BOOL(EX_VAR(opline->result.var), !i_zend_is_true(val)); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ECHO_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *z; - - SAVE_OPLINE(); - z = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (Z_TYPE_P(z) == IS_STRING) { - zend_string *str = Z_STR_P(z); - - if (ZSTR_LEN(str) != 0) { - zend_write(ZSTR_VAL(str), ZSTR_LEN(str)); - } - } else { - zend_string *str = zval_get_string_func(z); - - if (ZSTR_LEN(str) != 0) { - zend_write(ZSTR_VAL(str), ZSTR_LEN(str)); - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(z) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - zend_string_release_ex(str, 0); - } - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZ_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *val; - - val = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - SAVE_OPLINE(); - if (i_zend_is_true(val)) { - opline++; - } else { - opline = OP_JMP_ADDR(opline, opline->op2); - } - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_JMP(opline); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPNZ_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *val; - - val = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (i_zend_is_true(val)) { - opline = OP_JMP_ADDR(opline, opline->op2); - } else { - opline++; - } - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_JMP(opline); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZNZ_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *val; - - val = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_INFO_P(val) == IS_TRUE)) { - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - SAVE_OPLINE(); - if (i_zend_is_true(val)) { - opline = ZEND_OFFSET_TO_OPLINE(opline, opline->extended_value); - } else { - opline = OP_JMP_ADDR(opline, opline->op2); - } - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_JMP(opline); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZ_EX_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *val; - int ret; - - val = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - SAVE_OPLINE(); - ret = i_zend_is_true(val); - zval_ptr_dtor_nogc(free_op1); - if (ret) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - opline++; - } else { - ZVAL_FALSE(EX_VAR(opline->result.var)); - opline = OP_JMP_ADDR(opline, opline->op2); - } - ZEND_VM_JMP(opline); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPNZ_EX_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *val; - int ret; - - val = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - - SAVE_OPLINE(); - ret = i_zend_is_true(val); - zval_ptr_dtor_nogc(free_op1); - if (ret) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - opline = OP_JMP_ADDR(opline, opline->op2); - } else { - ZVAL_FALSE(EX_VAR(opline->result.var)); - opline++; - } - ZEND_VM_JMP(opline); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FREE_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - zval_ptr_dtor_nogc(EX_VAR(opline->op1.var)); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_FREE_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *var; - USE_OPLINE - - SAVE_OPLINE(); - var = EX_VAR(opline->op1.var); - if (Z_TYPE_P(var) != IS_ARRAY && Z_FE_ITER_P(var) != (uint32_t)-1) { - zend_hash_iterator_del(Z_FE_ITER_P(var)); - } - zval_ptr_dtor_nogc(var); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAL_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value, *arg; - zend_free_op free_op1; - - value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, value); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(arg))) { - Z_ADDREF_P(arg); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BOOL_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *val; - zend_free_op free_op1; - - val = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - /* The result and op1 can be the same cv zval */ - const uint32_t orig_val_type = Z_TYPE_INFO_P(val); - ZVAL_FALSE(EX_VAR(opline->result.var)); - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(orig_val_type == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } else { - SAVE_OPLINE(); - ZVAL_BOOL(EX_VAR(opline->result.var), i_zend_is_true(val)); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CLONE_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *obj; - zend_class_entry *ce, *scope; - zend_function *clone; - zend_object_clone_obj_t clone_call; - - SAVE_OPLINE(); - obj = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED && UNEXPECTED(Z_TYPE_P(obj) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - do { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || - ((IS_TMP_VAR|IS_VAR) != IS_UNUSED && UNEXPECTED(Z_TYPE_P(obj) != IS_OBJECT))) { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(obj)) { - obj = Z_REFVAL_P(obj); - if (EXPECTED(Z_TYPE_P(obj) == IS_OBJECT)) { - break; - } - } - ZVAL_UNDEF(EX_VAR(opline->result.var)); - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(obj) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "__clone method called on non-object"); - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } - } while (0); - - ce = Z_OBJCE_P(obj); - clone = ce->clone; - clone_call = Z_OBJ_HT_P(obj)->clone_obj; - if (UNEXPECTED(clone_call == NULL)) { - zend_throw_error(NULL, "Trying to clone an uncloneable object of class %s", ZSTR_VAL(ce->name)); - zval_ptr_dtor_nogc(free_op1); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - - if (clone && !(clone->common.fn_flags & ZEND_ACC_PUBLIC)) { - scope = EX(func)->op_array.scope; - if (clone->common.scope != scope) { - if (UNEXPECTED(clone->common.fn_flags & ZEND_ACC_PRIVATE) - || UNEXPECTED(!zend_check_protected(zend_get_function_root_class(clone), scope))) { - zend_wrong_clone_call(clone, scope); - zval_ptr_dtor_nogc(free_op1); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - } - - ZVAL_OBJ(EX_VAR(opline->result.var), clone_call(obj)); - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_op_array *new_op_array; - zend_free_op free_op1; - zval *inc_filename; - - SAVE_OPLINE(); - inc_filename = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - new_op_array = zend_include_or_eval(inc_filename, opline->extended_value); - zval_ptr_dtor_nogc(free_op1); - if (UNEXPECTED(EG(exception) != NULL)) { - if (new_op_array != ZEND_FAKE_OP_ARRAY && new_op_array != NULL) { - destroy_op_array(new_op_array); - efree_size(new_op_array, sizeof(zend_op_array)); - } - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else if (new_op_array == ZEND_FAKE_OP_ARRAY) { - if (RETURN_VALUE_USED(opline)) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - } - } else if (EXPECTED(new_op_array != NULL)) { - zval *return_value = NULL; - zend_execute_data *call; - - if (RETURN_VALUE_USED(opline)) { - return_value = EX_VAR(opline->result.var); - } - - new_op_array->scope = EX(func)->op_array.scope; - - call = zend_vm_stack_push_call_frame( - (Z_TYPE_INFO(EX(This)) & ZEND_CALL_HAS_THIS) | ZEND_CALL_NESTED_CODE | ZEND_CALL_HAS_SYMBOL_TABLE, - (zend_function*)new_op_array, 0, - Z_PTR(EX(This))); - - if (EX_CALL_INFO() & ZEND_CALL_HAS_SYMBOL_TABLE) { - call->symbol_table = EX(symbol_table); - } else { - call->symbol_table = zend_rebuild_symbol_table(); - } - - call->prev_execute_data = execute_data; - i_init_code_execute_data(call, new_op_array, return_value); - if (EXPECTED(zend_execute_ex == execute_ex)) { - ZEND_VM_ENTER(); - } else { - ZEND_ADD_CALL_FLAG(call, ZEND_CALL_TOP); - zend_execute_ex(call); - zend_vm_stack_free_call_frame(call); - } - - destroy_op_array(new_op_array); - efree_size(new_op_array, sizeof(zend_op_array)); - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - } else if (RETURN_VALUE_USED(opline)) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_STRLEN_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - zend_free_op free_op1; - - value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (EXPECTED(Z_TYPE_P(value) == IS_STRING)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_STRLEN_P(value)); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE(); - } else { - zend_bool strict; - - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_TYPE_P(value) == IS_REFERENCE) { - value = Z_REFVAL_P(value); - if (EXPECTED(Z_TYPE_P(value) == IS_STRING)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_STRLEN_P(value)); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE(); - } - } - - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - value = ZVAL_UNDEFINED_OP1(); - } - strict = EX_USES_STRICT_TYPES(); - do { - if (EXPECTED(!strict)) { - zend_string *str; - zval tmp; - - ZVAL_COPY(&tmp, value); - if (zend_parse_arg_str_weak(&tmp, &str)) { - ZVAL_LONG(EX_VAR(opline->result.var), ZSTR_LEN(str)); - zval_ptr_dtor(&tmp); - break; - } - zval_ptr_dtor(&tmp); - } - if (!EG(exception)) { - zend_internal_type_error(strict, "strlen() expects parameter 1 to be string, %s given", zend_get_type_by_const(Z_TYPE_P(value))); - } - ZVAL_NULL(EX_VAR(opline->result.var)); - } while (0); - } - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_TYPE_CHECK_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - int result = 0; - zend_free_op free_op1; - - value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if ((opline->extended_value >> (uint32_t)Z_TYPE_P(value)) & 1) { -type_check_resource: - if (EXPECTED(Z_TYPE_P(value) != IS_RESOURCE) - || EXPECTED(NULL != zend_rsrc_list_get_rsrc_type(Z_RES_P(value)))) { - result = 1; - } - } else if (((IS_TMP_VAR|IS_VAR) & (IS_CV|IS_VAR)) && Z_ISREF_P(value)) { - value = Z_REFVAL_P(value); - if ((opline->extended_value >> (uint32_t)Z_TYPE_P(value)) & 1) { - goto type_check_resource; - } - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - result = ((1 << IS_NULL) & opline->extended_value) != 0; - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - SAVE_OPLINE(); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DIV_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - fast_div_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POW_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - pow_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CONCAT_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - - if (((IS_TMP_VAR|IS_VAR) == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - (IS_CONST == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CONST == IS_CONST || IS_CONST == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if (IS_CONST != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || (IS_TMP_VAR|IS_VAR) == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && (IS_TMP_VAR|IS_VAR) != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } else { - SAVE_OPLINE(); - - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = ZVAL_UNDEFINED_OP1(); - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - op2 = ZVAL_UNDEFINED_OP2(); - } - concat_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && (IS_TMP_VAR|IS_VAR) == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SPACESHIP_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - compare_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BOOL_XOR_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - boolean_xor_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container, *dim, *value; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - dim = RT_CONSTANT(opline, opline->op2); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_array: - value = zend_fetch_dimension_address_inner(Z_ARRVAL_P(container), dim, IS_CONST, BP_VAR_R EXECUTE_DATA_CC); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - } else if (EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_array; - } else { - goto fetch_dim_r_slow; - } - } else { -fetch_dim_r_slow: - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_fetch_dimension_address_read_R(container, dim, IS_CONST OPLINE_CC EXECUTE_DATA_CC); - } - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_read_IS(container, RT_CONSTANT(opline, opline->op2), IS_CONST OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = RT_CONSTANT(opline, opline->op2); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || - ((IS_TMP_VAR|IS_VAR) != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - zend_wrong_property_read(offset); - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_r_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CONST == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_REF /* FUNC_ARG fetch may contain it */); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_INFO_P(retval) != IS_UNDEF)) { - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { -fetch_obj_r_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - } - } else if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_R, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_r_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_r_finish: - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = RT_CONSTANT(opline, opline->op2); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || - ((IS_TMP_VAR|IS_VAR) != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_is_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CONST == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_P(retval) != IS_UNDEF)) { - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { -fetch_obj_is_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - } - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_IS, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_is_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_is_finish: - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - zend_string *op1_str, *op2_str, *str; - - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - if (((IS_TMP_VAR|IS_VAR) == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - (IS_CONST == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CONST == IS_CONST || IS_CONST == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if (IS_CONST != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || (IS_TMP_VAR|IS_VAR) == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && (IS_TMP_VAR|IS_VAR) != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - if (UNEXPECTED(len > ZSTR_MAX_LEN - ZSTR_LEN(op2_str))) { - zend_error_noreturn(E_ERROR, "Integer overflow in memory allocation"); - } - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - op1_str = Z_STR_P(op1); - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - op1_str = zend_string_copy(Z_STR_P(op1)); - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - op1_str = zval_get_string_func(op1); - } - if (IS_CONST == IS_CONST) { - op2_str = Z_STR_P(op2); - } else if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - op2_str = zend_string_copy(Z_STR_P(op2)); - } else { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - op2_str = zval_get_string_func(op2); - } - do { - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op2))) { - GC_ADDREF(op2_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - zend_string_release_ex(op1_str, 0); - break; - } - } - if (IS_CONST != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op1))) { - GC_ADDREF(op1_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - zend_string_release_ex(op2_str, 0); - break; - } - } - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CONST != IS_CONST) { - zend_string_release_ex(op2_str, 0); - } - } while (0); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_free_op free_op1; - zval *object; - zend_function *fbc; - zend_class_entry *called_scope; - zend_object *obj; - zend_execute_data *call; - uint32_t call_info; - - SAVE_OPLINE(); - - object = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - if (IS_CONST != IS_CONST) { - function_name = RT_CONSTANT(opline, opline->op2); - } - - if (IS_CONST != IS_CONST && - UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Method name must be a string"); - - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } while (0); - } - - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - do { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(object))) { - object = Z_REFVAL_P(object); - if (EXPECTED(Z_TYPE_P(object) == IS_OBJECT)) { - break; - } - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - object = ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if (IS_CONST != IS_CONST) { - - } - HANDLE_EXCEPTION(); - } - } - if (IS_CONST == IS_CONST) { - function_name = RT_CONSTANT(opline, opline->op2); - } - zend_invalid_method_call(object, function_name); - - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } - } while (0); - } - - obj = Z_OBJ_P(object); - called_scope = obj->ce; - - if (IS_CONST == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == called_scope)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else { - zend_object *orig_obj = obj; - - if (IS_CONST == IS_CONST) { - function_name = RT_CONSTANT(opline, opline->op2); - } - - /* First, locate the function. */ - fbc = obj->handlers->get_method(&obj, Z_STR_P(function_name), ((IS_CONST == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(obj->ce, Z_STR_P(function_name)); - } - - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } - if (IS_CONST == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE))) && - EXPECTED(obj == orig_obj)) { - CACHE_POLYMORPHIC_PTR(opline->result.num, called_scope, fbc); - } - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(obj != orig_obj)) { - /* Reset "object" to trigger reference counting */ - object = NULL; - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (IS_CONST != IS_CONST) { - - } - - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_STATIC) != 0)) { - zval_ptr_dtor_nogc(free_op1); - - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - /* call static method */ - obj = (zend_object*)called_scope; - call_info = ZEND_CALL_NESTED_FUNCTION; - } else if ((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_TMP_VAR|IS_CV)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CV) { - GC_ADDREF(obj); /* For $this pointer */ - } else if (free_op1 != object) { - GC_ADDREF(obj); /* For $this pointer */ - zval_ptr_dtor_nogc(free_op1); - } - /* CV may be changed indirectly (e.g. when it's a reference) */ - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS | ZEND_CALL_RELEASE_THIS; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, obj); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CASE_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -case_true: - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -case_false: - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto case_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -case_double: - if (d1 == d2) { - goto case_true; - } else { - goto case_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto case_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - - if (result) { - goto case_true; - } else { - goto case_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_case_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - int result; - zend_ulong hval; - zval *offset; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - offset = RT_CONSTANT(opline, opline->op2); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - zval *value; - zend_string *str; - -isset_dim_obj_array: - ht = Z_ARRVAL_P(container); -isset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CONST != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index_prop; - } - } - value = zend_hash_find_ex_ind(ht, str, IS_CONST == IS_CONST); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_prop: - value = zend_hash_index_find(ht, hval); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(offset))) { - offset = Z_REFVAL_P(offset); - goto isset_again; - } else { - value = zend_find_array_dim_slow(ht, offset EXECUTE_DATA_CC); - if (UNEXPECTED(EG(exception))) { - result = 0; - goto isset_dim_obj_exit; - } - } - - if (!(opline->extended_value & ZEND_ISEMPTY)) { - /* > IS_NULL means not IS_UNDEF and not IS_NULL */ - result = value != NULL && Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL); - - if ((IS_TMP_VAR|IS_VAR) & (IS_CONST|IS_CV)) { - /* avoid exception check */ - - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } - } else { - result = (value == NULL || !i_zend_is_true(value)); - } - goto isset_dim_obj_exit; - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto isset_dim_obj_array; - } - } - - if (IS_CONST == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - result = zend_isset_dim_slow(container, offset EXECUTE_DATA_CC); - } else { - result = zend_isempty_dim_slow(container, offset EXECUTE_DATA_CC); - } - -isset_dim_obj_exit: - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - int result; - zval *offset; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = RT_CONSTANT(opline, opline->op2); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || - ((IS_TMP_VAR|IS_VAR) != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } else { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } - - result = - (opline->extended_value & ZEND_ISEMPTY) ^ - Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY), ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_ISEMPTY) : NULL)); - -isset_object_finish: - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_free_op free_op1; - zval *key, *subject; - HashTable *ht; - uint32_t result; - - SAVE_OPLINE(); - - key = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - subject = RT_CONSTANT(opline, opline->op2); - - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { -array_key_exists_array: - ht = Z_ARRVAL_P(subject); - result = zend_array_key_exists_fast(ht, key OPLINE_CC EXECUTE_DATA_CC); - } else { - if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(subject))) { - subject = Z_REFVAL_P(subject); - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { - goto array_key_exists_array; - } - } - result = zend_array_key_exists_slow(subject, key OPLINE_CC EXECUTE_DATA_CC); - } - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result == IS_TRUE, 1); - Z_TYPE_INFO_P(EX_VAR(opline->result.var)) = result; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|UNUSED|CV, ANY) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INSTANCEOF_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr; - zend_bool result; - - SAVE_OPLINE(); - expr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - -try_instanceof: - if (Z_TYPE_P(expr) == IS_OBJECT) { - zend_class_entry *ce; - - if (IS_CONST == IS_CONST) { - ce = CACHED_PTR(opline->extended_value); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD); - if (EXPECTED(ce)) { - CACHE_PTR(opline->extended_value, ce); - } - } - } else if (IS_CONST == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op2.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - zval_ptr_dtor_nogc(free_op1); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op2.var)); - } - result = ce && instanceof_function(Z_OBJCE_P(expr), ce); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_TYPE_P(expr) == IS_REFERENCE) { - expr = Z_REFVAL_P(expr); - goto try_instanceof; - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(expr) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - result = 0; - } - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container, *dim, *value; - zend_long offset; - HashTable *ht; - - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - dim = RT_CONSTANT(opline, opline->op2); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_index_array: - if (EXPECTED(Z_TYPE_P(dim) == IS_LONG)) { - offset = Z_LVAL_P(dim); - } else { - offset = zval_get_long(dim); - } - ht = Z_ARRVAL_P(container); - ZEND_HASH_INDEX_FIND(ht, offset, value, fetch_dim_r_index_undef); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - SAVE_OPLINE(); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_index_array; - } else { - goto fetch_dim_r_index_slow; - } - } else { -fetch_dim_r_index_slow: - SAVE_OPLINE(); - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - -fetch_dim_r_index_undef: - ZVAL_NULL(EX_VAR(opline->result.var)); - SAVE_OPLINE(); - zend_undefined_offset(offset); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container, *dim, *value; - zend_long offset; - HashTable *ht; - - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - dim = EX_VAR(opline->op2.var); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_index_array: - if (EXPECTED(Z_TYPE_P(dim) == IS_LONG)) { - offset = Z_LVAL_P(dim); - } else { - offset = zval_get_long(dim); - } - ht = Z_ARRVAL_P(container); - ZEND_HASH_INDEX_FIND(ht, offset, value, fetch_dim_r_index_undef); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - SAVE_OPLINE(); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_index_array; - } else { - goto fetch_dim_r_index_slow; - } - } else { -fetch_dim_r_index_slow: - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - -fetch_dim_r_index_undef: - ZVAL_NULL(EX_VAR(opline->result.var)); - SAVE_OPLINE(); - zend_undefined_offset(offset); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - fast_div_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - pow_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (((IS_TMP_VAR|IS_VAR) == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - ((IS_TMP_VAR|IS_VAR) == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || (IS_TMP_VAR|IS_VAR) == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || (IS_TMP_VAR|IS_VAR) == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && (IS_TMP_VAR|IS_VAR) != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - if (UNEXPECTED(len > ZSTR_MAX_LEN - ZSTR_LEN(op2_str))) { - zend_error_noreturn(E_ERROR, "Integer overflow in memory allocation"); - } - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } else { - SAVE_OPLINE(); - - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = ZVAL_UNDEFINED_OP1(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - op2 = ZVAL_UNDEFINED_OP2(); - } - concat_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (1 && (IS_TMP_VAR|IS_VAR) == IS_CONST && (IS_TMP_VAR|IS_VAR) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (1 && (IS_TMP_VAR|IS_VAR) == IS_CONST && (IS_TMP_VAR|IS_VAR) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (1 && (IS_TMP_VAR|IS_VAR) == IS_CONST && (IS_TMP_VAR|IS_VAR) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (1 && (IS_TMP_VAR|IS_VAR) == IS_CONST && (IS_TMP_VAR|IS_VAR) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (1 && (IS_TMP_VAR|IS_VAR) == IS_CONST && (IS_TMP_VAR|IS_VAR) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (1 && (IS_TMP_VAR|IS_VAR) == IS_CONST && (IS_TMP_VAR|IS_VAR) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - compare_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - boolean_xor_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container, *dim, *value; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_array: - value = zend_fetch_dimension_address_inner(Z_ARRVAL_P(container), dim, (IS_TMP_VAR|IS_VAR), BP_VAR_R EXECUTE_DATA_CC); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - } else if (EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_array; - } else { - goto fetch_dim_r_slow; - } - } else { -fetch_dim_r_slow: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_fetch_dimension_address_read_R(container, dim, (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - } - zval_ptr_dtor_nogc(free_op2); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_read_IS(container, _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC), (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - zend_free_op free_op2; - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || - ((IS_TMP_VAR|IS_VAR) != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - zend_wrong_property_read(offset); - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_r_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_REF /* FUNC_ARG fetch may contain it */); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_INFO_P(retval) != IS_UNDEF)) { - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { -fetch_obj_r_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - } - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_R, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_r_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_r_finish: - zval_ptr_dtor_nogc(free_op2); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - zend_free_op free_op2; - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || - ((IS_TMP_VAR|IS_VAR) != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_is_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_P(retval) != IS_UNDEF)) { - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { -fetch_obj_is_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - } - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_IS, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_is_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_is_finish: - zval_ptr_dtor_nogc(free_op2); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - zend_string *op1_str, *op2_str, *str; - - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (((IS_TMP_VAR|IS_VAR) == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - ((IS_TMP_VAR|IS_VAR) == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || (IS_TMP_VAR|IS_VAR) == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || (IS_TMP_VAR|IS_VAR) == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && (IS_TMP_VAR|IS_VAR) != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - op1_str = Z_STR_P(op1); - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - op1_str = zend_string_copy(Z_STR_P(op1)); - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - op1_str = zval_get_string_func(op1); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - op2_str = Z_STR_P(op2); - } else if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - op2_str = zend_string_copy(Z_STR_P(op2)); - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - op2_str = zval_get_string_func(op2); - } - do { - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op2))) { - GC_ADDREF(op2_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - zend_string_release_ex(op1_str, 0); - break; - } - } - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op1))) { - GC_ADDREF(op1_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - zend_string_release_ex(op2_str, 0); - break; - } - } - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zend_string_release_ex(op1_str, 0); - } - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zend_string_release_ex(op2_str, 0); - } - } while (0); - zval_ptr_dtor_nogc(free_op1); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_free_op free_op1, free_op2; - zval *object; - zend_function *fbc; - zend_class_entry *called_scope; - zend_object *obj; - zend_execute_data *call; - uint32_t call_info; - - SAVE_OPLINE(); - - object = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - } - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST && - UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Method name must be a string"); - zval_ptr_dtor_nogc(free_op2); - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } while (0); - } - - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - do { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(object))) { - object = Z_REFVAL_P(object); - if (EXPECTED(Z_TYPE_P(object) == IS_OBJECT)) { - break; - } - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - object = ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zval_ptr_dtor_nogc(free_op2); - } - HANDLE_EXCEPTION(); - } - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - } - zend_invalid_method_call(object, function_name); - zval_ptr_dtor_nogc(free_op2); - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } - } while (0); - } - - obj = Z_OBJ_P(object); - called_scope = obj->ce; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == called_scope)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else { - zend_object *orig_obj = obj; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - } - - /* First, locate the function. */ - fbc = obj->handlers->get_method(&obj, Z_STR_P(function_name), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(obj->ce, Z_STR_P(function_name)); - } - zval_ptr_dtor_nogc(free_op2); - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE))) && - EXPECTED(obj == orig_obj)) { - CACHE_POLYMORPHIC_PTR(opline->result.num, called_scope, fbc); - } - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(obj != orig_obj)) { - /* Reset "object" to trigger reference counting */ - object = NULL; - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zval_ptr_dtor_nogc(free_op2); - } - - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_STATIC) != 0)) { - zval_ptr_dtor_nogc(free_op1); - - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - /* call static method */ - obj = (zend_object*)called_scope; - call_info = ZEND_CALL_NESTED_FUNCTION; - } else if ((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_TMP_VAR|IS_CV)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CV) { - GC_ADDREF(obj); /* For $this pointer */ - } else if (free_op1 != object) { - GC_ADDREF(obj); /* For $this pointer */ - zval_ptr_dtor_nogc(free_op1); - } - /* CV may be changed indirectly (e.g. when it's a reference) */ - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS | ZEND_CALL_RELEASE_THIS; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, obj); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CASE_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -case_true: - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -case_false: - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto case_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -case_double: - if (d1 == d2) { - goto case_true; - } else { - goto case_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto case_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - zval_ptr_dtor_nogc(free_op2); - if (result) { - goto case_true; - } else { - goto case_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_case_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - int result; - zend_ulong hval; - zval *offset; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - zval *value; - zend_string *str; - -isset_dim_obj_array: - ht = Z_ARRVAL_P(container); -isset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index_prop; - } - } - value = zend_hash_find_ex_ind(ht, str, (IS_TMP_VAR|IS_VAR) == IS_CONST); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_prop: - value = zend_hash_index_find(ht, hval); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(offset))) { - offset = Z_REFVAL_P(offset); - goto isset_again; - } else { - value = zend_find_array_dim_slow(ht, offset EXECUTE_DATA_CC); - if (UNEXPECTED(EG(exception))) { - result = 0; - goto isset_dim_obj_exit; - } - } - - if (!(opline->extended_value & ZEND_ISEMPTY)) { - /* > IS_NULL means not IS_UNDEF and not IS_NULL */ - result = value != NULL && Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL); - - if ((IS_TMP_VAR|IS_VAR) & (IS_CONST|IS_CV)) { - /* avoid exception check */ - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } - } else { - result = (value == NULL || !i_zend_is_true(value)); - } - goto isset_dim_obj_exit; - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto isset_dim_obj_array; - } - } - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - result = zend_isset_dim_slow(container, offset EXECUTE_DATA_CC); - } else { - result = zend_isempty_dim_slow(container, offset EXECUTE_DATA_CC); - } - -isset_dim_obj_exit: - zval_ptr_dtor_nogc(free_op2); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - int result; - zval *offset; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || - ((IS_TMP_VAR|IS_VAR) != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } else { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } - - result = - (opline->extended_value & ZEND_ISEMPTY) ^ - Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_ISEMPTY) : NULL)); - -isset_object_finish: - zval_ptr_dtor_nogc(free_op2); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_free_op free_op1, free_op2; - zval *key, *subject; - HashTable *ht; - uint32_t result; - - SAVE_OPLINE(); - - key = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - subject = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { -array_key_exists_array: - ht = Z_ARRVAL_P(subject); - result = zend_array_key_exists_fast(ht, key OPLINE_CC EXECUTE_DATA_CC); - } else { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(subject))) { - subject = Z_REFVAL_P(subject); - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { - goto array_key_exists_array; - } - } - result = zend_array_key_exists_slow(subject, key OPLINE_CC EXECUTE_DATA_CC); - } - - zval_ptr_dtor_nogc(free_op2); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result == IS_TRUE, 1); - Z_TYPE_INFO_P(EX_VAR(opline->result.var)) = result; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|UNUSED|CV, ANY) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INSTANCEOF_SPEC_TMPVAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr; - zend_bool result; - - SAVE_OPLINE(); - expr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - -try_instanceof: - if (Z_TYPE_P(expr) == IS_OBJECT) { - zend_class_entry *ce; - - if (IS_VAR == IS_CONST) { - ce = CACHED_PTR(opline->extended_value); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD); - if (EXPECTED(ce)) { - CACHE_PTR(opline->extended_value, ce); - } - } - } else if (IS_VAR == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op2.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - zval_ptr_dtor_nogc(free_op1); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op2.var)); - } - result = ce && instanceof_function(Z_OBJCE_P(expr), ce); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_TYPE_P(expr) == IS_REFERENCE) { - expr = Z_REFVAL_P(expr); - goto try_instanceof; - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(expr) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - result = 0; - } - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_var_address_helper_SPEC_TMPVAR_UNUSED(int type ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - zend_free_op free_op1; - zval *varname; - zval *retval; - zend_string *name, *tmp_name; - HashTable *target_symbol_table; - - SAVE_OPLINE(); - varname = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - name = Z_STR_P(varname); - } else if (EXPECTED(Z_TYPE_P(varname) == IS_STRING)) { - name = Z_STR_P(varname); - tmp_name = NULL; - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(varname) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - name = zval_try_get_tmp_string(varname, &tmp_name); - if (UNEXPECTED(!name)) { - zval_ptr_dtor_nogc(free_op1); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - - target_symbol_table = zend_get_target_symbol_table(opline->extended_value EXECUTE_DATA_CC); - retval = zend_hash_find_ex(target_symbol_table, name, (IS_TMP_VAR|IS_VAR) == IS_CONST); - if (retval == NULL) { - if (UNEXPECTED(zend_string_equals(name, ZSTR_KNOWN(ZEND_STR_THIS)))) { -fetch_this: - zend_fetch_this_var(type OPLINE_CC EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - if (type == BP_VAR_W) { - retval = zend_hash_add_new(target_symbol_table, name, &EG(uninitialized_zval)); - } else if (type == BP_VAR_IS) { - retval = &EG(uninitialized_zval); - } else { - zend_error(E_NOTICE,"Undefined variable: %s", ZSTR_VAL(name)); - if (type == BP_VAR_RW) { - retval = zend_hash_update(target_symbol_table, name, &EG(uninitialized_zval)); - } else { - retval = &EG(uninitialized_zval); - } - } - /* GLOBAL or $$name variable may be an INDIRECT pointer to CV */ - } else if (Z_TYPE_P(retval) == IS_INDIRECT) { - retval = Z_INDIRECT_P(retval); - if (Z_TYPE_P(retval) == IS_UNDEF) { - if (UNEXPECTED(zend_string_equals(name, ZSTR_KNOWN(ZEND_STR_THIS)))) { - goto fetch_this; - } - if (type == BP_VAR_W) { - ZVAL_NULL(retval); - } else if (type == BP_VAR_IS) { - retval = &EG(uninitialized_zval); - } else { - zend_error(E_NOTICE,"Undefined variable: %s", ZSTR_VAL(name)); - if (type == BP_VAR_RW) { - ZVAL_NULL(retval); - } else { - retval = &EG(uninitialized_zval); - } - } - } - } - - if (!(opline->extended_value & ZEND_FETCH_GLOBAL_LOCK)) { - zval_ptr_dtor_nogc(free_op1); - } - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - - ZEND_ASSERT(retval != NULL); - if (type == BP_VAR_R || type == BP_VAR_IS) { - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else { - ZVAL_INDIRECT(EX_VAR(opline->result.var), retval); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_R_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_TMPVAR_UNUSED(BP_VAR_R ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_W_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_TMPVAR_UNUSED(BP_VAR_W ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_TMPVAR_UNUSED(BP_VAR_RW ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - int fetch_type = - (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) ? - BP_VAR_W : BP_VAR_R; - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_TMPVAR_UNUSED(fetch_type ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_TMPVAR_UNUSED(BP_VAR_UNSET ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_TMPVAR_UNUSED(BP_VAR_IS ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varname; - zend_string *name, *tmp_name; - HashTable *target_symbol_table; - zend_free_op free_op1; - - SAVE_OPLINE(); - - varname = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - name = Z_STR_P(varname); - } else if (EXPECTED(Z_TYPE_P(varname) == IS_STRING)) { - name = Z_STR_P(varname); - tmp_name = NULL; - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(varname) == IS_UNDEF)) { - varname = ZVAL_UNDEFINED_OP1(); - } - name = zval_try_get_tmp_string(varname, &tmp_name); - if (UNEXPECTED(!name)) { - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } - } - - target_symbol_table = zend_get_target_symbol_table(opline->extended_value EXECUTE_DATA_CC); - zend_hash_del_ind(target_symbol_table, name); - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - int result; - zend_free_op free_op1; - zval *varname; - zend_string *name, *tmp_name; - HashTable *target_symbol_table; - - SAVE_OPLINE(); - varname = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - name = Z_STR_P(varname); - } else { - name = zval_get_tmp_string(varname, &tmp_name); - } - - target_symbol_table = zend_get_target_symbol_table(opline->extended_value EXECUTE_DATA_CC); - value = zend_hash_find_ex(target_symbol_table, name, (IS_TMP_VAR|IS_VAR) == IS_CONST); - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - zval_ptr_dtor_nogc(free_op1); - - if (!value) { - result = (opline->extended_value & ZEND_ISEMPTY); - } else { - if (Z_TYPE_P(value) == IS_INDIRECT) { - value = Z_INDIRECT_P(value); - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - if (Z_ISREF_P(value)) { - value = Z_REFVAL_P(value); - } - result = Z_TYPE_P(value) > IS_NULL; - } else { - result = !i_zend_is_true(value); - } - } - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr; - zend_bool result; - - SAVE_OPLINE(); - expr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - -try_instanceof: - if (Z_TYPE_P(expr) == IS_OBJECT) { - zend_class_entry *ce; - - if (IS_UNUSED == IS_CONST) { - ce = CACHED_PTR(opline->extended_value); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD); - if (EXPECTED(ce)) { - CACHE_PTR(opline->extended_value, ce); - } - } - } else if (IS_UNUSED == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op2.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - zval_ptr_dtor_nogc(free_op1); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op2.var)); - } - result = ce && instanceof_function(Z_OBJCE_P(expr), ce); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_TYPE_P(expr) == IS_REFERENCE) { - expr = Z_REFVAL_P(expr); - goto try_instanceof; - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(expr) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - result = 0; - } - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_COUNT_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1; - zend_long count; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - while (1) { - if (Z_TYPE_P(op1) == IS_ARRAY) { - count = zend_array_count(Z_ARRVAL_P(op1)); - break; - } else if (Z_TYPE_P(op1) == IS_OBJECT) { - /* first, we check if the handler is defined */ - if (Z_OBJ_HT_P(op1)->count_elements) { - if (SUCCESS == Z_OBJ_HT_P(op1)->count_elements(op1, &count)) { - break; - } - if (UNEXPECTED(EG(exception))) { - count = 0; - break; - } - } - - /* if not and the object implements Countable we call its count() method */ - if (instanceof_function(Z_OBJCE_P(op1), zend_ce_countable)) { - zval retval; - - zend_call_method_with_0_params(op1, NULL, NULL, "count", &retval); - count = zval_get_long(&retval); - zval_ptr_dtor(&retval); - break; - } - - /* If There's no handler and it doesn't implement Countable then add a warning */ - count = 1; - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) != 0 && Z_TYPE_P(op1) == IS_REFERENCE) { - op1 = Z_REFVAL_P(op1); - continue; - } else if (Z_TYPE_P(op1) <= IS_NULL) { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - count = 0; - } else { - count = 1; - } - zend_error(E_WARNING, "%s(): Parameter must be an array or an object that implements Countable", opline->extended_value ? "sizeof" : "count"); - break; - } - - ZVAL_LONG(EX_VAR(opline->result.var), count); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GET_CLASS_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - if (UNEXPECTED(!EX(func)->common.scope)) { - SAVE_OPLINE(); - zend_error(E_WARNING, "get_class() called without object from outside a class"); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZVAL_STR_COPY(EX_VAR(opline->result.var), EX(func)->common.scope->name); - ZEND_VM_NEXT_OPCODE(); - } - } else { - zend_free_op free_op1; - zval *op1; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - while (1) { - if (Z_TYPE_P(op1) == IS_OBJECT) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), Z_OBJCE_P(op1)->name); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) != 0 && Z_TYPE_P(op1) == IS_REFERENCE) { - op1 = Z_REFVAL_P(op1); - continue; - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - zend_error(E_WARNING, "get_class() expects parameter 1 to be object, %s given", zend_get_type_by_const(Z_TYPE_P(op1))); - ZVAL_FALSE(EX_VAR(opline->result.var)); - } - break; - } - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_COPY_TMP_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zval *result = EX_VAR(opline->result.var); - ZVAL_COPY(result, value); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DIV_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - fast_div_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POW_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - pow_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CONCAT_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = EX_VAR(opline->op2.var); - - if (((IS_TMP_VAR|IS_VAR) == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - (IS_CV == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CV == IS_CONST || IS_CV == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if (IS_CV != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || (IS_TMP_VAR|IS_VAR) == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && (IS_TMP_VAR|IS_VAR) != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - if (UNEXPECTED(len > ZSTR_MAX_LEN - ZSTR_LEN(op2_str))) { - zend_error_noreturn(E_ERROR, "Integer overflow in memory allocation"); - } - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } else { - SAVE_OPLINE(); - - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = ZVAL_UNDEFINED_OP1(); - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - op2 = ZVAL_UNDEFINED_OP2(); - } - concat_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SPACESHIP_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - compare_function(EX_VAR(opline->result.var), op1, op2); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container, *dim, *value; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - dim = EX_VAR(opline->op2.var); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_array: - value = zend_fetch_dimension_address_inner(Z_ARRVAL_P(container), dim, IS_CV, BP_VAR_R EXECUTE_DATA_CC); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - } else if (EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_array; - } else { - goto fetch_dim_r_slow; - } - } else { -fetch_dim_r_slow: - if (IS_CV == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_fetch_dimension_address_read_R(container, dim, IS_CV OPLINE_CC EXECUTE_DATA_CC); - } - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_read_IS(container, EX_VAR(opline->op2.var), IS_CV OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = EX_VAR(opline->op2.var); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || - ((IS_TMP_VAR|IS_VAR) != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - zend_wrong_property_read(offset); - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_r_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CV == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_REF /* FUNC_ARG fetch may contain it */); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_INFO_P(retval) != IS_UNDEF)) { - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { -fetch_obj_r_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - } - } else if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_R, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_r_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_r_finish: - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || - ((IS_TMP_VAR|IS_VAR) != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_is_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CV == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_P(retval) != IS_UNDEF)) { - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { -fetch_obj_is_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - } - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_IS, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_is_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_is_finish: - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FAST_CONCAT_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - zend_string *op1_str, *op2_str, *str; - - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = EX_VAR(opline->op2.var); - if (((IS_TMP_VAR|IS_VAR) == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - (IS_CV == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CV == IS_CONST || IS_CV == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if (IS_CV != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || (IS_TMP_VAR|IS_VAR) == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && (IS_TMP_VAR|IS_VAR) != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - op1_str = Z_STR_P(op1); - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - op1_str = zend_string_copy(Z_STR_P(op1)); - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - op1_str = zval_get_string_func(op1); - } - if (IS_CV == IS_CONST) { - op2_str = Z_STR_P(op2); - } else if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - op2_str = zend_string_copy(Z_STR_P(op2)); - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - op2_str = zval_get_string_func(op2); - } - do { - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op2))) { - GC_ADDREF(op2_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - zend_string_release_ex(op1_str, 0); - break; - } - } - if (IS_CV != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op1))) { - GC_ADDREF(op1_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - zend_string_release_ex(op2_str, 0); - break; - } - } - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CV != IS_CONST) { - zend_string_release_ex(op2_str, 0); - } - } while (0); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_free_op free_op1; - zval *object; - zend_function *fbc; - zend_class_entry *called_scope; - zend_object *obj; - zend_execute_data *call; - uint32_t call_info; - - SAVE_OPLINE(); - - object = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - if (IS_CV != IS_CONST) { - function_name = EX_VAR(opline->op2.var); - } - - if (IS_CV != IS_CONST && - UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Method name must be a string"); - - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } while (0); - } - - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - do { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(object))) { - object = Z_REFVAL_P(object); - if (EXPECTED(Z_TYPE_P(object) == IS_OBJECT)) { - break; - } - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - object = ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if (IS_CV != IS_CONST) { - - } - HANDLE_EXCEPTION(); - } - } - if (IS_CV == IS_CONST) { - function_name = EX_VAR(opline->op2.var); - } - zend_invalid_method_call(object, function_name); - - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } - } while (0); - } - - obj = Z_OBJ_P(object); - called_scope = obj->ce; - - if (IS_CV == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == called_scope)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else { - zend_object *orig_obj = obj; - - if (IS_CV == IS_CONST) { - function_name = EX_VAR(opline->op2.var); - } - - /* First, locate the function. */ - fbc = obj->handlers->get_method(&obj, Z_STR_P(function_name), ((IS_CV == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(obj->ce, Z_STR_P(function_name)); - } - - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } - if (IS_CV == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE))) && - EXPECTED(obj == orig_obj)) { - CACHE_POLYMORPHIC_PTR(opline->result.num, called_scope, fbc); - } - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(obj != orig_obj)) { - /* Reset "object" to trigger reference counting */ - object = NULL; - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (IS_CV != IS_CONST) { - - } - - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_STATIC) != 0)) { - zval_ptr_dtor_nogc(free_op1); - - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - /* call static method */ - obj = (zend_object*)called_scope; - call_info = ZEND_CALL_NESTED_FUNCTION; - } else if ((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_TMP_VAR|IS_CV)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CV) { - GC_ADDREF(obj); /* For $this pointer */ - } else if (free_op1 != object) { - GC_ADDREF(obj); /* For $this pointer */ - zval_ptr_dtor_nogc(free_op1); - } - /* CV may be changed indirectly (e.g. when it's a reference) */ - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS | ZEND_CALL_RELEASE_THIS; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, obj); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CASE_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - double d1, d2; - - op1 = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = EX_VAR(opline->op2.var); - if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -case_true: - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -case_false: - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto case_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -case_double: - if (d1 == d2) { - goto case_true; - } else { - goto case_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto case_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - - if (result) { - goto case_true; - } else { - goto case_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_case_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - int result; - zend_ulong hval; - zval *offset; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - offset = EX_VAR(opline->op2.var); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - zval *value; - zend_string *str; - -isset_dim_obj_array: - ht = Z_ARRVAL_P(container); -isset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CV != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index_prop; - } - } - value = zend_hash_find_ex_ind(ht, str, IS_CV == IS_CONST); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_prop: - value = zend_hash_index_find(ht, hval); - } else if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(offset))) { - offset = Z_REFVAL_P(offset); - goto isset_again; - } else { - value = zend_find_array_dim_slow(ht, offset EXECUTE_DATA_CC); - if (UNEXPECTED(EG(exception))) { - result = 0; - goto isset_dim_obj_exit; - } - } - - if (!(opline->extended_value & ZEND_ISEMPTY)) { - /* > IS_NULL means not IS_UNDEF and not IS_NULL */ - result = value != NULL && Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL); - - if ((IS_TMP_VAR|IS_VAR) & (IS_CONST|IS_CV)) { - /* avoid exception check */ - - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } - } else { - result = (value == NULL || !i_zend_is_true(value)); - } - goto isset_dim_obj_exit; - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto isset_dim_obj_array; - } - } - - if (IS_CV == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - result = zend_isset_dim_slow(container, offset EXECUTE_DATA_CC); - } else { - result = zend_isempty_dim_slow(container, offset EXECUTE_DATA_CC); - } - -isset_dim_obj_exit: - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - int result; - zval *offset; - - SAVE_OPLINE(); - container = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || - ((IS_TMP_VAR|IS_VAR) != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } else { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } - - result = - (opline->extended_value & ZEND_ISEMPTY) ^ - Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY), ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_ISEMPTY) : NULL)); - -isset_object_finish: - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_free_op free_op1; - zval *key, *subject; - HashTable *ht; - uint32_t result; - - SAVE_OPLINE(); - - key = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - subject = EX_VAR(opline->op2.var); - - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { -array_key_exists_array: - ht = Z_ARRVAL_P(subject); - result = zend_array_key_exists_fast(ht, key OPLINE_CC EXECUTE_DATA_CC); - } else { - if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(subject))) { - subject = Z_REFVAL_P(subject); - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { - goto array_key_exists_array; - } - } - result = zend_array_key_exists_slow(subject, key OPLINE_CC EXECUTE_DATA_CC); - } - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result == IS_TRUE, 1); - Z_TYPE_INFO_P(EX_VAR(opline->result.var)) = result; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|UNUSED|CV, ANY) */ -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RETURN_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *retval_ptr; - zval *return_value; - zend_free_op free_op1; - - retval_ptr = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - return_value = EX(return_value); - if (IS_TMP_VAR == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(retval_ptr) == IS_UNDEF)) { - SAVE_OPLINE(); - retval_ptr = ZVAL_UNDEFINED_OP1(); - if (return_value) { - ZVAL_NULL(return_value); - } - } else if (!return_value) { - if (IS_TMP_VAR & (IS_VAR|IS_TMP_VAR)) { - if (Z_REFCOUNTED_P(free_op1) && !Z_DELREF_P(free_op1)) { - SAVE_OPLINE(); - rc_dtor_func(Z_COUNTED_P(free_op1)); - } - } - } else { - if ((IS_TMP_VAR & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(return_value))) { - Z_ADDREF_P(return_value); - } - } - } else if (IS_TMP_VAR == IS_CV) { - do { - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - if (EXPECTED(!Z_OPT_ISREF_P(retval_ptr))) { - if (EXPECTED(!(EX_CALL_INFO() & ZEND_CALL_CODE))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (GC_MAY_LEAK(ref)) { - gc_possible_root(ref); - } - ZVAL_NULL(retval_ptr); - break; - } else { - Z_ADDREF_P(retval_ptr); - } - } else { - retval_ptr = Z_REFVAL_P(retval_ptr); - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } - } - ZVAL_COPY_VALUE(return_value, retval_ptr); - } while (0); - } else /* if (IS_TMP_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - - retval_ptr = Z_REFVAL_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } else { - ZVAL_COPY_VALUE(return_value, retval_ptr); - } - } - } - ZEND_VM_TAIL_CALL(zend_leave_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RETURN_BY_REF_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *retval_ptr; - zend_free_op free_op1; - - SAVE_OPLINE(); - - do { - if ((IS_TMP_VAR & (IS_CONST|IS_TMP_VAR)) || - (IS_TMP_VAR == IS_VAR && opline->extended_value == ZEND_RETURNS_VALUE)) { - /* Not supposed to happen, but we'll allow it */ - zend_error(E_NOTICE, "Only variable references should be returned by reference"); - - retval_ptr = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (!EX(return_value)) { - zval_ptr_dtor_nogc(free_op1); - } else { - if (IS_TMP_VAR == IS_VAR && UNEXPECTED(Z_ISREF_P(retval_ptr))) { - ZVAL_COPY_VALUE(EX(return_value), retval_ptr); - break; - } - - ZVAL_NEW_REF(EX(return_value), retval_ptr); - if (IS_TMP_VAR == IS_CONST) { - Z_TRY_ADDREF_P(retval_ptr); - } - } - break; - } - - retval_ptr = NULL; - - if (IS_TMP_VAR == IS_VAR) { - ZEND_ASSERT(retval_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION && !Z_ISREF_P(retval_ptr)) { - zend_error(E_NOTICE, "Only variable references should be returned by reference"); - if (EX(return_value)) { - ZVAL_NEW_REF(EX(return_value), retval_ptr); - } else { - - } - break; - } - } - - if (EX(return_value)) { - if (Z_ISREF_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } else { - ZVAL_MAKE_REF_EX(retval_ptr, 2); - } - ZVAL_REF(EX(return_value), Z_REF_P(retval_ptr)); - } - - } while (0); - - ZEND_VM_TAIL_CALL(zend_leave_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GENERATOR_RETURN_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *retval; - zend_free_op free_op1; - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - retval = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* Copy return value into generator->retval */ - if ((IS_TMP_VAR & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(&generator->retval, retval); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->retval))) { - Z_ADDREF(generator->retval); - } - } - } else if (IS_TMP_VAR == IS_CV) { - ZVAL_COPY_DEREF(&generator->retval, retval); - } else /* if (IS_TMP_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_refcounted *ref = Z_COUNTED_P(retval); - - retval = Z_REFVAL_P(retval); - ZVAL_COPY_VALUE(&generator->retval, retval); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval)) { - Z_ADDREF_P(retval); - } - } else { - ZVAL_COPY_VALUE(&generator->retval, retval); - } - } - - /* Close the generator to free up resources */ - zend_generator_close(generator, 1); - - /* Pass execution back to handling code */ - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_THROW_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - zend_free_op free_op1; - - SAVE_OPLINE(); - value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - do { - if (IS_TMP_VAR == IS_CONST || UNEXPECTED(Z_TYPE_P(value) != IS_OBJECT)) { - if ((IS_TMP_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - value = Z_REFVAL_P(value); - if (EXPECTED(Z_TYPE_P(value) == IS_OBJECT)) { - break; - } - } - if (IS_TMP_VAR == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Can only throw objects"); - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } - } while (0); - - zend_exception_save(); - if (IS_TMP_VAR != IS_TMP_VAR) { - Z_TRY_ADDREF_P(value); - } - - zend_throw_exception_object(value); - zend_exception_restore(); - - HANDLE_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAL_EX_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value, *arg; - zend_free_op free_op1; - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(0)) { - if (QUICK_ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - goto send_val_by_ref; - } - } else if (ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { -send_val_by_ref: - ZEND_VM_TAIL_CALL(zend_cannot_pass_by_ref_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, value); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(arg))) { - Z_ADDREF_P(arg); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAL_EX_SPEC_TMP_QUICK_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value, *arg; - zend_free_op free_op1; - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(1)) { - if (QUICK_ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - goto send_val_by_ref; - } - } else if (ARG_MUST_BE_SENT_BY_REF(EX(call)->func, arg_num)) { -send_val_by_ref: - ZEND_VM_TAIL_CALL(zend_cannot_pass_by_ref_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, value); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(arg))) { - Z_ADDREF_P(arg); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_USER_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *arg, *param; - zend_free_op free_op1; - - SAVE_OPLINE(); - - if (UNEXPECTED(ARG_MUST_BE_SENT_BY_REF(EX(call)->func, opline->op2.num))) { - zend_param_must_be_ref(EX(call)->func, opline->op2.num); - } - - arg = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - param = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY(param, arg); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CAST_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr; - zval *result = EX_VAR(opline->result.var); - HashTable *ht; - - SAVE_OPLINE(); - expr = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - switch (opline->extended_value) { - case IS_NULL: - ZVAL_NULL(result); - break; - case _IS_BOOL: - ZVAL_BOOL(result, zend_is_true(expr)); - break; - case IS_LONG: - ZVAL_LONG(result, zval_get_long(expr)); - break; - case IS_DOUBLE: - ZVAL_DOUBLE(result, zval_get_double(expr)); - break; - case IS_STRING: - ZVAL_STR(result, zval_get_string(expr)); - break; - default: - if (IS_TMP_VAR & (IS_VAR|IS_CV)) { - ZVAL_DEREF(expr); - } - /* If value is already of correct type, return it directly */ - if (Z_TYPE_P(expr) == opline->extended_value) { - ZVAL_COPY_VALUE(result, expr); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (IS_TMP_VAR != IS_TMP_VAR) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - if (opline->extended_value == IS_ARRAY) { - if (IS_TMP_VAR == IS_CONST || Z_TYPE_P(expr) != IS_OBJECT || Z_OBJCE_P(expr) == zend_ce_closure) { - if (Z_TYPE_P(expr) != IS_NULL) { - ZVAL_ARR(result, zend_new_array(1)); - expr = zend_hash_index_add_new(Z_ARRVAL_P(result), 0, expr); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(expr))) Z_ADDREF_P(expr); - } else { - if (Z_OPT_REFCOUNTED_P(expr)) Z_ADDREF_P(expr); - } - } else { - ZVAL_EMPTY_ARRAY(result); - } - } else { - HashTable *obj_ht = zend_get_properties_for(expr, ZEND_PROP_PURPOSE_ARRAY_CAST); - if (obj_ht) { - /* fast copy */ - ZVAL_ARR(result, zend_proptable_to_symtable(obj_ht, - (Z_OBJCE_P(expr)->default_properties_count || - Z_OBJ_P(expr)->handlers != &std_object_handlers || - GC_IS_RECURSIVE(obj_ht)))); - zend_release_properties(obj_ht); - } else { - ZVAL_EMPTY_ARRAY(result); - } - } - } else { - ZVAL_OBJ(result, zend_objects_new(zend_standard_class_def)); - if (Z_TYPE_P(expr) == IS_ARRAY) { - ht = zend_symtable_to_proptable(Z_ARR_P(expr)); - if (GC_FLAGS(ht) & IS_ARRAY_IMMUTABLE) { - /* TODO: try not to duplicate immutable arrays as well ??? */ - ht = zend_array_dup(ht); - } - Z_OBJ_P(result)->properties = ht; - } else if (Z_TYPE_P(expr) != IS_NULL) { - Z_OBJ_P(result)->properties = ht = zend_new_array(1); - expr = zend_hash_add_new(ht, ZSTR_KNOWN(ZEND_STR_SCALAR), expr); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(expr))) Z_ADDREF_P(expr); - } else { - if (Z_OPT_REFCOUNTED_P(expr)) Z_ADDREF_P(expr); - } - } - } - } - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_RESET_R_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *array_ptr, *result; - - SAVE_OPLINE(); - - array_ptr = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (EXPECTED(Z_TYPE_P(array_ptr) == IS_ARRAY)) { - result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, array_ptr); - if (IS_TMP_VAR != IS_TMP_VAR && Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(array_ptr); - } - Z_FE_POS_P(result) = 0; - - ZEND_VM_NEXT_OPCODE(); - } else if (IS_TMP_VAR != IS_CONST && EXPECTED(Z_TYPE_P(array_ptr) == IS_OBJECT)) { - if (!Z_OBJCE_P(array_ptr)->get_iterator) { - HashTable *properties; - if (Z_OBJ_P(array_ptr)->properties - && UNEXPECTED(GC_REFCOUNT(Z_OBJ_P(array_ptr)->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(Z_OBJ_P(array_ptr)->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(Z_OBJ_P(array_ptr)->properties); - } - Z_OBJ_P(array_ptr)->properties = zend_array_dup(Z_OBJ_P(array_ptr)->properties); - } - - properties = Z_OBJPROP_P(array_ptr); - result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, array_ptr); - if (IS_TMP_VAR != IS_TMP_VAR) { - Z_ADDREF_P(array_ptr); - } - - if (zend_hash_num_elements(properties) == 0) { - Z_FE_ITER_P(result) = (uint32_t) -1; - - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } - - Z_FE_ITER_P(result) = zend_hash_iterator_add(properties, 0); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - zend_bool is_empty = zend_fe_reset_iterator(array_ptr, 0 OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op1); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } else if (is_empty) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - } else { - zend_error(E_WARNING, "Invalid argument supplied for foreach()"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t)-1; - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_RESET_RW_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *array_ptr, *array_ref; - - SAVE_OPLINE(); - - if (IS_TMP_VAR == IS_VAR || IS_TMP_VAR == IS_CV) { - array_ref = array_ptr = NULL; - if (Z_ISREF_P(array_ref)) { - array_ptr = Z_REFVAL_P(array_ref); - } - } else { - array_ref = array_ptr = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - } - - if (EXPECTED(Z_TYPE_P(array_ptr) == IS_ARRAY)) { - if (IS_TMP_VAR == IS_VAR || IS_TMP_VAR == IS_CV) { - if (array_ptr == array_ref) { - ZVAL_NEW_REF(array_ref, array_ref); - array_ptr = Z_REFVAL_P(array_ref); - } - Z_ADDREF_P(array_ref); - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), array_ref); - } else { - array_ref = EX_VAR(opline->result.var); - ZVAL_NEW_REF(array_ref, array_ptr); - array_ptr = Z_REFVAL_P(array_ref); - } - if (IS_TMP_VAR == IS_CONST) { - ZVAL_ARR(array_ptr, zend_array_dup(Z_ARRVAL_P(array_ptr))); - } else { - SEPARATE_ARRAY(array_ptr); - } - Z_FE_ITER_P(EX_VAR(opline->result.var)) = zend_hash_iterator_add(Z_ARRVAL_P(array_ptr), 0); - - if (IS_TMP_VAR == IS_VAR) { - - } - ZEND_VM_NEXT_OPCODE(); - } else if (IS_TMP_VAR != IS_CONST && EXPECTED(Z_TYPE_P(array_ptr) == IS_OBJECT)) { - if (!Z_OBJCE_P(array_ptr)->get_iterator) { - HashTable *properties; - if (IS_TMP_VAR == IS_VAR || IS_TMP_VAR == IS_CV) { - if (array_ptr == array_ref) { - ZVAL_NEW_REF(array_ref, array_ref); - array_ptr = Z_REFVAL_P(array_ref); - } - Z_ADDREF_P(array_ref); - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), array_ref); - } else { - array_ptr = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(array_ptr, array_ref); - } - if (Z_OBJ_P(array_ptr)->properties - && UNEXPECTED(GC_REFCOUNT(Z_OBJ_P(array_ptr)->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(Z_OBJ_P(array_ptr)->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(Z_OBJ_P(array_ptr)->properties); - } - Z_OBJ_P(array_ptr)->properties = zend_array_dup(Z_OBJ_P(array_ptr)->properties); - } - - properties = Z_OBJPROP_P(array_ptr); - if (zend_hash_num_elements(properties) == 0) { - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t) -1; - - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } - - Z_FE_ITER_P(EX_VAR(opline->result.var)) = zend_hash_iterator_add(properties, 0); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - zend_bool is_empty = zend_fe_reset_iterator(array_ptr, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_TMP_VAR == IS_VAR) { - - } else { - zval_ptr_dtor_nogc(free_op1); - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } else if (is_empty) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - } else { - zend_error(E_WARNING, "Invalid argument supplied for foreach()"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t)-1; - if (IS_TMP_VAR == IS_VAR) { - - } else { - zval_ptr_dtor_nogc(free_op1); - } - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_END_SILENCE_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - if (!EG(error_reporting) && Z_LVAL_P(EX_VAR(opline->op1.var)) != 0) { - EG(error_reporting) = Z_LVAL_P(EX_VAR(opline->op1.var)); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMP_SET_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - zval *ref = NULL; - int ret; - - SAVE_OPLINE(); - value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR == IS_VAR || IS_TMP_VAR == IS_CV) && Z_ISREF_P(value)) { - if (IS_TMP_VAR == IS_VAR) { - ref = value; - } - value = Z_REFVAL_P(value); - } - - ret = i_zend_is_true(value); - - if (UNEXPECTED(EG(exception))) { - zval_ptr_dtor_nogc(free_op1); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - - if (ret) { - zval *result = EX_VAR(opline->result.var); - - ZVAL_COPY_VALUE(result, value); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (IS_TMP_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } else if (IS_TMP_VAR == IS_VAR && ref) { - zend_reference *r = Z_REF_P(ref); - - if (UNEXPECTED(GC_DELREF(r) == 0)) { - efree_size(r, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_COALESCE_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - zval *ref = NULL; - - SAVE_OPLINE(); - value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_TMP_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - if (IS_TMP_VAR & IS_VAR) { - ref = value; - } - value = Z_REFVAL_P(value); - } - - if (Z_TYPE_P(value) > IS_NULL) { - zval *result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, value); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (IS_TMP_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } else if ((IS_TMP_VAR & IS_VAR) && ref) { - zend_reference *r = Z_REF_P(ref); - - if (UNEXPECTED(GC_DELREF(r) == 0)) { - efree_size(r, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_QM_ASSIGN_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - zval *result = EX_VAR(opline->result.var); - - value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_TMP_VAR == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZVAL_NULL(result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - if (IS_TMP_VAR == IS_CV) { - ZVAL_COPY_DEREF(result, value); - } else if (IS_TMP_VAR == IS_VAR) { - if (UNEXPECTED(Z_ISREF_P(value))) { - ZVAL_COPY_VALUE(result, Z_REFVAL_P(value)); - if (UNEXPECTED(Z_DELREF_P(value) == 0)) { - efree_size(Z_REF_P(value), sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } else { - ZVAL_COPY_VALUE(result, value); - } - } else { - ZVAL_COPY_VALUE(result, value); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) { - Z_ADDREF_P(result); - } - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_FROM_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - zval *val; - zend_free_op free_op1; - - SAVE_OPLINE(); - val = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - zend_throw_error(NULL, "Cannot use \"yield from\" in a force-closed generator"); - zval_ptr_dtor_nogc(free_op1); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - if (Z_TYPE_P(val) == IS_ARRAY) { - ZVAL_COPY_VALUE(&generator->values, val); - if (IS_TMP_VAR != IS_TMP_VAR && Z_OPT_REFCOUNTED_P(val)) { - Z_ADDREF_P(val); - } - Z_FE_POS(generator->values) = 0; - - } else if (IS_TMP_VAR != IS_CONST && Z_TYPE_P(val) == IS_OBJECT && Z_OBJCE_P(val)->get_iterator) { - zend_class_entry *ce = Z_OBJCE_P(val); - if (ce == zend_ce_generator) { - zend_generator *new_gen = (zend_generator *) Z_OBJ_P(val); - - if (IS_TMP_VAR != IS_TMP_VAR) { - Z_ADDREF_P(val); - } - - if (Z_ISUNDEF(new_gen->retval)) { - if (UNEXPECTED(zend_generator_get_current(new_gen) == generator)) { - zend_throw_error(NULL, "Impossible to yield from the Generator being currently run"); - zval_ptr_dtor(val); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else { - zend_generator_yield_from(generator, new_gen); - } - } else if (UNEXPECTED(new_gen->execute_data == NULL)) { - zend_throw_error(NULL, "Generator passed to yield from was aborted without proper return and is unable to continue"); - zval_ptr_dtor(val); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else { - if (RETURN_VALUE_USED(opline)) { - ZVAL_COPY(EX_VAR(opline->result.var), &new_gen->retval); - } - ZEND_VM_NEXT_OPCODE(); - } - } else { - zend_object_iterator *iter = ce->get_iterator(ce, val, 0); - zval_ptr_dtor_nogc(free_op1); - - if (UNEXPECTED(!iter) || UNEXPECTED(EG(exception))) { - if (!EG(exception)) { - zend_throw_error(NULL, "Object of type %s did not create an Iterator", ZSTR_VAL(ce->name)); - } - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - iter->index = 0; - if (iter->funcs->rewind) { - iter->funcs->rewind(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - OBJ_RELEASE(&iter->std); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - } - - ZVAL_OBJ(&generator->values, &iter->std); - } - } else { - zend_throw_error(NULL, "Can use \"yield from\" only with arrays and Traversables"); - zval_ptr_dtor_nogc(free_op1); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - /* This is the default return value - * when the expression is a Generator, it will be overwritten in zend_generator_resume() */ - if (RETURN_VALUE_USED(opline)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - - /* This generator has no send target (though the generator we delegate to might have one) */ - generator->send_target = NULL; - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_IDENTICAL_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - result = fast_is_identical_function(op1, op2); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_IDENTICAL_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - result = fast_is_not_identical_function(op1, op2); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_TMP_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if (IS_CONST == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_TMP_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ROPE_ADD_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_string **rope; - zval *var; - - /* op1 and result are the same */ - rope = (zend_string**)EX_VAR(opline->op1.var); - if (IS_CONST == IS_CONST) { - var = RT_CONSTANT(opline, opline->op2); - rope[opline->extended_value] = Z_STR_P(var); - if (UNEXPECTED(Z_REFCOUNTED_P(var))) { - Z_ADDREF_P(var); - } - } else { - var = RT_CONSTANT(opline, opline->op2); - if (EXPECTED(Z_TYPE_P(var) == IS_STRING)) { - if (IS_CONST == IS_CV) { - rope[opline->extended_value] = zend_string_copy(Z_STR_P(var)); - } else { - rope[opline->extended_value] = Z_STR_P(var); - } - } else { - SAVE_OPLINE(); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(var) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - rope[opline->extended_value] = zval_get_string_func(var); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ROPE_END_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_string **rope; - zval *var, *ret; - uint32_t i; - size_t len = 0; - char *target; - - rope = (zend_string**)EX_VAR(opline->op1.var); - if (IS_CONST == IS_CONST) { - var = RT_CONSTANT(opline, opline->op2); - rope[opline->extended_value] = Z_STR_P(var); - if (UNEXPECTED(Z_REFCOUNTED_P(var))) { - Z_ADDREF_P(var); - } - } else { - var = RT_CONSTANT(opline, opline->op2); - if (EXPECTED(Z_TYPE_P(var) == IS_STRING)) { - if (IS_CONST == IS_CV) { - rope[opline->extended_value] = zend_string_copy(Z_STR_P(var)); - } else { - rope[opline->extended_value] = Z_STR_P(var); - } - } else { - SAVE_OPLINE(); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(var) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - rope[opline->extended_value] = zval_get_string_func(var); - - if (UNEXPECTED(EG(exception))) { - for (i = 0; i <= opline->extended_value; i++) { - zend_string_release_ex(rope[i], 0); - } - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - } - for (i = 0; i <= opline->extended_value; i++) { - len += ZSTR_LEN(rope[i]); - } - ret = EX_VAR(opline->result.var); - ZVAL_STR(ret, zend_string_alloc(len, 0)); - target = Z_STRVAL_P(ret); - for (i = 0; i <= opline->extended_value; i++) { - memcpy(target, ZSTR_VAL(rope[i]), ZSTR_LEN(rope[i])); - target += ZSTR_LEN(rope[i]); - zend_string_release_ex(rope[i], 0); - } - *target = '\0'; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_TMP_VAR == IS_VAR || IS_TMP_VAR == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = NULL; - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - - } else { - expr_ptr = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_TMP_VAR == IS_TMP_VAR) { - /* pass */ - } else if (IS_TMP_VAR == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_TMP_VAR == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_TMP_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if (IS_CONST != IS_UNUSED) { - - zval *offset = RT_CONSTANT(opline, opline->op2); - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CONST != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if (IS_CONST == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_TMP_VAR != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_TMP_VAR != IS_UNUSED) { - zend_free_op free_op1; - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_TMP_VAR & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_TMP_VAR == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_TMP_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_TMP_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_TMP_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_TMP_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_CONST != IS_UNUSED) { - - zval *key = RT_CONSTANT(opline, opline->op2); - - /* Consts, temporary variables and references need copying */ - if (IS_CONST == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_CONST == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_CONST == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IN_ARRAY_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1; - HashTable *ht = Z_ARRVAL_P(RT_CONSTANT(opline, opline->op2)); - zval *result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - result = zend_hash_find_ex(ht, Z_STR_P(op1), IS_TMP_VAR == IS_CONST); - } else if (opline->extended_value) { - if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - result = zend_hash_index_find(ht, Z_LVAL_P(op1)); - } else { - result = NULL; - } - } else if (Z_TYPE_P(op1) <= IS_FALSE) { - result = zend_hash_find_ex(ht, ZSTR_EMPTY_ALLOC(), 1); - } else { - zend_string *key; - zval key_tmp, result_tmp, *val; - - result = NULL; - ZEND_HASH_FOREACH_STR_KEY_VAL(ht, key, val) { - ZVAL_STR(&key_tmp, key); - compare_function(&result_tmp, op1, &key_tmp); - if (Z_LVAL(result_tmp) == 0) { - result = val; - break; - } - } ZEND_HASH_FOREACH_END(); - } - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result != NULL); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_TMP_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_TMP_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ROPE_ADD_SPEC_TMP_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zend_string **rope; - zval *var; - - /* op1 and result are the same */ - rope = (zend_string**)EX_VAR(opline->op1.var); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - var = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - rope[opline->extended_value] = Z_STR_P(var); - if (UNEXPECTED(Z_REFCOUNTED_P(var))) { - Z_ADDREF_P(var); - } - } else { - var = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (EXPECTED(Z_TYPE_P(var) == IS_STRING)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CV) { - rope[opline->extended_value] = zend_string_copy(Z_STR_P(var)); - } else { - rope[opline->extended_value] = Z_STR_P(var); - } - } else { - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(var) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - rope[opline->extended_value] = zval_get_string_func(var); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ROPE_END_SPEC_TMP_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zend_string **rope; - zval *var, *ret; - uint32_t i; - size_t len = 0; - char *target; - - rope = (zend_string**)EX_VAR(opline->op1.var); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - var = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - rope[opline->extended_value] = Z_STR_P(var); - if (UNEXPECTED(Z_REFCOUNTED_P(var))) { - Z_ADDREF_P(var); - } - } else { - var = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (EXPECTED(Z_TYPE_P(var) == IS_STRING)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CV) { - rope[opline->extended_value] = zend_string_copy(Z_STR_P(var)); - } else { - rope[opline->extended_value] = Z_STR_P(var); - } - } else { - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(var) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - rope[opline->extended_value] = zval_get_string_func(var); - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(EG(exception))) { - for (i = 0; i <= opline->extended_value; i++) { - zend_string_release_ex(rope[i], 0); - } - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - } - for (i = 0; i <= opline->extended_value; i++) { - len += ZSTR_LEN(rope[i]); - } - ret = EX_VAR(opline->result.var); - ZVAL_STR(ret, zend_string_alloc(len, 0)); - target = Z_STRVAL_P(ret); - for (i = 0; i <= opline->extended_value; i++) { - memcpy(target, ZSTR_VAL(rope[i]), ZSTR_LEN(rope[i])); - target += ZSTR_LEN(rope[i]); - zend_string_release_ex(rope[i], 0); - } - *target = '\0'; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_TMP_VAR == IS_VAR || IS_TMP_VAR == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = NULL; - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - - } else { - expr_ptr = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_TMP_VAR == IS_TMP_VAR) { - /* pass */ - } else if (IS_TMP_VAR == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_TMP_VAR == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_TMP_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zend_free_op free_op2; - zval *offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - zval_ptr_dtor_nogc(free_op2); - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_TMP_VAR != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_IDENTICAL_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = fast_is_identical_function(op1, op2); - zval_ptr_dtor_nogc(free_op1); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_IDENTICAL_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = fast_is_not_identical_function(op1, op2); - zval_ptr_dtor_nogc(free_op1); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_TMP_VAR != IS_UNUSED) { - zend_free_op free_op1; - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_TMP_VAR & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_TMP_VAR == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_TMP_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_TMP_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_TMP_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_TMP_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_TMP_VAR != IS_UNUSED) { - zend_free_op free_op2; - zval *key = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_TMP_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_TMP_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_TMP_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_TMP_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_TMP_VAR != IS_UNUSED) { - zend_free_op free_op1; - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_TMP_VAR & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_TMP_VAR == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_TMP_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_TMP_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_TMP_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_TMP_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_VAR != IS_UNUSED) { - zend_free_op free_op2; - zval *key = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - zval_ptr_dtor_nogc(free_op2); - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_TMP_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if (IS_UNUSED == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_VERIFY_RETURN_TYPE_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (IS_TMP_VAR == IS_UNUSED) { - zend_verify_missing_return_type(EX(func), CACHE_ADDR(opline->op2.num)); - } else { -/* prevents "undefined variable opline" errors */ -#if 0 || (IS_TMP_VAR != IS_UNUSED) - zval *retval_ref, *retval_ptr; - zend_free_op free_op1; - zend_arg_info *ret_info = EX(func)->common.arg_info - 1; - - retval_ref = retval_ptr = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_TMP_VAR == IS_CONST) { - ZVAL_COPY(EX_VAR(opline->result.var), retval_ptr); - retval_ref = retval_ptr = EX_VAR(opline->result.var); - } else if (IS_TMP_VAR == IS_VAR) { - if (UNEXPECTED(Z_TYPE_P(retval_ptr) == IS_INDIRECT)) { - retval_ptr = Z_INDIRECT_P(retval_ptr); - } - ZVAL_DEREF(retval_ptr); - } else if (IS_TMP_VAR == IS_CV) { - ZVAL_DEREF(retval_ptr); - } - - if (UNEXPECTED(!ZEND_TYPE_IS_CLASS(ret_info->type) - && ZEND_TYPE_CODE(ret_info->type) != IS_CALLABLE - && ZEND_TYPE_CODE(ret_info->type) != IS_ITERABLE - && !ZEND_SAME_FAKE_TYPE(ZEND_TYPE_CODE(ret_info->type), Z_TYPE_P(retval_ptr)) - && !(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE) - && retval_ref != retval_ptr) - ) { - /* A cast might happen - unwrap the reference if this is a by-value return */ - if (Z_REFCOUNT_P(retval_ref) == 1) { - ZVAL_UNREF(retval_ref); - } else { - Z_DELREF_P(retval_ref); - ZVAL_COPY(retval_ref, retval_ptr); - } - retval_ptr = retval_ref; - } - zend_verify_return_type(EX(func), retval_ptr, CACHE_ADDR(opline->op2.num)); -#endif - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_TMP_VAR == IS_VAR || IS_TMP_VAR == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = NULL; - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - - } else { - expr_ptr = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_TMP_VAR == IS_TMP_VAR) { - /* pass */ - } else if (IS_TMP_VAR == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_TMP_VAR == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_TMP_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if (IS_UNUSED != IS_UNUSED) { - - zval *offset = NULL; - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_UNUSED != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if (IS_UNUSED == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_TMP_VAR != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_TMP_VAR != IS_UNUSED) { - zend_free_op free_op1; - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_TMP_VAR & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_TMP_VAR == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_TMP_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_TMP_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_TMP_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_TMP_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_UNUSED != IS_UNUSED) { - - zval *key = NULL; - - /* Consts, temporary variables and references need copying */ - if (IS_UNUSED == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_UNUSED == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_UNUSED == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GET_TYPE_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1; - zend_string *type; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - type = zend_zval_get_type(op1); - if (EXPECTED(type)) { - ZVAL_INTERNED_STR(EX_VAR(opline->result.var), type); - } else { - ZVAL_STRING(EX_VAR(opline->result.var), "unknown type"); - } - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_TMP_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if (IS_CV == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_TMP_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ROPE_ADD_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_string **rope; - zval *var; - - /* op1 and result are the same */ - rope = (zend_string**)EX_VAR(opline->op1.var); - if (IS_CV == IS_CONST) { - var = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - rope[opline->extended_value] = Z_STR_P(var); - if (UNEXPECTED(Z_REFCOUNTED_P(var))) { - Z_ADDREF_P(var); - } - } else { - var = EX_VAR(opline->op2.var); - if (EXPECTED(Z_TYPE_P(var) == IS_STRING)) { - if (IS_CV == IS_CV) { - rope[opline->extended_value] = zend_string_copy(Z_STR_P(var)); - } else { - rope[opline->extended_value] = Z_STR_P(var); - } - } else { - SAVE_OPLINE(); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(var) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - rope[opline->extended_value] = zval_get_string_func(var); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ROPE_END_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_string **rope; - zval *var, *ret; - uint32_t i; - size_t len = 0; - char *target; - - rope = (zend_string**)EX_VAR(opline->op1.var); - if (IS_CV == IS_CONST) { - var = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - rope[opline->extended_value] = Z_STR_P(var); - if (UNEXPECTED(Z_REFCOUNTED_P(var))) { - Z_ADDREF_P(var); - } - } else { - var = EX_VAR(opline->op2.var); - if (EXPECTED(Z_TYPE_P(var) == IS_STRING)) { - if (IS_CV == IS_CV) { - rope[opline->extended_value] = zend_string_copy(Z_STR_P(var)); - } else { - rope[opline->extended_value] = Z_STR_P(var); - } - } else { - SAVE_OPLINE(); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(var) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - rope[opline->extended_value] = zval_get_string_func(var); - - if (UNEXPECTED(EG(exception))) { - for (i = 0; i <= opline->extended_value; i++) { - zend_string_release_ex(rope[i], 0); - } - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - } - for (i = 0; i <= opline->extended_value; i++) { - len += ZSTR_LEN(rope[i]); - } - ret = EX_VAR(opline->result.var); - ZVAL_STR(ret, zend_string_alloc(len, 0)); - target = Z_STRVAL_P(ret); - for (i = 0; i <= opline->extended_value; i++) { - memcpy(target, ZSTR_VAL(rope[i]), ZSTR_LEN(rope[i])); - target += ZSTR_LEN(rope[i]); - zend_string_release_ex(rope[i], 0); - } - *target = '\0'; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_TMP_VAR == IS_VAR || IS_TMP_VAR == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = NULL; - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - - } else { - expr_ptr = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_TMP_VAR == IS_TMP_VAR) { - /* pass */ - } else if (IS_TMP_VAR == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_TMP_VAR == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_TMP_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if (IS_CV != IS_UNUSED) { - - zval *offset = EX_VAR(opline->op2.var); - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CV != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if (IS_CV == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_TMP_VAR != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_TMP_VAR != IS_UNUSED) { - zend_free_op free_op1; - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_TMP_VAR & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_TMP_VAR == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_TMP_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_TMP_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_TMP_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_TMP_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_CV != IS_UNUSED) { - - zval *key = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_CV == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_CV == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_CV == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BIND_LEXICAL_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *closure, *var; - - closure = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (opline->extended_value & ZEND_BIND_REF) { - /* By-ref binding */ - var = _get_zval_ptr_cv_BP_VAR_W(opline->op2.var EXECUTE_DATA_CC); - if (Z_ISREF_P(var)) { - Z_ADDREF_P(var); - } else { - ZVAL_MAKE_REF_EX(var, 2); - } - } else { - var = EX_VAR(opline->op2.var); - if (UNEXPECTED(Z_ISUNDEF_P(var)) && !(opline->extended_value & ZEND_BIND_IMPLICIT)) { - SAVE_OPLINE(); - var = ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZVAL_DEREF(var); - Z_TRY_ADDREF_P(var); - } - - zend_closure_bind_var_ex(closure, - (opline->extended_value & ~(ZEND_BIND_REF|ZEND_BIND_IMPLICIT)), var); - ZEND_VM_NEXT_OPCODE(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_inc_helper_SPEC_VAR(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_P(var_ptr) == IS_UNDEF)) { - ZVAL_NULL(var_ptr); - ZVAL_UNDEFINED_OP1(); - } - - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - increment_function(var_ptr); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_SPEC_VAR_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - fast_long_increment_function(var_ptr); - if (UNEXPECTED(0)) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_pre_inc_helper_SPEC_VAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_SPEC_VAR_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - fast_long_increment_function(var_ptr); - if (UNEXPECTED(1)) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_pre_inc_helper_SPEC_VAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_dec_helper_SPEC_VAR(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_P(var_ptr) == IS_UNDEF)) { - ZVAL_NULL(var_ptr); - ZVAL_UNDEFINED_OP1(); - } - - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - decrement_function(var_ptr); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_SPEC_VAR_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - fast_long_decrement_function(var_ptr); - if (UNEXPECTED(0)) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_pre_dec_helper_SPEC_VAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_SPEC_VAR_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - fast_long_decrement_function(var_ptr); - if (UNEXPECTED(1)) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_pre_dec_helper_SPEC_VAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_inc_helper_SPEC_VAR(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_P(var_ptr) == IS_UNDEF)) { - ZVAL_NULL(var_ptr); - ZVAL_UNDEFINED_OP1(); - } - - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_incdec_typed_ref(ref, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - - increment_function(var_ptr); - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - fast_long_increment_function(var_ptr); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_post_inc_helper_SPEC_VAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_dec_helper_SPEC_VAR(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_P(var_ptr) == IS_UNDEF)) { - ZVAL_NULL(var_ptr); - ZVAL_UNDEFINED_OP1(); - } - - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_incdec_typed_ref(ref, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - - decrement_function(var_ptr); - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - - var_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - fast_long_decrement_function(var_ptr); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_post_dec_helper_SPEC_VAR(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RETURN_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *retval_ptr; - zval *return_value; - zend_free_op free_op1; - - retval_ptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - return_value = EX(return_value); - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(retval_ptr) == IS_UNDEF)) { - SAVE_OPLINE(); - retval_ptr = ZVAL_UNDEFINED_OP1(); - if (return_value) { - ZVAL_NULL(return_value); - } - } else if (!return_value) { - if (IS_VAR & (IS_VAR|IS_TMP_VAR)) { - if (Z_REFCOUNTED_P(free_op1) && !Z_DELREF_P(free_op1)) { - SAVE_OPLINE(); - rc_dtor_func(Z_COUNTED_P(free_op1)); - } - } - } else { - if ((IS_VAR & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(return_value))) { - Z_ADDREF_P(return_value); - } - } - } else if (IS_VAR == IS_CV) { - do { - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - if (EXPECTED(!Z_OPT_ISREF_P(retval_ptr))) { - if (EXPECTED(!(EX_CALL_INFO() & ZEND_CALL_CODE))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (GC_MAY_LEAK(ref)) { - gc_possible_root(ref); - } - ZVAL_NULL(retval_ptr); - break; - } else { - Z_ADDREF_P(retval_ptr); - } - } else { - retval_ptr = Z_REFVAL_P(retval_ptr); - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } - } - ZVAL_COPY_VALUE(return_value, retval_ptr); - } while (0); - } else /* if (IS_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - - retval_ptr = Z_REFVAL_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } else { - ZVAL_COPY_VALUE(return_value, retval_ptr); - } - } - } - ZEND_VM_TAIL_CALL(zend_leave_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RETURN_BY_REF_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *retval_ptr; - zend_free_op free_op1; - - SAVE_OPLINE(); - - do { - if ((IS_VAR & (IS_CONST|IS_TMP_VAR)) || - (IS_VAR == IS_VAR && opline->extended_value == ZEND_RETURNS_VALUE)) { - /* Not supposed to happen, but we'll allow it */ - zend_error(E_NOTICE, "Only variable references should be returned by reference"); - - retval_ptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (!EX(return_value)) { - zval_ptr_dtor_nogc(free_op1); - } else { - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISREF_P(retval_ptr))) { - ZVAL_COPY_VALUE(EX(return_value), retval_ptr); - break; - } - - ZVAL_NEW_REF(EX(return_value), retval_ptr); - if (IS_VAR == IS_CONST) { - Z_TRY_ADDREF_P(retval_ptr); - } - } - break; - } - - retval_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - ZEND_ASSERT(retval_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION && !Z_ISREF_P(retval_ptr)) { - zend_error(E_NOTICE, "Only variable references should be returned by reference"); - if (EX(return_value)) { - ZVAL_NEW_REF(EX(return_value), retval_ptr); - } else { - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } - break; - } - } - - if (EX(return_value)) { - if (Z_ISREF_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } else { - ZVAL_MAKE_REF_EX(retval_ptr, 2); - } - ZVAL_REF(EX(return_value), Z_REF_P(retval_ptr)); - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } while (0); - - ZEND_VM_TAIL_CALL(zend_leave_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GENERATOR_RETURN_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *retval; - zend_free_op free_op1; - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - retval = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* Copy return value into generator->retval */ - if ((IS_VAR & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(&generator->retval, retval); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->retval))) { - Z_ADDREF(generator->retval); - } - } - } else if (IS_VAR == IS_CV) { - ZVAL_COPY_DEREF(&generator->retval, retval); - } else /* if (IS_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_refcounted *ref = Z_COUNTED_P(retval); - - retval = Z_REFVAL_P(retval); - ZVAL_COPY_VALUE(&generator->retval, retval); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval)) { - Z_ADDREF_P(retval); - } - } else { - ZVAL_COPY_VALUE(&generator->retval, retval); - } - } - - /* Close the generator to free up resources */ - zend_generator_close(generator, 1); - - /* Pass execution back to handling code */ - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_THROW_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - zend_free_op free_op1; - - SAVE_OPLINE(); - value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - do { - if (IS_VAR == IS_CONST || UNEXPECTED(Z_TYPE_P(value) != IS_OBJECT)) { - if ((IS_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - value = Z_REFVAL_P(value); - if (EXPECTED(Z_TYPE_P(value) == IS_OBJECT)) { - break; - } - } - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Can only throw objects"); - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); - } - } while (0); - - zend_exception_save(); - if (IS_VAR != IS_TMP_VAR) { - Z_TRY_ADDREF_P(value); - } - - zend_throw_exception_object(value); - zend_exception_restore(); - zval_ptr_dtor_nogc(free_op1); - HANDLE_EXCEPTION(); -} - -static zend_always_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_SPEC_VAR_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varptr, *arg; - zend_free_op free_op1; - - varptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(varptr) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_NULL(arg); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (IS_VAR == IS_CV) { - ZVAL_COPY_DEREF(arg, varptr); - } else /* if (IS_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(varptr))) { - zend_refcounted *ref = Z_COUNTED_P(varptr); - - varptr = Z_REFVAL_P(varptr); - ZVAL_COPY_VALUE(arg, varptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(arg)) { - Z_ADDREF_P(arg); - } - } else { - ZVAL_COPY_VALUE(arg, varptr); - } - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(ZEND_SEND_VAR_SPEC_VAR_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_NO_REF_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *varptr, *arg; - - varptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, varptr); - - if (EXPECTED(Z_ISREF_P(varptr))) { - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - ZVAL_NEW_REF(arg, arg); - zend_error(E_NOTICE, "Only variables should be passed by reference"); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *varptr, *arg; - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(0)) { - if (!QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_VM_TAIL_CALL(ZEND_SEND_VAR_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - varptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, varptr); - - if (EXPECTED(Z_ISREF_P(varptr) || - QUICK_ARG_MAY_BE_SENT_BY_REF(EX(call)->func, arg_num))) { - ZEND_VM_NEXT_OPCODE(); - } - } else { - if (!ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_VM_TAIL_CALL(ZEND_SEND_VAR_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - varptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, varptr); - - if (EXPECTED(Z_ISREF_P(varptr) || - ARG_MAY_BE_SENT_BY_REF(EX(call)->func, arg_num))) { - ZEND_VM_NEXT_OPCODE(); - } - } - - SAVE_OPLINE(); - ZVAL_NEW_REF(arg, arg); - zend_error(E_NOTICE, "Only variables should be passed by reference"); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR_QUICK_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *varptr, *arg; - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(1)) { - if (!QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_VM_TAIL_CALL(ZEND_SEND_VAR_SPEC_VAR_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - varptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, varptr); - - if (EXPECTED(Z_ISREF_P(varptr) || - QUICK_ARG_MAY_BE_SENT_BY_REF(EX(call)->func, arg_num))) { - ZEND_VM_NEXT_OPCODE(); - } - } else { - if (!ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_VM_TAIL_CALL(ZEND_SEND_VAR_SPEC_VAR_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - varptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY_VALUE(arg, varptr); - - if (EXPECTED(Z_ISREF_P(varptr) || - ARG_MAY_BE_SENT_BY_REF(EX(call)->func, arg_num))) { - ZEND_VM_NEXT_OPCODE(); - } - } - - SAVE_OPLINE(); - ZVAL_NEW_REF(arg, arg); - zend_error(E_NOTICE, "Only variables should be passed by reference"); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_REF_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *varptr, *arg; - - SAVE_OPLINE(); - varptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(varptr))) { - ZVAL_NEW_EMPTY_REF(arg); - ZVAL_NULL(Z_REFVAL_P(arg)); - ZEND_VM_NEXT_OPCODE(); - } - - if (Z_ISREF_P(varptr)) { - Z_ADDREF_P(varptr); - } else { - ZVAL_MAKE_REF_EX(varptr, 2); - } - ZVAL_REF(arg, Z_REF_P(varptr)); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_EX_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varptr, *arg; - zend_free_op free_op1; - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(0)) { - if (QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - goto send_var_by_ref; - } - } else if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { -send_var_by_ref: - ZEND_VM_TAIL_CALL(ZEND_SEND_REF_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - varptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(varptr) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_NULL(arg); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (IS_VAR == IS_CV) { - ZVAL_COPY_DEREF(arg, varptr); - } else /* if (IS_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(varptr))) { - zend_refcounted *ref = Z_COUNTED_P(varptr); - - varptr = Z_REFVAL_P(varptr); - ZVAL_COPY_VALUE(arg, varptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(arg)) { - Z_ADDREF_P(arg); - } - } else { - ZVAL_COPY_VALUE(arg, varptr); - } - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_EX_SPEC_VAR_QUICK_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varptr, *arg; - zend_free_op free_op1; - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(1)) { - if (QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - goto send_var_by_ref; - } - } else if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { -send_var_by_ref: - ZEND_VM_TAIL_CALL(ZEND_SEND_REF_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - varptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(varptr) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_NULL(arg); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (IS_VAR == IS_CV) { - ZVAL_COPY_DEREF(arg, varptr); - } else /* if (IS_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(varptr))) { - zend_refcounted *ref = Z_COUNTED_P(varptr); - - varptr = Z_REFVAL_P(varptr); - ZVAL_COPY_VALUE(arg, varptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(arg)) { - Z_ADDREF_P(arg); - } - } else { - ZVAL_COPY_VALUE(arg, varptr); - } - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_FUNC_ARG_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varptr, *arg; - zend_free_op free_op1; - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - ZEND_VM_TAIL_CALL(ZEND_SEND_REF_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - varptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (UNEXPECTED(Z_ISREF_P(varptr))) { - zend_refcounted *ref = Z_COUNTED_P(varptr); - - varptr = Z_REFVAL_P(varptr); - ZVAL_COPY_VALUE(arg, varptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(arg)) { - Z_ADDREF_P(arg); - } - } else { - ZVAL_COPY_VALUE(arg, varptr); - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_USER_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *arg, *param; - zend_free_op free_op1; - - SAVE_OPLINE(); - - if (UNEXPECTED(ARG_MUST_BE_SENT_BY_REF(EX(call)->func, opline->op2.num))) { - zend_param_must_be_ref(EX(call)->func, opline->op2.num); - } - - arg = _get_zval_ptr_var_deref(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - param = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY(param, arg); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CAST_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr; - zval *result = EX_VAR(opline->result.var); - HashTable *ht; - - SAVE_OPLINE(); - expr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - switch (opline->extended_value) { - case IS_NULL: - ZVAL_NULL(result); - break; - case _IS_BOOL: - ZVAL_BOOL(result, zend_is_true(expr)); - break; - case IS_LONG: - ZVAL_LONG(result, zval_get_long(expr)); - break; - case IS_DOUBLE: - ZVAL_DOUBLE(result, zval_get_double(expr)); - break; - case IS_STRING: - ZVAL_STR(result, zval_get_string(expr)); - break; - default: - if (IS_VAR & (IS_VAR|IS_CV)) { - ZVAL_DEREF(expr); - } - /* If value is already of correct type, return it directly */ - if (Z_TYPE_P(expr) == opline->extended_value) { - ZVAL_COPY_VALUE(result, expr); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (IS_VAR != IS_TMP_VAR) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - if (opline->extended_value == IS_ARRAY) { - if (IS_VAR == IS_CONST || Z_TYPE_P(expr) != IS_OBJECT || Z_OBJCE_P(expr) == zend_ce_closure) { - if (Z_TYPE_P(expr) != IS_NULL) { - ZVAL_ARR(result, zend_new_array(1)); - expr = zend_hash_index_add_new(Z_ARRVAL_P(result), 0, expr); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(expr))) Z_ADDREF_P(expr); - } else { - if (Z_OPT_REFCOUNTED_P(expr)) Z_ADDREF_P(expr); - } - } else { - ZVAL_EMPTY_ARRAY(result); - } - } else { - HashTable *obj_ht = zend_get_properties_for(expr, ZEND_PROP_PURPOSE_ARRAY_CAST); - if (obj_ht) { - /* fast copy */ - ZVAL_ARR(result, zend_proptable_to_symtable(obj_ht, - (Z_OBJCE_P(expr)->default_properties_count || - Z_OBJ_P(expr)->handlers != &std_object_handlers || - GC_IS_RECURSIVE(obj_ht)))); - zend_release_properties(obj_ht); - } else { - ZVAL_EMPTY_ARRAY(result); - } - } - } else { - ZVAL_OBJ(result, zend_objects_new(zend_standard_class_def)); - if (Z_TYPE_P(expr) == IS_ARRAY) { - ht = zend_symtable_to_proptable(Z_ARR_P(expr)); - if (GC_FLAGS(ht) & IS_ARRAY_IMMUTABLE) { - /* TODO: try not to duplicate immutable arrays as well ??? */ - ht = zend_array_dup(ht); - } - Z_OBJ_P(result)->properties = ht; - } else if (Z_TYPE_P(expr) != IS_NULL) { - Z_OBJ_P(result)->properties = ht = zend_new_array(1); - expr = zend_hash_add_new(ht, ZSTR_KNOWN(ZEND_STR_SCALAR), expr); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(expr))) Z_ADDREF_P(expr); - } else { - if (Z_OPT_REFCOUNTED_P(expr)) Z_ADDREF_P(expr); - } - } - } - } - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_RESET_R_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *array_ptr, *result; - - SAVE_OPLINE(); - - array_ptr = _get_zval_ptr_var_deref(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (EXPECTED(Z_TYPE_P(array_ptr) == IS_ARRAY)) { - result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, array_ptr); - if (IS_VAR != IS_TMP_VAR && Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(array_ptr); - } - Z_FE_POS_P(result) = 0; - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE(); - } else if (IS_VAR != IS_CONST && EXPECTED(Z_TYPE_P(array_ptr) == IS_OBJECT)) { - if (!Z_OBJCE_P(array_ptr)->get_iterator) { - HashTable *properties; - if (Z_OBJ_P(array_ptr)->properties - && UNEXPECTED(GC_REFCOUNT(Z_OBJ_P(array_ptr)->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(Z_OBJ_P(array_ptr)->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(Z_OBJ_P(array_ptr)->properties); - } - Z_OBJ_P(array_ptr)->properties = zend_array_dup(Z_OBJ_P(array_ptr)->properties); - } - - properties = Z_OBJPROP_P(array_ptr); - result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, array_ptr); - if (IS_VAR != IS_TMP_VAR) { - Z_ADDREF_P(array_ptr); - } - - if (zend_hash_num_elements(properties) == 0) { - Z_FE_ITER_P(result) = (uint32_t) -1; - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } - - Z_FE_ITER_P(result) = zend_hash_iterator_add(properties, 0); - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - zend_bool is_empty = zend_fe_reset_iterator(array_ptr, 0 OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op1); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } else if (is_empty) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - } else { - zend_error(E_WARNING, "Invalid argument supplied for foreach()"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t)-1; - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_RESET_RW_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *array_ptr, *array_ref; - - SAVE_OPLINE(); - - if (IS_VAR == IS_VAR || IS_VAR == IS_CV) { - array_ref = array_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (Z_ISREF_P(array_ref)) { - array_ptr = Z_REFVAL_P(array_ref); - } - } else { - array_ref = array_ptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - } - - if (EXPECTED(Z_TYPE_P(array_ptr) == IS_ARRAY)) { - if (IS_VAR == IS_VAR || IS_VAR == IS_CV) { - if (array_ptr == array_ref) { - ZVAL_NEW_REF(array_ref, array_ref); - array_ptr = Z_REFVAL_P(array_ref); - } - Z_ADDREF_P(array_ref); - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), array_ref); - } else { - array_ref = EX_VAR(opline->result.var); - ZVAL_NEW_REF(array_ref, array_ptr); - array_ptr = Z_REFVAL_P(array_ref); - } - if (IS_VAR == IS_CONST) { - ZVAL_ARR(array_ptr, zend_array_dup(Z_ARRVAL_P(array_ptr))); - } else { - SEPARATE_ARRAY(array_ptr); - } - Z_FE_ITER_P(EX_VAR(opline->result.var)) = zend_hash_iterator_add(Z_ARRVAL_P(array_ptr), 0); - - if (IS_VAR == IS_VAR) { - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } - ZEND_VM_NEXT_OPCODE(); - } else if (IS_VAR != IS_CONST && EXPECTED(Z_TYPE_P(array_ptr) == IS_OBJECT)) { - if (!Z_OBJCE_P(array_ptr)->get_iterator) { - HashTable *properties; - if (IS_VAR == IS_VAR || IS_VAR == IS_CV) { - if (array_ptr == array_ref) { - ZVAL_NEW_REF(array_ref, array_ref); - array_ptr = Z_REFVAL_P(array_ref); - } - Z_ADDREF_P(array_ref); - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), array_ref); - } else { - array_ptr = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(array_ptr, array_ref); - } - if (Z_OBJ_P(array_ptr)->properties - && UNEXPECTED(GC_REFCOUNT(Z_OBJ_P(array_ptr)->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(Z_OBJ_P(array_ptr)->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(Z_OBJ_P(array_ptr)->properties); - } - Z_OBJ_P(array_ptr)->properties = zend_array_dup(Z_OBJ_P(array_ptr)->properties); - } - - properties = Z_OBJPROP_P(array_ptr); - if (zend_hash_num_elements(properties) == 0) { - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t) -1; - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } - - Z_FE_ITER_P(EX_VAR(opline->result.var)) = zend_hash_iterator_add(properties, 0); - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - zend_bool is_empty = zend_fe_reset_iterator(array_ptr, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } else { - zval_ptr_dtor_nogc(free_op1); - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } else if (is_empty) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - } else { - zend_error(E_WARNING, "Invalid argument supplied for foreach()"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t)-1; - if (IS_VAR == IS_VAR) { - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } else { - zval_ptr_dtor_nogc(free_op1); - } - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_FETCH_R_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *array; - zval *value; - uint32_t value_type; - HashTable *fe_ht; - HashPosition pos; - Bucket *p; - - array = EX_VAR(opline->op1.var); - SAVE_OPLINE(); - if (EXPECTED(Z_TYPE_P(array) == IS_ARRAY)) { - fe_ht = Z_ARRVAL_P(array); - pos = Z_FE_POS_P(array); - p = fe_ht->arData + pos; - while (1) { - if (UNEXPECTED(pos >= fe_ht->nNumUsed)) { - /* reached end of iteration */ -fe_fetch_r_exit: - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } - value = &p->val; - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - if (UNEXPECTED(value_type == IS_INDIRECT)) { - value = Z_INDIRECT_P(value); - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - break; - } - } else { - break; - } - } - pos++; - p++; - } - Z_FE_POS_P(array) = pos + 1; - if (RETURN_VALUE_USED(opline)) { - if (!p->key) { - ZVAL_LONG(EX_VAR(opline->result.var), p->h); - } else { - ZVAL_STR_COPY(EX_VAR(opline->result.var), p->key); - } - } - } else { - zend_object_iterator *iter; - - ZEND_ASSERT(Z_TYPE_P(array) == IS_OBJECT); - if ((iter = zend_iterator_unwrap(array)) == NULL) { - /* plain object */ - - fe_ht = Z_OBJPROP_P(array); - pos = zend_hash_iterator_pos(Z_FE_ITER_P(array), fe_ht); - p = fe_ht->arData + pos; - while (1) { - if (UNEXPECTED(pos >= fe_ht->nNumUsed)) { - /* reached end of iteration */ - goto fe_fetch_r_exit; - } - - value = &p->val; - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - if (UNEXPECTED(value_type == IS_INDIRECT)) { - value = Z_INDIRECT_P(value); - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF) - && EXPECTED(zend_check_property_access(Z_OBJ_P(array), p->key, 0) == SUCCESS)) { - break; - } - } else if (EXPECTED(Z_OBJCE_P(array)->default_properties_count == 0) - || !p->key - || zend_check_property_access(Z_OBJ_P(array), p->key, 1) == SUCCESS) { - break; - } - } - pos++; - p++; - } - if (RETURN_VALUE_USED(opline)) { - if (UNEXPECTED(!p->key)) { - ZVAL_LONG(EX_VAR(opline->result.var), p->h); - } else if (ZSTR_VAL(p->key)[0]) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), p->key); - } else { - const char *class_name, *prop_name; - size_t prop_name_len; - zend_unmangle_property_name_ex( - p->key, &class_name, &prop_name, &prop_name_len); - ZVAL_STRINGL(EX_VAR(opline->result.var), prop_name, prop_name_len); - } - } - EG(ht_iterators)[Z_FE_ITER_P(array)].pos = pos + 1; - } else { - if (EXPECTED(++iter->index > 0)) { - /* This could cause an endless loop if index becomes zero again. - * In case that ever happens we need an additional flag. */ - iter->funcs->move_forward(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - if (UNEXPECTED(iter->funcs->valid(iter) == FAILURE)) { - /* reached end of iteration */ - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - goto fe_fetch_r_exit; - } - } - value = iter->funcs->get_current_data(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - if (!value) { - /* failure in get_current_data */ - goto fe_fetch_r_exit; - } - if (RETURN_VALUE_USED(opline)) { - if (iter->funcs->get_current_key) { - iter->funcs->get_current_key(iter, EX_VAR(opline->result.var)); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - } else { - ZVAL_LONG(EX_VAR(opline->result.var), iter->index); - } - } - value_type = Z_TYPE_INFO_P(value); - } - } - - if (EXPECTED(opline->op2_type == IS_CV)) { - zval *variable_ptr = EX_VAR(opline->op2.var); - zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - } else { - zval *res = EX_VAR(opline->op2.var); - zend_refcounted *gc = Z_COUNTED_P(value); - - ZVAL_COPY_VALUE_EX(res, value, gc, value_type); - if (Z_TYPE_INFO_REFCOUNTED(value_type)) { - GC_ADDREF(gc); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_FETCH_RW_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *array; - zval *value; - uint32_t value_type; - HashTable *fe_ht; - HashPosition pos; - Bucket *p; - - array = EX_VAR(opline->op1.var); - SAVE_OPLINE(); - - ZVAL_DEREF(array); - if (EXPECTED(Z_TYPE_P(array) == IS_ARRAY)) { - pos = zend_hash_iterator_pos_ex(Z_FE_ITER_P(EX_VAR(opline->op1.var)), array); - fe_ht = Z_ARRVAL_P(array); - p = fe_ht->arData + pos; - while (1) { - if (UNEXPECTED(pos >= fe_ht->nNumUsed)) { - /* reached end of iteration */ - goto fe_fetch_w_exit; - } - value = &p->val; - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - if (UNEXPECTED(value_type == IS_INDIRECT)) { - value = Z_INDIRECT_P(value); - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - break; - } - } else { - break; - } - } - pos++; - p++; - } - if (RETURN_VALUE_USED(opline)) { - if (!p->key) { - ZVAL_LONG(EX_VAR(opline->result.var), p->h); - } else { - ZVAL_STR_COPY(EX_VAR(opline->result.var), p->key); - } - } - EG(ht_iterators)[Z_FE_ITER_P(EX_VAR(opline->op1.var))].pos = pos + 1; - } else if (EXPECTED(Z_TYPE_P(array) == IS_OBJECT)) { - zend_object_iterator *iter; - - if ((iter = zend_iterator_unwrap(array)) == NULL) { - /* plain object */ - - fe_ht = Z_OBJPROP_P(array); - pos = zend_hash_iterator_pos(Z_FE_ITER_P(EX_VAR(opline->op1.var)), fe_ht); - p = fe_ht->arData + pos; - while (1) { - if (UNEXPECTED(pos >= fe_ht->nNumUsed)) { - /* reached end of iteration */ - goto fe_fetch_w_exit; - } - - value = &p->val; - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - if (UNEXPECTED(value_type == IS_INDIRECT)) { - value = Z_INDIRECT_P(value); - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF) - && EXPECTED(zend_check_property_access(Z_OBJ_P(array), p->key, 0) == SUCCESS)) { - if ((value_type & Z_TYPE_MASK) != IS_REFERENCE) { - zend_property_info *prop_info = - zend_get_typed_property_info_for_slot(Z_OBJ_P(array), value); - if (UNEXPECTED(prop_info)) { - ZVAL_NEW_REF(value, value); - ZEND_REF_ADD_TYPE_SOURCE(Z_REF_P(value), prop_info); - value_type = IS_REFERENCE_EX; - } - } - break; - } - } else if (EXPECTED(Z_OBJCE_P(array)->default_properties_count == 0) - || !p->key - || zend_check_property_access(Z_OBJ_P(array), p->key, 1) == SUCCESS) { - break; - } - } - pos++; - p++; - } - if (RETURN_VALUE_USED(opline)) { - if (UNEXPECTED(!p->key)) { - ZVAL_LONG(EX_VAR(opline->result.var), p->h); - } else if (ZSTR_VAL(p->key)[0]) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), p->key); - } else { - const char *class_name, *prop_name; - size_t prop_name_len; - zend_unmangle_property_name_ex( - p->key, &class_name, &prop_name, &prop_name_len); - ZVAL_STRINGL(EX_VAR(opline->result.var), prop_name, prop_name_len); - } - } - EG(ht_iterators)[Z_FE_ITER_P(EX_VAR(opline->op1.var))].pos = pos + 1; - } else { - if (++iter->index > 0) { - /* This could cause an endless loop if index becomes zero again. - * In case that ever happens we need an additional flag. */ - iter->funcs->move_forward(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - if (UNEXPECTED(iter->funcs->valid(iter) == FAILURE)) { - /* reached end of iteration */ - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - goto fe_fetch_w_exit; - } - } - value = iter->funcs->get_current_data(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - if (!value) { - /* failure in get_current_data */ - goto fe_fetch_w_exit; - } - if (RETURN_VALUE_USED(opline)) { - if (iter->funcs->get_current_key) { - iter->funcs->get_current_key(iter, EX_VAR(opline->result.var)); - if (UNEXPECTED(EG(exception) != NULL)) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - } else { - ZVAL_LONG(EX_VAR(opline->result.var), iter->index); - } - } - value_type = Z_TYPE_INFO_P(value); - } - } else { - zend_error(E_WARNING, "Invalid argument supplied for foreach()"); - if (UNEXPECTED(EG(exception))) { - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } -fe_fetch_w_exit: - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } - - if (EXPECTED((value_type & Z_TYPE_MASK) != IS_REFERENCE)) { - zend_refcounted *gc = Z_COUNTED_P(value); - zval *ref; - ZVAL_NEW_EMPTY_REF(value); - ref = Z_REFVAL_P(value); - ZVAL_COPY_VALUE_EX(ref, value, gc, value_type); - } - if (EXPECTED(opline->op2_type == IS_CV)) { - zval *variable_ptr = EX_VAR(opline->op2.var); - if (EXPECTED(variable_ptr != value)) { - zend_reference *ref; - - ref = Z_REF_P(value); - GC_ADDREF(ref); - i_zval_ptr_dtor(variable_ptr); - ZVAL_REF(variable_ptr, ref); - } - } else { - Z_ADDREF_P(value); - ZVAL_REF(EX_VAR(opline->op2.var), Z_REF_P(value)); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMP_SET_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - zval *ref = NULL; - int ret; - - SAVE_OPLINE(); - value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_VAR == IS_VAR || IS_VAR == IS_CV) && Z_ISREF_P(value)) { - if (IS_VAR == IS_VAR) { - ref = value; - } - value = Z_REFVAL_P(value); - } - - ret = i_zend_is_true(value); - - if (UNEXPECTED(EG(exception))) { - zval_ptr_dtor_nogc(free_op1); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - - if (ret) { - zval *result = EX_VAR(opline->result.var); - - ZVAL_COPY_VALUE(result, value); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (IS_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } else if (IS_VAR == IS_VAR && ref) { - zend_reference *r = Z_REF_P(ref); - - if (UNEXPECTED(GC_DELREF(r) == 0)) { - efree_size(r, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_COALESCE_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - zval *ref = NULL; - - SAVE_OPLINE(); - value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if ((IS_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - if (IS_VAR & IS_VAR) { - ref = value; - } - value = Z_REFVAL_P(value); - } - - if (Z_TYPE_P(value) > IS_NULL) { - zval *result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, value); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (IS_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } else if ((IS_VAR & IS_VAR) && ref) { - zend_reference *r = Z_REF_P(ref); - - if (UNEXPECTED(GC_DELREF(r) == 0)) { - efree_size(r, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_QM_ASSIGN_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - zval *result = EX_VAR(opline->result.var); - - value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZVAL_NULL(result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - if (IS_VAR == IS_CV) { - ZVAL_COPY_DEREF(result, value); - } else if (IS_VAR == IS_VAR) { - if (UNEXPECTED(Z_ISREF_P(value))) { - ZVAL_COPY_VALUE(result, Z_REFVAL_P(value)); - if (UNEXPECTED(Z_DELREF_P(value) == 0)) { - efree_size(Z_REF_P(value), sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } else { - ZVAL_COPY_VALUE(result, value); - } - } else { - ZVAL_COPY_VALUE(result, value); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) { - Z_ADDREF_P(result); - } - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_FROM_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - zval *val; - zend_free_op free_op1; - - SAVE_OPLINE(); - val = _get_zval_ptr_var_deref(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - zend_throw_error(NULL, "Cannot use \"yield from\" in a force-closed generator"); - zval_ptr_dtor_nogc(free_op1); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - if (Z_TYPE_P(val) == IS_ARRAY) { - ZVAL_COPY_VALUE(&generator->values, val); - if (IS_VAR != IS_TMP_VAR && Z_OPT_REFCOUNTED_P(val)) { - Z_ADDREF_P(val); - } - Z_FE_POS(generator->values) = 0; - - zval_ptr_dtor_nogc(free_op1); - } else if (IS_VAR != IS_CONST && Z_TYPE_P(val) == IS_OBJECT && Z_OBJCE_P(val)->get_iterator) { - zend_class_entry *ce = Z_OBJCE_P(val); - if (ce == zend_ce_generator) { - zend_generator *new_gen = (zend_generator *) Z_OBJ_P(val); - - if (IS_VAR != IS_TMP_VAR) { - Z_ADDREF_P(val); - } - zval_ptr_dtor_nogc(free_op1); - - if (Z_ISUNDEF(new_gen->retval)) { - if (UNEXPECTED(zend_generator_get_current(new_gen) == generator)) { - zend_throw_error(NULL, "Impossible to yield from the Generator being currently run"); - zval_ptr_dtor(val); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else { - zend_generator_yield_from(generator, new_gen); - } - } else if (UNEXPECTED(new_gen->execute_data == NULL)) { - zend_throw_error(NULL, "Generator passed to yield from was aborted without proper return and is unable to continue"); - zval_ptr_dtor(val); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else { - if (RETURN_VALUE_USED(opline)) { - ZVAL_COPY(EX_VAR(opline->result.var), &new_gen->retval); - } - ZEND_VM_NEXT_OPCODE(); - } - } else { - zend_object_iterator *iter = ce->get_iterator(ce, val, 0); - zval_ptr_dtor_nogc(free_op1); - - if (UNEXPECTED(!iter) || UNEXPECTED(EG(exception))) { - if (!EG(exception)) { - zend_throw_error(NULL, "Object of type %s did not create an Iterator", ZSTR_VAL(ce->name)); - } - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - iter->index = 0; - if (iter->funcs->rewind) { - iter->funcs->rewind(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - OBJ_RELEASE(&iter->std); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - } - - ZVAL_OBJ(&generator->values, &iter->std); - } - } else { - zend_throw_error(NULL, "Can use \"yield from\" only with arrays and Traversables"); - zval_ptr_dtor_nogc(free_op1); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - /* This is the default return value - * when the expression is a Generator, it will be overwritten in zend_generator_resume() */ - if (RETURN_VALUE_USED(opline)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - - /* This generator has no send target (though the generator we delegate to might have one) */ - generator->send_target = NULL; - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_SIMPLE_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varptr, *arg; - zend_free_op free_op1; - - varptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (IS_VAR == IS_CV) { - ZVAL_COPY(arg, varptr); - } else /* if (IS_VAR == IS_VAR) */ { - ZVAL_COPY_VALUE(arg, varptr); - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_EX_SIMPLE_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varptr, *arg; - zend_free_op free_op1; - uint32_t arg_num = opline->op2.num; - - if (QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_VM_TAIL_CALL(ZEND_SEND_REF_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - varptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (IS_VAR == IS_CV) { - ZVAL_COPY(arg, varptr); - } else /* if (IS_VAR == IS_VAR) */ { - ZVAL_COPY_VALUE(arg, varptr); - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_IDENTICAL_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var_deref(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - result = fast_is_identical_function(op1, op2); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_IDENTICAL_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var_deref(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - result = fast_is_not_identical_function(op1, op2); - zval_ptr_dtor_nogc(free_op1); - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op_data; - zval *object; - zval *property; - zval *value; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - do { - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_op_object; - } - if (IS_VAR == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -assign_op_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CONST == IS_CONST) ? CACHE_ADDR((opline+1)->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - zval *orig_zptr = zptr; - zend_reference *ref; - - do { - if (UNEXPECTED(Z_ISREF_P(zptr))) { - ref = Z_REF_P(zptr); - zptr = Z_REFVAL_P(zptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - - if (IS_CONST == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), orig_zptr); - } - if (UNEXPECTED(prop_info)) { - /* special case for typed properties */ - zend_binary_assign_op_typed_prop(prop_info, zptr, value OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_binary_op(zptr, zptr, value OPLINE_CC); - } - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), zptr); - } - } - } else { - zend_assign_op_overloaded_property(object, property, cache_slot, value OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - FREE_OP(free_op_data); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMP|VAR|CV, UNUSED|CONST|TMPVAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_OP_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op_data1; - zval *var_ptr; - zval *value, *container, *dim; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -assign_dim_op_array: - SEPARATE_ARRAY(container); -assign_dim_op_new_array: - dim = RT_CONSTANT(opline, opline->op2); - if (IS_CONST == IS_UNUSED) { - var_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(container), &EG(uninitialized_zval)); - if (UNEXPECTED(!var_ptr)) { - zend_cannot_add_element(); - goto assign_dim_op_ret_null; - } - } else { - if (IS_CONST == IS_CONST) { - var_ptr = zend_fetch_dimension_address_inner_RW_CONST(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } else { - var_ptr = zend_fetch_dimension_address_inner_RW(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(!var_ptr)) { - goto assign_dim_op_ret_null; - } - } - - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data1); - - do { - if (IS_CONST != IS_UNUSED && UNEXPECTED(Z_ISREF_P(var_ptr))) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - FREE_OP(free_op_data1); - } else { - if (EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto assign_dim_op_array; - } - } - - dim = RT_CONSTANT(opline, opline->op2); - - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_binary_assign_op_obj_dim(container, dim OPLINE_CC EXECUTE_DATA_CC); - } else if (EXPECTED(Z_TYPE_P(container) <= IS_FALSE)) { - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - ZVAL_ARR(container, zend_new_array(8)); - goto assign_dim_op_new_array; - } else { - zend_binary_assign_op_dim_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); -assign_dim_op_ret_null: - FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OP_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - zval *value; - - SAVE_OPLINE(); - value = RT_CONSTANT(opline, opline->op2); - var_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - do { - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto pre_incdec_object; - } - if (IS_VAR == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -pre_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - if (IS_CONST == IS_CONST) { - prop_info = (zend_property_info *) CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - do { - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto post_incdec_object; - } - if (IS_VAR == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -post_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } else { - if (IS_CONST == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - - zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_W(container, RT_CONSTANT(opline, opline->op2), IS_CONST OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_RW(container, RT_CONSTANT(opline, opline->op2), IS_CONST OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_W_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if (IS_CONST == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_UNSET(container, RT_CONSTANT(opline, opline->op2), IS_CONST OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *result; - - SAVE_OPLINE(); - - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - zend_fetch_property_address( - result, container, IS_VAR, property, IS_CONST, - ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_OBJ_FLAGS) : NULL), - BP_VAR_W, opline->extended_value & ZEND_FETCH_OBJ_FLAGS, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *result; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - property = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_VAR, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_RW, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_W_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container, *property, *result; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_VAR, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_UNSET, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_LIST_W_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container, *dim; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - dim = RT_CONSTANT(opline, opline->op2); - - if (IS_VAR == IS_VAR - && Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT - && UNEXPECTED(!Z_ISREF_P(container)) - ) { - zend_error(E_NOTICE, "Attempting to set reference to non referenceable value"); - zend_fetch_dimension_address_LIST_r(container, dim, IS_CONST OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_fetch_dimension_address_W(container, dim, IS_CONST OPLINE_CC EXECUTE_DATA_CC); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CONST == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CONST, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CONST != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CONST == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CONST == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CONST == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_TMP_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CONST == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CONST == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CV, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CV != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CV == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CV == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = RT_CONSTANT((opline+1), (opline+1)->op1); - SEPARATE_ARRAY(object_ptr); - if (IS_CONST == IS_UNUSED) { - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CONST == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CONST == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = RT_CONSTANT(opline, opline->op2); - if (IS_CONST == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CONST, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = RT_CONSTANT(opline, opline->op2); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CONST == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = RT_CONSTANT(opline, opline->op2); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = RT_CONSTANT(opline, opline->op2); - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = RT_CONSTANT(opline, opline->op2); -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CONST != IS_UNUSED) { - - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_CONST == IS_UNUSED) { - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_TMP_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = RT_CONSTANT(opline, opline->op2); - if (IS_CONST == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CONST == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = RT_CONSTANT(opline, opline->op2); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = RT_CONSTANT(opline, opline->op2); -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CONST != IS_UNUSED) { - - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_CONST == IS_UNUSED) { - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = RT_CONSTANT(opline, opline->op2); - if (IS_CONST == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CONST == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = RT_CONSTANT(opline, opline->op2); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = RT_CONSTANT(opline, opline->op2); -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CONST != IS_UNUSED) { - - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_CONST == IS_UNUSED) { - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CV == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CV == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = RT_CONSTANT(opline, opline->op2); - if (IS_CONST == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CONST == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = RT_CONSTANT(opline, opline->op2); - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = RT_CONSTANT(opline, opline->op2); -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CONST != IS_UNUSED) { - - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = RT_CONSTANT(opline, opline->op2); - variable_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - - if (UNEXPECTED(0)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_CONST, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(0)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = RT_CONSTANT(opline, opline->op2); - variable_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - - if (UNEXPECTED(1)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_CONST, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(1)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op_data; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - value_ptr = _get_zval_ptr_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (1) { - if (IS_VAR == IS_UNUSED) { - if (IS_CONST == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if (IS_CONST == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_VAR, property, IS_CONST, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - - if (UNEXPECTED(free_op_data)) {zval_ptr_dtor_nogc(free_op_data);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - value_ptr = _get_zval_ptr_cv_BP_VAR_W((opline+1)->op1.var EXECUTE_DATA_CC); - - if (1) { - if (IS_VAR == IS_UNUSED) { - if (IS_CONST == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if (IS_CONST == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_VAR, property, IS_CONST, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - - - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_class_entry *ce; - uint32_t call_info; - zend_function *fbc; - zend_execute_data *call; - - SAVE_OPLINE(); - - if (IS_VAR == IS_CONST) { - /* no function found. try a static method in class */ - ce = CACHED_PTR(opline->result.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - if (IS_CONST != IS_CONST) { - CACHE_PTR(opline->result.num, ce); - } - } - } else if (IS_VAR == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - if (IS_VAR == IS_CONST && - IS_CONST == IS_CONST && - EXPECTED((fbc = CACHED_PTR(opline->result.num + sizeof(void*))) != NULL)) { - /* nothing to do */ - } else if (IS_VAR != IS_CONST && - IS_CONST == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == ce)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else if (IS_CONST != IS_UNUSED) { - - - function_name = RT_CONSTANT(opline, opline->op2); - if (IS_CONST != IS_CONST) { - if (UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (IS_CONST & (IS_VAR|IS_CV) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - - HANDLE_EXCEPTION(); - } while (0); - } - } - - if (ce->get_static_method) { - fbc = ce->get_static_method(ce, Z_STR_P(function_name)); - } else { - fbc = zend_std_get_static_method(ce, Z_STR_P(function_name), ((IS_CONST == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - } - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(ce, Z_STR_P(function_name)); - } - - HANDLE_EXCEPTION(); - } - if (IS_CONST == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE)))) { - CACHE_POLYMORPHIC_PTR(opline->result.num, ce, fbc); - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - if (IS_CONST != IS_CONST) { - - } - } else { - if (UNEXPECTED(ce->constructor == NULL)) { - zend_throw_error(NULL, "Cannot call constructor"); - HANDLE_EXCEPTION(); - } - if (Z_TYPE(EX(This)) == IS_OBJECT && Z_OBJ(EX(This))->ce != ce->constructor->common.scope && (ce->constructor->common.fn_flags & ZEND_ACC_PRIVATE)) { - zend_throw_error(NULL, "Cannot call private %s::__construct()", ZSTR_VAL(ce->name)); - HANDLE_EXCEPTION(); - } - fbc = ce->constructor; - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (!(fbc->common.fn_flags & ZEND_ACC_STATIC)) { - if (Z_TYPE(EX(This)) == IS_OBJECT && instanceof_function(Z_OBJCE(EX(This)), ce)) { - ce = (zend_class_entry*)Z_OBJ(EX(This)); - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - } else { - zend_non_static_method_call(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - goto check_parent_and_self; - } - } else { -check_parent_and_self: - /* previous opcode is ZEND_FETCH_CLASS */ - if (IS_VAR == IS_UNUSED - && ((opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_PARENT || - (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF)) { - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ce = Z_OBJCE(EX(This)); - } else { - ce = Z_CE(EX(This)); - } - } - call_info = ZEND_CALL_NESTED_FUNCTION; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, ce); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_CONSTANT_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zend_class_entry *ce, *scope; - zend_class_constant *c; - zval *value, *zv; - USE_OPLINE - - SAVE_OPLINE(); - - do { - if (IS_VAR == IS_CONST) { - if (EXPECTED(CACHED_PTR(opline->extended_value + sizeof(void*)))) { - value = CACHED_PTR(opline->extended_value + sizeof(void*)); - break; - } else if (EXPECTED(CACHED_PTR(opline->extended_value))) { - ce = CACHED_PTR(opline->extended_value); - } else { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - } else { - if (IS_VAR == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - if (EXPECTED(CACHED_PTR(opline->extended_value) == ce)) { - value = CACHED_PTR(opline->extended_value + sizeof(void*)); - break; - } - } - - zv = zend_hash_find_ex(&ce->constants_table, Z_STR_P(RT_CONSTANT(opline, opline->op2)), 1); - if (EXPECTED(zv != NULL)) { - c = Z_PTR_P(zv); - scope = EX(func)->op_array.scope; - if (!zend_verify_const_access(c, scope)) { - zend_throw_error(NULL, "Cannot access %s const %s::%s", zend_visibility_string(Z_ACCESS_FLAGS(c->value)), ZSTR_VAL(ce->name), Z_STRVAL_P(RT_CONSTANT(opline, opline->op2))); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - value = &c->value; - if (Z_TYPE_P(value) == IS_CONSTANT_AST) { - zval_update_constant_ex(value, c->ce); - if (UNEXPECTED(EG(exception) != NULL)) { - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - CACHE_POLYMORPHIC_PTR(opline->extended_value, ce, value); - } else { - zend_throw_error(NULL, "Undefined class constant '%s'", Z_STRVAL_P(RT_CONSTANT(opline, opline->op2))); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } while (0); - - ZVAL_COPY_OR_DUP(EX_VAR(opline->result.var), value); - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_VAR == IS_VAR || IS_VAR == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } else { - expr_ptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_TMP_VAR) { - /* pass */ - } else if (IS_VAR == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_VAR == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if (IS_CONST != IS_UNUSED) { - - zval *offset = RT_CONSTANT(opline, opline->op2); - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CONST != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if (IS_CONST == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_VAR != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - zval *offset; - zend_ulong hval; - zend_string *key; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - offset = RT_CONSTANT(opline, opline->op2); - - do { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - -unset_dim_array: - SEPARATE_ARRAY(container); - ht = Z_ARRVAL_P(container); -offset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - key = Z_STR_P(offset); - if (IS_CONST != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(key, hval)) { - goto num_index_dim; - } - } -str_index_dim: - if (ht == &EG(symbol_table)) { - zend_delete_global_variable(key); - } else { - zend_hash_del(ht, key); - } - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_dim: - zend_hash_index_del(ht, hval); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto offset_again; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_NULL) { - key = ZSTR_EMPTY_ALLOC(); - goto str_index_dim; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - hval = Z_RES_HANDLE_P(offset); - goto num_index_dim; - } else if (IS_CONST == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - key = ZSTR_EMPTY_ALLOC(); - goto str_index_dim; - } else { - zend_error(E_WARNING, "Illegal offset type in unset"); - } - break; - } else if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto unset_dim_array; - } - } - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - container = ZVAL_UNDEFINED_OP1(); - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - offset = ZVAL_UNDEFINED_OP2(); - } - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if (IS_CONST == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - Z_OBJ_HT_P(container)->unset_dimension(container, offset); - } else if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_STRING)) { - zend_throw_error(NULL, "Cannot unset string offsets"); - } - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - zval *offset; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - offset = RT_CONSTANT(opline, opline->op2); - - do { - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (Z_TYPE_P(container) != IS_OBJECT) { - if (IS_VAR == IS_CV - && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - break; - } - } else { - break; - } - } - Z_OBJ_HT_P(container)->unset_property(container, offset, ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL)); - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_VAR != IS_UNUSED) { - zend_free_op free_op1; - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_VAR & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_VAR == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } - } else { - zval *value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - zval_ptr_dtor_nogc(free_op1); - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_CONST != IS_UNUSED) { - - zval *key = RT_CONSTANT(opline, opline->op2); - - /* Consts, temporary variables and references need copying */ - if (IS_CONST == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_CONST == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_CONST == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IN_ARRAY_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1; - HashTable *ht = Z_ARRVAL_P(RT_CONSTANT(opline, opline->op2)); - zval *result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var_deref(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - result = zend_hash_find_ex(ht, Z_STR_P(op1), IS_VAR == IS_CONST); - } else if (opline->extended_value) { - if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - result = zend_hash_index_find(ht, Z_LVAL_P(op1)); - } else { - result = NULL; - } - } else if (Z_TYPE_P(op1) <= IS_FALSE) { - result = zend_hash_find_ex(ht, ZSTR_EMPTY_ALLOC(), 1); - } else { - zend_string *key; - zval key_tmp, result_tmp, *val; - - result = NULL; - ZEND_HASH_FOREACH_STR_KEY_VAL(ht, key, val) { - ZVAL_STR(&key_tmp, key); - compare_function(&result_tmp, op1, &key_tmp); - if (Z_LVAL(result_tmp) == 0) { - result = val; - break; - } - } ZEND_HASH_FOREACH_END(); - } - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result != NULL); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_OP_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2, free_op_data; - zval *object; - zval *property; - zval *value; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_op_object; - } - if (IS_VAR == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -assign_op_object: - /* here we are sure we are dealing with an object */ - cache_slot = ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR((opline+1)->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - zval *orig_zptr = zptr; - zend_reference *ref; - - do { - if (UNEXPECTED(Z_ISREF_P(zptr))) { - ref = Z_REF_P(zptr); - zptr = Z_REFVAL_P(zptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), orig_zptr); - } - if (UNEXPECTED(prop_info)) { - /* special case for typed properties */ - zend_binary_assign_op_typed_prop(prop_info, zptr, value OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_binary_op(zptr, zptr, value OPLINE_CC); - } - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), zptr); - } - } - } else { - zend_assign_op_overloaded_property(object, property, cache_slot, value OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - FREE_OP(free_op_data); - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMP|VAR|CV, UNUSED|CONST|TMPVAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_OP_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2, free_op_data1; - zval *var_ptr; - zval *value, *container, *dim; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -assign_dim_op_array: - SEPARATE_ARRAY(container); -assign_dim_op_new_array: - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - var_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(container), &EG(uninitialized_zval)); - if (UNEXPECTED(!var_ptr)) { - zend_cannot_add_element(); - goto assign_dim_op_ret_null; - } - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - var_ptr = zend_fetch_dimension_address_inner_RW_CONST(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } else { - var_ptr = zend_fetch_dimension_address_inner_RW(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(!var_ptr)) { - goto assign_dim_op_ret_null; - } - } - - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data1); - - do { - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED && UNEXPECTED(Z_ISREF_P(var_ptr))) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - FREE_OP(free_op_data1); - } else { - if (EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto assign_dim_op_array; - } - } - - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_binary_assign_op_obj_dim(container, dim OPLINE_CC EXECUTE_DATA_CC); - } else if (EXPECTED(Z_TYPE_P(container) <= IS_FALSE)) { - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - ZVAL_ARR(container, zend_new_array(8)); - goto assign_dim_op_new_array; - } else { - zend_binary_assign_op_dim_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); -assign_dim_op_ret_null: - FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OP_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *var_ptr; - zval *value; - - SAVE_OPLINE(); - value = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - var_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - } - - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto pre_incdec_object; - } - if (IS_VAR == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -pre_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - prop_info = (zend_property_info *) CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto post_incdec_object; - } - if (IS_VAR == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -post_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - - zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_W(container, _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC), (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_VAR == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_RW(container, _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC), (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_VAR == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_UNSET(container, _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC), (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_VAR == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *property, *container, *result; - - SAVE_OPLINE(); - - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address( - result, container, IS_VAR, property, (IS_TMP_VAR|IS_VAR), - (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_OBJ_FLAGS) : NULL), - BP_VAR_W, opline->extended_value & ZEND_FETCH_OBJ_FLAGS, 1 OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_VAR == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *property, *container, *result; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_VAR, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_RW, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_VAR == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container, *property, *result; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_VAR, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_UNSET, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_VAR == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_LIST_W_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container, *dim; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR - && Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT - && UNEXPECTED(!Z_ISREF_P(container)) - ) { - zend_error(E_NOTICE, "Attempting to set reference to non referenceable value"); - zend_fetch_dimension_address_LIST_r(container, dim, (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_fetch_dimension_address_W(container, dim, (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - } - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CONST, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CONST != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CONST == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CONST == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2, free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_TMP_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2, free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CV, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CV != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CV == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CV == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op2, free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = RT_CONSTANT((opline+1), (opline+1)->op1); - SEPARATE_ARRAY(object_ptr); - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CONST == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CONST == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CONST, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zval_ptr_dtor_nogc(free_op2); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op2, free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_TMP_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zval_ptr_dtor_nogc(free_op2); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op2, free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zval_ptr_dtor_nogc(free_op2); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op2, free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CV == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CV == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zval_ptr_dtor_nogc(free_op2); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2, free_op_data; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - value_ptr = _get_zval_ptr_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (1) { - if (IS_VAR == IS_UNUSED) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_VAR, property, (IS_TMP_VAR|IS_VAR), value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op_data)) {zval_ptr_dtor_nogc(free_op_data);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - value_ptr = _get_zval_ptr_cv_BP_VAR_W((opline+1)->op1.var EXECUTE_DATA_CC); - - if (1) { - if (IS_VAR == IS_UNUSED) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_VAR, property, (IS_TMP_VAR|IS_VAR), value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_class_entry *ce; - uint32_t call_info; - zend_function *fbc; - zend_execute_data *call; - - SAVE_OPLINE(); - - if (IS_VAR == IS_CONST) { - /* no function found. try a static method in class */ - ce = CACHED_PTR(opline->result.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - zval_ptr_dtor_nogc(EX_VAR(opline->op2.var)); - HANDLE_EXCEPTION(); - } - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - CACHE_PTR(opline->result.num, ce); - } - } - } else if (IS_VAR == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - zval_ptr_dtor_nogc(EX_VAR(opline->op2.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - if (IS_VAR == IS_CONST && - (IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED((fbc = CACHED_PTR(opline->result.num + sizeof(void*))) != NULL)) { - /* nothing to do */ - } else if (IS_VAR != IS_CONST && - (IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == ce)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zend_free_op free_op2; - - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if ((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - zval_ptr_dtor_nogc(free_op2); - HANDLE_EXCEPTION(); - } while (0); - } - } - - if (ce->get_static_method) { - fbc = ce->get_static_method(ce, Z_STR_P(function_name)); - } else { - fbc = zend_std_get_static_method(ce, Z_STR_P(function_name), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - } - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(ce, Z_STR_P(function_name)); - } - zval_ptr_dtor_nogc(free_op2); - HANDLE_EXCEPTION(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE)))) { - CACHE_POLYMORPHIC_PTR(opline->result.num, ce, fbc); - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zval_ptr_dtor_nogc(free_op2); - } - } else { - if (UNEXPECTED(ce->constructor == NULL)) { - zend_throw_error(NULL, "Cannot call constructor"); - HANDLE_EXCEPTION(); - } - if (Z_TYPE(EX(This)) == IS_OBJECT && Z_OBJ(EX(This))->ce != ce->constructor->common.scope && (ce->constructor->common.fn_flags & ZEND_ACC_PRIVATE)) { - zend_throw_error(NULL, "Cannot call private %s::__construct()", ZSTR_VAL(ce->name)); - HANDLE_EXCEPTION(); - } - fbc = ce->constructor; - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (!(fbc->common.fn_flags & ZEND_ACC_STATIC)) { - if (Z_TYPE(EX(This)) == IS_OBJECT && instanceof_function(Z_OBJCE(EX(This)), ce)) { - ce = (zend_class_entry*)Z_OBJ(EX(This)); - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - } else { - zend_non_static_method_call(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - goto check_parent_and_self; - } - } else { -check_parent_and_self: - /* previous opcode is ZEND_FETCH_CLASS */ - if (IS_VAR == IS_UNUSED - && ((opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_PARENT || - (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF)) { - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ce = Z_OBJCE(EX(This)); - } else { - ce = Z_CE(EX(This)); - } - } - call_info = ZEND_CALL_NESTED_FUNCTION; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, ce); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_VAR == IS_VAR || IS_VAR == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } else { - expr_ptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_TMP_VAR) { - /* pass */ - } else if (IS_VAR == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_VAR == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zend_free_op free_op2; - zval *offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - zval_ptr_dtor_nogc(free_op2); - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_VAR != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - zval *offset; - zend_ulong hval; - zend_string *key; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - -unset_dim_array: - SEPARATE_ARRAY(container); - ht = Z_ARRVAL_P(container); -offset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - key = Z_STR_P(offset); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(key, hval)) { - goto num_index_dim; - } - } -str_index_dim: - if (ht == &EG(symbol_table)) { - zend_delete_global_variable(key); - } else { - zend_hash_del(ht, key); - } - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_dim: - zend_hash_index_del(ht, hval); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto offset_again; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_NULL) { - key = ZSTR_EMPTY_ALLOC(); - goto str_index_dim; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - hval = Z_RES_HANDLE_P(offset); - goto num_index_dim; - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - key = ZSTR_EMPTY_ALLOC(); - goto str_index_dim; - } else { - zend_error(E_WARNING, "Illegal offset type in unset"); - } - break; - } else if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto unset_dim_array; - } - } - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - container = ZVAL_UNDEFINED_OP1(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - offset = ZVAL_UNDEFINED_OP2(); - } - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - Z_OBJ_HT_P(container)->unset_dimension(container, offset); - } else if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_STRING)) { - zend_throw_error(NULL, "Cannot unset string offsets"); - } - } while (0); - - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - zval *offset; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (Z_TYPE_P(container) != IS_OBJECT) { - if (IS_VAR == IS_CV - && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - break; - } - } else { - break; - } - } - Z_OBJ_HT_P(container)->unset_property(container, offset, (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL)); - } while (0); - - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_IDENTICAL_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var_deref(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = fast_is_identical_function(op1, op2); - zval_ptr_dtor_nogc(free_op1); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_IDENTICAL_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var_deref(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = fast_is_not_identical_function(op1, op2); - zval_ptr_dtor_nogc(free_op1); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - variable_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(0)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(0)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - variable_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(1)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(1)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_VAR != IS_UNUSED) { - zend_free_op free_op1; - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_VAR & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_VAR == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } - } else { - zval *value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - zval_ptr_dtor_nogc(free_op1); - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_TMP_VAR != IS_UNUSED) { - zend_free_op free_op2; - zval *key = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_TMP_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_TMP_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_TMP_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_TMP_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_IDENTICAL_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var_deref(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var_deref(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = fast_is_identical_function(op1, op2); - zval_ptr_dtor_nogc(free_op1); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_IDENTICAL_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var_deref(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var_deref(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = fast_is_not_identical_function(op1, op2); - zval_ptr_dtor_nogc(free_op1); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - variable_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(0)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(0)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - variable_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(1)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(1)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_REF_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *variable_ptr; - zval *value_ptr; - - SAVE_OPLINE(); - value_ptr = _get_zval_ptr_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - variable_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - variable_ptr = &EG(uninitialized_zval); - } else if (IS_VAR == IS_VAR && - UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT)) { - - zend_throw_error(NULL, "Cannot assign by reference to an array dimension of an object"); - variable_ptr = &EG(uninitialized_zval); - } else if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(value_ptr))) { - variable_ptr = &EG(uninitialized_zval); - } else if (IS_VAR == IS_VAR && - opline->extended_value == ZEND_RETURNS_FUNCTION && - UNEXPECTED(!Z_ISREF_P(value_ptr))) { - - variable_ptr = zend_wrong_assign_to_variable_reference( - variable_ptr, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_variable_reference(variable_ptr, value_ptr); - } - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), variable_ptr); - } - - if (UNEXPECTED(free_op2)) {zval_ptr_dtor_nogc(free_op2);}; - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_VAR != IS_UNUSED) { - zend_free_op free_op1; - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_VAR & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_VAR == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } - } else { - zval *value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - zval_ptr_dtor_nogc(free_op1); - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_VAR != IS_UNUSED) { - zend_free_op free_op2; - zval *key = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - zval_ptr_dtor_nogc(free_op2); - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_OP_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op_data1; - zval *var_ptr; - zval *value, *container, *dim; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -assign_dim_op_array: - SEPARATE_ARRAY(container); -assign_dim_op_new_array: - dim = NULL; - if (IS_UNUSED == IS_UNUSED) { - var_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(container), &EG(uninitialized_zval)); - if (UNEXPECTED(!var_ptr)) { - zend_cannot_add_element(); - goto assign_dim_op_ret_null; - } - } else { - if (IS_UNUSED == IS_CONST) { - var_ptr = zend_fetch_dimension_address_inner_RW_CONST(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } else { - var_ptr = zend_fetch_dimension_address_inner_RW(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(!var_ptr)) { - goto assign_dim_op_ret_null; - } - } - - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data1); - - do { - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_ISREF_P(var_ptr))) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - FREE_OP(free_op_data1); - } else { - if (EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto assign_dim_op_array; - } - } - - dim = NULL; - - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if (IS_UNUSED == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_binary_assign_op_obj_dim(container, dim OPLINE_CC EXECUTE_DATA_CC); - } else if (EXPECTED(Z_TYPE_P(container) <= IS_FALSE)) { - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - ZVAL_ARR(container, zend_new_array(8)); - goto assign_dim_op_new_array; - } else { - zend_binary_assign_op_dim_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); -assign_dim_op_ret_null: - FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_W(container, NULL, IS_UNUSED OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_RW(container, NULL, IS_UNUSED OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_W_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if (IS_UNUSED == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = RT_CONSTANT((opline+1), (opline+1)->op1); - SEPARATE_ARRAY(object_ptr); - if (IS_UNUSED == IS_UNUSED) { - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CONST == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CONST == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = NULL; - if (IS_UNUSED == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CONST, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = NULL; - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_UNUSED == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_UNUSED == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = NULL; - value = RT_CONSTANT((opline+1), (opline+1)->op1); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = NULL; - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = NULL; -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_UNUSED != IS_UNUSED) { - - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_UNUSED == IS_UNUSED) { - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_TMP_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = NULL; - if (IS_UNUSED == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = NULL; - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_UNUSED == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = NULL; - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = NULL; - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = NULL; -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_UNUSED != IS_UNUSED) { - - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_UNUSED == IS_UNUSED) { - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = NULL; - if (IS_UNUSED == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = NULL; - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_UNUSED == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = NULL; - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = NULL; - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = NULL; -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_UNUSED != IS_UNUSED) { - - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_UNUSED == IS_UNUSED) { - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CV == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CV == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = NULL; - if (IS_UNUSED == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = NULL; - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_UNUSED == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = NULL; - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = NULL; - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = NULL; -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_UNUSED != IS_UNUSED) { - - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_class_entry *ce; - uint32_t call_info; - zend_function *fbc; - zend_execute_data *call; - - SAVE_OPLINE(); - - if (IS_VAR == IS_CONST) { - /* no function found. try a static method in class */ - ce = CACHED_PTR(opline->result.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - if (IS_UNUSED != IS_CONST) { - CACHE_PTR(opline->result.num, ce); - } - } - } else if (IS_VAR == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - if (IS_VAR == IS_CONST && - IS_UNUSED == IS_CONST && - EXPECTED((fbc = CACHED_PTR(opline->result.num + sizeof(void*))) != NULL)) { - /* nothing to do */ - } else if (IS_VAR != IS_CONST && - IS_UNUSED == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == ce)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else if (IS_UNUSED != IS_UNUSED) { - - - function_name = NULL; - if (IS_UNUSED != IS_CONST) { - if (UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (IS_UNUSED & (IS_VAR|IS_CV) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_UNUSED == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - - HANDLE_EXCEPTION(); - } while (0); - } - } - - if (ce->get_static_method) { - fbc = ce->get_static_method(ce, Z_STR_P(function_name)); - } else { - fbc = zend_std_get_static_method(ce, Z_STR_P(function_name), ((IS_UNUSED == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - } - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(ce, Z_STR_P(function_name)); - } - - HANDLE_EXCEPTION(); - } - if (IS_UNUSED == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE)))) { - CACHE_POLYMORPHIC_PTR(opline->result.num, ce, fbc); - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - if (IS_UNUSED != IS_CONST) { - - } - } else { - if (UNEXPECTED(ce->constructor == NULL)) { - zend_throw_error(NULL, "Cannot call constructor"); - HANDLE_EXCEPTION(); - } - if (Z_TYPE(EX(This)) == IS_OBJECT && Z_OBJ(EX(This))->ce != ce->constructor->common.scope && (ce->constructor->common.fn_flags & ZEND_ACC_PRIVATE)) { - zend_throw_error(NULL, "Cannot call private %s::__construct()", ZSTR_VAL(ce->name)); - HANDLE_EXCEPTION(); - } - fbc = ce->constructor; - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (!(fbc->common.fn_flags & ZEND_ACC_STATIC)) { - if (Z_TYPE(EX(This)) == IS_OBJECT && instanceof_function(Z_OBJCE(EX(This)), ce)) { - ce = (zend_class_entry*)Z_OBJ(EX(This)); - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - } else { - zend_non_static_method_call(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - goto check_parent_and_self; - } - } else { -check_parent_and_self: - /* previous opcode is ZEND_FETCH_CLASS */ - if (IS_VAR == IS_UNUSED - && ((opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_PARENT || - (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF)) { - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ce = Z_OBJCE(EX(This)); - } else { - ce = Z_CE(EX(This)); - } - } - call_info = ZEND_CALL_NESTED_FUNCTION; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, ce); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_VERIFY_RETURN_TYPE_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (IS_VAR == IS_UNUSED) { - zend_verify_missing_return_type(EX(func), CACHE_ADDR(opline->op2.num)); - } else { -/* prevents "undefined variable opline" errors */ -#if 0 || (IS_VAR != IS_UNUSED) - zval *retval_ref, *retval_ptr; - zend_free_op free_op1; - zend_arg_info *ret_info = EX(func)->common.arg_info - 1; - - retval_ref = retval_ptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_CONST) { - ZVAL_COPY(EX_VAR(opline->result.var), retval_ptr); - retval_ref = retval_ptr = EX_VAR(opline->result.var); - } else if (IS_VAR == IS_VAR) { - if (UNEXPECTED(Z_TYPE_P(retval_ptr) == IS_INDIRECT)) { - retval_ptr = Z_INDIRECT_P(retval_ptr); - } - ZVAL_DEREF(retval_ptr); - } else if (IS_VAR == IS_CV) { - ZVAL_DEREF(retval_ptr); - } - - if (UNEXPECTED(!ZEND_TYPE_IS_CLASS(ret_info->type) - && ZEND_TYPE_CODE(ret_info->type) != IS_CALLABLE - && ZEND_TYPE_CODE(ret_info->type) != IS_ITERABLE - && !ZEND_SAME_FAKE_TYPE(ZEND_TYPE_CODE(ret_info->type), Z_TYPE_P(retval_ptr)) - && !(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE) - && retval_ref != retval_ptr) - ) { - /* A cast might happen - unwrap the reference if this is a by-value return */ - if (Z_REFCOUNT_P(retval_ref) == 1) { - ZVAL_UNREF(retval_ref); - } else { - Z_DELREF_P(retval_ref); - ZVAL_COPY(retval_ref, retval_ptr); - } - retval_ptr = retval_ref; - } - zend_verify_return_type(EX(func), retval_ptr, CACHE_ADDR(opline->op2.num)); -#endif - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_NEW_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *result; - zend_function *constructor; - zend_class_entry *ce; - zend_execute_data *call; - - SAVE_OPLINE(); - if (IS_VAR == IS_CONST) { - ce = CACHED_PTR(opline->op2.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - CACHE_PTR(opline->op2.num, ce); - } - } else if (IS_VAR == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - result = EX_VAR(opline->result.var); - if (UNEXPECTED(object_init_ex(result, ce) != SUCCESS)) { - ZVAL_UNDEF(result); - HANDLE_EXCEPTION(); - } - - constructor = Z_OBJ_HT_P(result)->get_constructor(Z_OBJ_P(result)); - if (constructor == NULL) { - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - - /* If there are no arguments, skip over the DO_FCALL opcode. We check if the next - * opcode is DO_FCALL in case EXT instructions are used. */ - if (EXPECTED(opline->extended_value == 0 && (opline+1)->opcode == ZEND_DO_FCALL)) { - ZEND_VM_NEXT_OPCODE_EX(1, 2); - } - - /* Perform a dummy function call */ - call = zend_vm_stack_push_call_frame( - ZEND_CALL_FUNCTION, (zend_function *) &zend_pass_function, - opline->extended_value, NULL); - } else { - if (EXPECTED(constructor->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&constructor->op_array))) { - init_func_run_time_cache(&constructor->op_array); - } - /* We are not handling overloaded classes right now */ - call = zend_vm_stack_push_call_frame( - ZEND_CALL_FUNCTION | ZEND_CALL_RELEASE_THIS | ZEND_CALL_HAS_THIS, - constructor, - opline->extended_value, - Z_OBJ_P(result)); - Z_ADDREF_P(result); - } - - call->prev_execute_data = EX(call); - EX(call) = call; - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_VAR == IS_VAR || IS_VAR == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } else { - expr_ptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_TMP_VAR) { - /* pass */ - } else if (IS_VAR == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_VAR == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if (IS_UNUSED != IS_UNUSED) { - - zval *offset = NULL; - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_UNUSED != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if (IS_UNUSED == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_VAR != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEPARATE_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - if (UNEXPECTED(Z_ISREF_P(var_ptr))) { - if (UNEXPECTED(Z_REFCOUNT_P(var_ptr) == 1)) { - ZVAL_UNREF(var_ptr); - } - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_VAR != IS_UNUSED) { - zend_free_op free_op1; - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_VAR & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_VAR == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } - } else { - zval *value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - zval_ptr_dtor_nogc(free_op1); - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_UNUSED != IS_UNUSED) { - - zval *key = NULL; - - /* Consts, temporary variables and references need copying */ - if (IS_UNUSED == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_UNUSED == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_UNUSED == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MAKE_REF_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1 = EX_VAR(opline->op1.var); - - if (IS_VAR == IS_CV) { - if (UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_NEW_EMPTY_REF(op1); - Z_SET_REFCOUNT_P(op1, 2); - ZVAL_NULL(Z_REFVAL_P(op1)); - ZVAL_REF(EX_VAR(opline->result.var), Z_REF_P(op1)); - } else { - if (Z_ISREF_P(op1)) { - Z_ADDREF_P(op1); - } else { - ZVAL_MAKE_REF_EX(op1, 2); - } - ZVAL_REF(EX_VAR(opline->result.var), Z_REF_P(op1)); - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_INDIRECT)) { - op1 = Z_INDIRECT_P(op1); - if (EXPECTED(!Z_ISREF_P(op1))) { - ZVAL_MAKE_REF_EX(op1, 2); - } else { - GC_ADDREF(Z_REF_P(op1)); - } - ZVAL_REF(EX_VAR(opline->result.var), Z_REF_P(op1)); - } else { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), op1); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GET_TYPE_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *op1; - zend_string *type; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_var_deref(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - type = zend_zval_get_type(op1); - if (EXPECTED(type)) { - ZVAL_INTERNED_STR(EX_VAR(opline->result.var), type); - } else { - ZVAL_STRING(EX_VAR(opline->result.var), "unknown type"); - } - zval_ptr_dtor_nogc(free_op1); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op_data; - zval *object; - zval *property; - zval *value; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - do { - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_op_object; - } - if (IS_VAR == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -assign_op_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CV == IS_CONST) ? CACHE_ADDR((opline+1)->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - zval *orig_zptr = zptr; - zend_reference *ref; - - do { - if (UNEXPECTED(Z_ISREF_P(zptr))) { - ref = Z_REF_P(zptr); - zptr = Z_REFVAL_P(zptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - - if (IS_CV == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), orig_zptr); - } - if (UNEXPECTED(prop_info)) { - /* special case for typed properties */ - zend_binary_assign_op_typed_prop(prop_info, zptr, value OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_binary_op(zptr, zptr, value OPLINE_CC); - } - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), zptr); - } - } - } else { - zend_assign_op_overloaded_property(object, property, cache_slot, value OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - FREE_OP(free_op_data); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMP|VAR|CV, UNUSED|CONST|TMPVAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_OP_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op_data1; - zval *var_ptr; - zval *value, *container, *dim; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -assign_dim_op_array: - SEPARATE_ARRAY(container); -assign_dim_op_new_array: - dim = EX_VAR(opline->op2.var); - if (IS_CV == IS_UNUSED) { - var_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(container), &EG(uninitialized_zval)); - if (UNEXPECTED(!var_ptr)) { - zend_cannot_add_element(); - goto assign_dim_op_ret_null; - } - } else { - if (IS_CV == IS_CONST) { - var_ptr = zend_fetch_dimension_address_inner_RW_CONST(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } else { - var_ptr = zend_fetch_dimension_address_inner_RW(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(!var_ptr)) { - goto assign_dim_op_ret_null; - } - } - - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data1); - - do { - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_ISREF_P(var_ptr))) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - FREE_OP(free_op_data1); - } else { - if (EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto assign_dim_op_array; - } - } - - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if (IS_CV == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_binary_assign_op_obj_dim(container, dim OPLINE_CC EXECUTE_DATA_CC); - } else if (EXPECTED(Z_TYPE_P(container) <= IS_FALSE)) { - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - ZVAL_ARR(container, zend_new_array(8)); - goto assign_dim_op_new_array; - } else { - zend_binary_assign_op_dim_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); -assign_dim_op_ret_null: - FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OP_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *var_ptr; - zval *value; - - SAVE_OPLINE(); - value = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - var_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - do { - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto pre_incdec_object; - } - if (IS_VAR == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -pre_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - if (IS_CV == IS_CONST) { - prop_info = (zend_property_info *) CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - do { - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto post_incdec_object; - } - if (IS_VAR == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -post_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } else { - if (IS_CV == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - - zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_W(container, EX_VAR(opline->op2.var), IS_CV OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_RW(container, EX_VAR(opline->op2.var), IS_CV OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_W_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if (IS_CV == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - zend_fetch_dimension_address_UNSET(container, EX_VAR(opline->op2.var), IS_CV OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *result; - - SAVE_OPLINE(); - - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address( - result, container, IS_VAR, property, IS_CV, - ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_OBJ_FLAGS) : NULL), - BP_VAR_W, opline->extended_value & ZEND_FETCH_OBJ_FLAGS, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *result; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_VAR, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_RW, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_VAR & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_W_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container, *property, *result; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_VAR, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_UNSET, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_LIST_W_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container, *dim; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - dim = EX_VAR(opline->op2.var); - - if (IS_VAR == IS_VAR - && Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT - && UNEXPECTED(!Z_ISREF_P(container)) - ) { - zend_error(E_NOTICE, "Attempting to set reference to non referenceable value"); - zend_fetch_dimension_address_LIST_r(container, dim, IS_CV OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_fetch_dimension_address_W(container, dim, IS_CV OPLINE_CC EXECUTE_DATA_CC); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CV == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CONST, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CONST != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CONST == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CONST == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CV == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_TMP_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CV == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CV == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CV, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CV != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CV == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CV == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = RT_CONSTANT((opline+1), (opline+1)->op1); - SEPARATE_ARRAY(object_ptr); - if (IS_CV == IS_UNUSED) { - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CONST == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CONST == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = EX_VAR(opline->op2.var); - if (IS_CV == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CONST, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_CV == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CV == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CV != IS_UNUSED) { - - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_CV == IS_UNUSED) { - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_TMP_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = EX_VAR(opline->op2.var); - if (IS_CV == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CV == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CV == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CV != IS_UNUSED) { - - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_CV == IS_UNUSED) { - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = EX_VAR(opline->op2.var); - if (IS_CV == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CV == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CV == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CV != IS_UNUSED) { - - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_CV == IS_UNUSED) { - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CV == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CV == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = EX_VAR(opline->op2.var); - if (IS_CV == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_CV == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CV == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_VAR != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CV != IS_UNUSED) { - - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - variable_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - - if (UNEXPECTED(0)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(0)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - variable_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - - if (UNEXPECTED(1)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(1)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_REF_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *variable_ptr; - zval *value_ptr; - - SAVE_OPLINE(); - value_ptr = _get_zval_ptr_cv_BP_VAR_W(opline->op2.var EXECUTE_DATA_CC); - variable_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - variable_ptr = &EG(uninitialized_zval); - } else if (IS_VAR == IS_VAR && - UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT)) { - - zend_throw_error(NULL, "Cannot assign by reference to an array dimension of an object"); - variable_ptr = &EG(uninitialized_zval); - } else if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(value_ptr))) { - variable_ptr = &EG(uninitialized_zval); - } else if (IS_CV == IS_VAR && - opline->extended_value == ZEND_RETURNS_FUNCTION && - UNEXPECTED(!Z_ISREF_P(value_ptr))) { - - variable_ptr = zend_wrong_assign_to_variable_reference( - variable_ptr, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_variable_reference(variable_ptr, value_ptr); - } - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), variable_ptr); - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op_data; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - value_ptr = _get_zval_ptr_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (1) { - if (IS_VAR == IS_UNUSED) { - if (IS_CV == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if (IS_CV == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_VAR, property, IS_CV, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - - if (UNEXPECTED(free_op_data)) {zval_ptr_dtor_nogc(free_op_data);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - value_ptr = _get_zval_ptr_cv_BP_VAR_W((opline+1)->op1.var EXECUTE_DATA_CC); - - if (1) { - if (IS_VAR == IS_UNUSED) { - if (IS_CV == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if (IS_CV == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_VAR, property, IS_CV, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - - - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_class_entry *ce; - uint32_t call_info; - zend_function *fbc; - zend_execute_data *call; - - SAVE_OPLINE(); - - if (IS_VAR == IS_CONST) { - /* no function found. try a static method in class */ - ce = CACHED_PTR(opline->result.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - if (IS_CV != IS_CONST) { - CACHE_PTR(opline->result.num, ce); - } - } - } else if (IS_VAR == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - if (IS_VAR == IS_CONST && - IS_CV == IS_CONST && - EXPECTED((fbc = CACHED_PTR(opline->result.num + sizeof(void*))) != NULL)) { - /* nothing to do */ - } else if (IS_VAR != IS_CONST && - IS_CV == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == ce)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else if (IS_CV != IS_UNUSED) { - - - function_name = EX_VAR(opline->op2.var); - if (IS_CV != IS_CONST) { - if (UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (IS_CV & (IS_VAR|IS_CV) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - - HANDLE_EXCEPTION(); - } while (0); - } - } - - if (ce->get_static_method) { - fbc = ce->get_static_method(ce, Z_STR_P(function_name)); - } else { - fbc = zend_std_get_static_method(ce, Z_STR_P(function_name), ((IS_CV == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - } - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(ce, Z_STR_P(function_name)); - } - - HANDLE_EXCEPTION(); - } - if (IS_CV == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE)))) { - CACHE_POLYMORPHIC_PTR(opline->result.num, ce, fbc); - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - if (IS_CV != IS_CONST) { - - } - } else { - if (UNEXPECTED(ce->constructor == NULL)) { - zend_throw_error(NULL, "Cannot call constructor"); - HANDLE_EXCEPTION(); - } - if (Z_TYPE(EX(This)) == IS_OBJECT && Z_OBJ(EX(This))->ce != ce->constructor->common.scope && (ce->constructor->common.fn_flags & ZEND_ACC_PRIVATE)) { - zend_throw_error(NULL, "Cannot call private %s::__construct()", ZSTR_VAL(ce->name)); - HANDLE_EXCEPTION(); - } - fbc = ce->constructor; - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (!(fbc->common.fn_flags & ZEND_ACC_STATIC)) { - if (Z_TYPE(EX(This)) == IS_OBJECT && instanceof_function(Z_OBJCE(EX(This)), ce)) { - ce = (zend_class_entry*)Z_OBJ(EX(This)); - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - } else { - zend_non_static_method_call(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - goto check_parent_and_self; - } - } else { -check_parent_and_self: - /* previous opcode is ZEND_FETCH_CLASS */ - if (IS_VAR == IS_UNUSED - && ((opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_PARENT || - (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF)) { - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ce = Z_OBJCE(EX(This)); - } else { - ce = Z_CE(EX(This)); - } - } - call_info = ZEND_CALL_NESTED_FUNCTION; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, ce); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_VAR == IS_VAR || IS_VAR == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } else { - expr_ptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_TMP_VAR) { - /* pass */ - } else if (IS_VAR == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_VAR == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if (IS_CV != IS_UNUSED) { - - zval *offset = EX_VAR(opline->op2.var); - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CV != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if (IS_CV == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_VAR != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - zval *offset; - zend_ulong hval; - zend_string *key; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - offset = EX_VAR(opline->op2.var); - - do { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - -unset_dim_array: - SEPARATE_ARRAY(container); - ht = Z_ARRVAL_P(container); -offset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - key = Z_STR_P(offset); - if (IS_CV != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(key, hval)) { - goto num_index_dim; - } - } -str_index_dim: - if (ht == &EG(symbol_table)) { - zend_delete_global_variable(key); - } else { - zend_hash_del(ht, key); - } - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_dim: - zend_hash_index_del(ht, hval); - } else if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto offset_again; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_NULL) { - key = ZSTR_EMPTY_ALLOC(); - goto str_index_dim; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - hval = Z_RES_HANDLE_P(offset); - goto num_index_dim; - } else if (IS_CV == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - key = ZSTR_EMPTY_ALLOC(); - goto str_index_dim; - } else { - zend_error(E_WARNING, "Illegal offset type in unset"); - } - break; - } else if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto unset_dim_array; - } - } - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - container = ZVAL_UNDEFINED_OP1(); - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - offset = ZVAL_UNDEFINED_OP2(); - } - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if (IS_CV == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - Z_OBJ_HT_P(container)->unset_dimension(container, offset); - } else if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_STRING)) { - zend_throw_error(NULL, "Cannot unset string offsets"); - } - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - zval *offset; - - SAVE_OPLINE(); - container = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - if (IS_VAR == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - offset = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - do { - if (IS_VAR != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (Z_TYPE_P(container) != IS_OBJECT) { - if (IS_VAR == IS_CV - && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - break; - } - } else { - break; - } - } - Z_OBJ_HT_P(container)->unset_property(container, offset, ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL)); - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_VAR != IS_UNUSED) { - zend_free_op free_op1; - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_VAR & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = _get_zval_ptr_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_VAR == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - if (UNEXPECTED(free_op1)) {zval_ptr_dtor_nogc(free_op1);}; - } - } else { - zval *value = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - zval_ptr_dtor_nogc(free_op1); - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_CV != IS_UNUSED) { - - zval *key = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_CV == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_CV == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_CV == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *array; - zval *value, *variable_ptr; - uint32_t value_type; - HashTable *fe_ht; - HashPosition pos; - Bucket *p; - - array = EX_VAR(opline->op1.var); - SAVE_OPLINE(); - fe_ht = Z_ARRVAL_P(array); - pos = Z_FE_POS_P(array); - p = fe_ht->arData + pos; - while (1) { - if (UNEXPECTED(pos >= fe_ht->nNumUsed)) { - /* reached end of iteration */ - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } - value = &p->val; - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - if (UNEXPECTED(value_type == IS_INDIRECT)) { - value = Z_INDIRECT_P(value); - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - break; - } - } else { - break; - } - } - pos++; - p++; - } - Z_FE_POS_P(array) = pos + 1; - if (0) { - if (!p->key) { - ZVAL_LONG(EX_VAR(opline->result.var), p->h); - } else { - ZVAL_STR_COPY(EX_VAR(opline->result.var), p->key); - } - } - - variable_ptr = EX_VAR(opline->op2.var); - zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *array; - zval *value, *variable_ptr; - uint32_t value_type; - HashTable *fe_ht; - HashPosition pos; - Bucket *p; - - array = EX_VAR(opline->op1.var); - SAVE_OPLINE(); - fe_ht = Z_ARRVAL_P(array); - pos = Z_FE_POS_P(array); - p = fe_ht->arData + pos; - while (1) { - if (UNEXPECTED(pos >= fe_ht->nNumUsed)) { - /* reached end of iteration */ - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } - value = &p->val; - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - if (UNEXPECTED(value_type == IS_INDIRECT)) { - value = Z_INDIRECT_P(value); - value_type = Z_TYPE_INFO_P(value); - if (EXPECTED(value_type != IS_UNDEF)) { - break; - } - } else { - break; - } - } - pos++; - p++; - } - Z_FE_POS_P(array) = pos + 1; - if (1) { - if (!p->key) { - ZVAL_LONG(EX_VAR(opline->result.var), p->h); - } else { - ZVAL_STR_COPY(EX_VAR(opline->result.var), p->key); - } - } - - variable_ptr = EX_VAR(opline->op2.var); - zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CHECK_FUNC_ARG_SPEC_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(0)) { - if (QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_ADD_CALL_FLAG(EX(call), ZEND_CALL_SEND_ARG_BY_REF); - } else { - ZEND_DEL_CALL_FLAG(EX(call), ZEND_CALL_SEND_ARG_BY_REF); - } - } else if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_ADD_CALL_FLAG(EX(call), ZEND_CALL_SEND_ARG_BY_REF); - } else { - ZEND_DEL_CALL_FLAG(EX(call), ZEND_CALL_SEND_ARG_BY_REF); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CHECK_FUNC_ARG_SPEC_UNUSED_QUICK_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(1)) { - if (QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_ADD_CALL_FLAG(EX(call), ZEND_CALL_SEND_ARG_BY_REF); - } else { - ZEND_DEL_CALL_FLAG(EX(call), ZEND_CALL_SEND_ARG_BY_REF); - } - } else if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_ADD_CALL_FLAG(EX(call), ZEND_CALL_SEND_ARG_BY_REF); - } else { - ZEND_DEL_CALL_FLAG(EX(call), ZEND_CALL_SEND_ARG_BY_REF); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CLONE_SPEC_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *obj; - zend_class_entry *ce, *scope; - zend_function *clone; - zend_object_clone_obj_t clone_call; - - SAVE_OPLINE(); - obj = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(obj) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - do { - if (IS_UNUSED == IS_CONST || - (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(obj) != IS_OBJECT))) { - if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(obj)) { - obj = Z_REFVAL_P(obj); - if (EXPECTED(Z_TYPE_P(obj) == IS_OBJECT)) { - break; - } - } - ZVAL_UNDEF(EX_VAR(opline->result.var)); - if (IS_UNUSED == IS_CV && UNEXPECTED(Z_TYPE_P(obj) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "__clone method called on non-object"); - - HANDLE_EXCEPTION(); - } - } while (0); - - ce = Z_OBJCE_P(obj); - clone = ce->clone; - clone_call = Z_OBJ_HT_P(obj)->clone_obj; - if (UNEXPECTED(clone_call == NULL)) { - zend_throw_error(NULL, "Trying to clone an uncloneable object of class %s", ZSTR_VAL(ce->name)); - - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - - if (clone && !(clone->common.fn_flags & ZEND_ACC_PUBLIC)) { - scope = EX(func)->op_array.scope; - if (clone->common.scope != scope) { - if (UNEXPECTED(clone->common.fn_flags & ZEND_ACC_PRIVATE) - || UNEXPECTED(!zend_check_protected(zend_get_function_root_class(clone), scope))) { - zend_wrong_clone_call(clone, scope); - - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - } - - ZVAL_OBJ(EX_VAR(opline->result.var), clone_call(obj)); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_NAME_SPEC_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - uint32_t fetch_type; - zend_class_entry *called_scope, *scope; - USE_OPLINE - - fetch_type = opline->op1.num; - - scope = EX(func)->op_array.scope; - if (UNEXPECTED(scope == NULL)) { - SAVE_OPLINE(); - zend_throw_error(NULL, "Cannot use \"%s\" when no class scope is active", - fetch_type == ZEND_FETCH_CLASS_SELF ? "self" : - fetch_type == ZEND_FETCH_CLASS_PARENT ? "parent" : "static"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - - switch (fetch_type) { - case ZEND_FETCH_CLASS_SELF: - ZVAL_STR_COPY(EX_VAR(opline->result.var), scope->name); - break; - case ZEND_FETCH_CLASS_PARENT: - if (UNEXPECTED(scope->parent == NULL)) { - SAVE_OPLINE(); - zend_throw_error(NULL, - "Cannot use \"parent\" when current class scope has no parent"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - ZVAL_STR_COPY(EX_VAR(opline->result.var), scope->parent->name); - break; - case ZEND_FETCH_CLASS_STATIC: - if (Z_TYPE(EX(This)) == IS_OBJECT) { - called_scope = Z_OBJCE(EX(This)); - } else { - called_scope = Z_CE(EX(This)); - } - ZVAL_STR_COPY(EX_VAR(opline->result.var), called_scope->name); - break; - EMPTY_SWITCH_DEFAULT_CASE() - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *object; - zval *property; - zval *value; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - do { - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_op_object; - } - if (IS_UNUSED == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -assign_op_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CONST == IS_CONST) ? CACHE_ADDR((opline+1)->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - zval *orig_zptr = zptr; - zend_reference *ref; - - do { - if (UNEXPECTED(Z_ISREF_P(zptr))) { - ref = Z_REF_P(zptr); - zptr = Z_REFVAL_P(zptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - - if (IS_CONST == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), orig_zptr); - } - if (UNEXPECTED(prop_info)) { - /* special case for typed properties */ - zend_binary_assign_op_typed_prop(prop_info, zptr, value OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_binary_op(zptr, zptr, value OPLINE_CC); - } - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), zptr); - } - } - } else { - zend_assign_op_overloaded_property(object, property, cache_slot, value OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - FREE_OP(free_op_data); - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMP|VAR|CV, UNUSED|CONST|TMPVAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - do { - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto pre_incdec_object; - } - if (IS_UNUSED == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -pre_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - if (IS_CONST == IS_CONST) { - prop_info = (zend_property_info *) CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - do { - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto post_incdec_object; - } - if (IS_UNUSED == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -post_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } else { - if (IS_CONST == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - - zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static zend_always_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_UNUSED_CONST_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = RT_CONSTANT(opline, opline->op2); - - if (IS_UNUSED == IS_CONST || - (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - if (IS_UNUSED == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - zend_wrong_property_read(offset); - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_r_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CONST == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_REF /* FUNC_ARG fetch may contain it */); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_INFO_P(retval) != IS_UNDEF)) { - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { -fetch_obj_r_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - } - } else if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_R, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_r_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_r_finish: - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_UNUSED_CONST_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *result; - - SAVE_OPLINE(); - - container = &EX(This); - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - zend_fetch_property_address( - result, container, IS_UNUSED, property, IS_CONST, - ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_OBJ_FLAGS) : NULL), - BP_VAR_W, opline->extended_value & ZEND_FETCH_OBJ_FLAGS, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *result; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - property = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_UNUSED, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_RW, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = RT_CONSTANT(opline, opline->op2); - - if (IS_UNUSED == IS_CONST || - (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_is_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CONST == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_P(retval) != IS_UNDEF)) { - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { -fetch_obj_is_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - } - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_IS, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_is_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_is_finish: - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_UNUSED & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_W_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container, *property, *result; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_UNUSED, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_UNSET, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CONST == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CONST, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CONST != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CONST == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CONST == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CONST == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_TMP_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CONST == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CONST == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CV, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CV != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CV == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CV == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - value_ptr = _get_zval_ptr_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (1) { - if (IS_UNUSED == IS_UNUSED) { - if (IS_CONST == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if (IS_CONST == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_UNUSED, property, IS_CONST, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - - if (UNEXPECTED(free_op_data)) {zval_ptr_dtor_nogc(free_op_data);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - value_ptr = _get_zval_ptr_cv_BP_VAR_W((opline+1)->op1.var EXECUTE_DATA_CC); - - if (1) { - if (IS_UNUSED == IS_UNUSED) { - if (IS_CONST == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if (IS_CONST == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_UNUSED, property, IS_CONST, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - - - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ROPE_INIT_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_string **rope; - zval *var; - - /* Compiler allocates the necessary number of zval slots to keep the rope */ - rope = (zend_string**)EX_VAR(opline->result.var); - if (IS_CONST == IS_CONST) { - var = RT_CONSTANT(opline, opline->op2); - rope[0] = Z_STR_P(var); - if (UNEXPECTED(Z_REFCOUNTED_P(var))) { - Z_ADDREF_P(var); - } - } else { - var = RT_CONSTANT(opline, opline->op2); - if (EXPECTED(Z_TYPE_P(var) == IS_STRING)) { - if (IS_CONST == IS_CV) { - rope[0] = zend_string_copy(Z_STR_P(var)); - } else { - rope[0] = Z_STR_P(var); - } - } else { - SAVE_OPLINE(); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(var) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - rope[0] = zval_get_string_func(var); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - - zval *class_name; - USE_OPLINE - - SAVE_OPLINE(); - if (IS_CONST == IS_UNUSED) { - Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(NULL, opline->op1.num); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else if (IS_CONST == IS_CONST) { - zend_class_entry *ce = CACHED_PTR(opline->extended_value); - - if (UNEXPECTED(ce == NULL)) { - class_name = RT_CONSTANT(opline, opline->op2); - ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), opline->op1.num); - CACHE_PTR(opline->extended_value, ce); - } - Z_CE_P(EX_VAR(opline->result.var)) = ce; - } else { - class_name = RT_CONSTANT(opline, opline->op2); -try_class_name: - if (Z_TYPE_P(class_name) == IS_OBJECT) { - Z_CE_P(EX_VAR(opline->result.var)) = Z_OBJCE_P(class_name); - } else if (Z_TYPE_P(class_name) == IS_STRING) { - Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(Z_STR_P(class_name), opline->op1.num); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && Z_TYPE_P(class_name) == IS_REFERENCE) { - class_name = Z_REFVAL_P(class_name); - goto try_class_name; - } else { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(class_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Class name must be a valid object or a string"); - } - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_free_op free_op1; - zval *object; - zend_function *fbc; - zend_class_entry *called_scope; - zend_object *obj; - zend_execute_data *call; - uint32_t call_info; - - SAVE_OPLINE(); - - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - if (IS_CONST != IS_CONST) { - function_name = RT_CONSTANT(opline, opline->op2); - } - - if (IS_CONST != IS_CONST && - UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Method name must be a string"); - - - HANDLE_EXCEPTION(); - } while (0); - } - - if (IS_UNUSED != IS_UNUSED) { - do { - if (IS_UNUSED == IS_CONST || UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if ((IS_UNUSED & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(object))) { - object = Z_REFVAL_P(object); - if (EXPECTED(Z_TYPE_P(object) == IS_OBJECT)) { - break; - } - } - if (IS_UNUSED == IS_CV && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - object = ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if (IS_CONST != IS_CONST) { - - } - HANDLE_EXCEPTION(); - } - } - if (IS_CONST == IS_CONST) { - function_name = RT_CONSTANT(opline, opline->op2); - } - zend_invalid_method_call(object, function_name); - - - HANDLE_EXCEPTION(); - } - } while (0); - } - - obj = Z_OBJ_P(object); - called_scope = obj->ce; - - if (IS_CONST == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == called_scope)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else { - zend_object *orig_obj = obj; - - if (IS_CONST == IS_CONST) { - function_name = RT_CONSTANT(opline, opline->op2); - } - - /* First, locate the function. */ - fbc = obj->handlers->get_method(&obj, Z_STR_P(function_name), ((IS_CONST == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(obj->ce, Z_STR_P(function_name)); - } - - - HANDLE_EXCEPTION(); - } - if (IS_CONST == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE))) && - EXPECTED(obj == orig_obj)) { - CACHE_POLYMORPHIC_PTR(opline->result.num, called_scope, fbc); - } - if ((IS_UNUSED & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(obj != orig_obj)) { - /* Reset "object" to trigger reference counting */ - object = NULL; - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (IS_CONST != IS_CONST) { - - } - - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_STATIC) != 0)) { - - if ((IS_UNUSED & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - /* call static method */ - obj = (zend_object*)called_scope; - call_info = ZEND_CALL_NESTED_FUNCTION; - } else if (IS_UNUSED & (IS_VAR|IS_TMP_VAR|IS_CV)) { - if (IS_UNUSED == IS_CV) { - GC_ADDREF(obj); /* For $this pointer */ - } else if (free_op1 != object) { - GC_ADDREF(obj); /* For $this pointer */ - - } - /* CV may be changed indirectly (e.g. when it's a reference) */ - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS | ZEND_CALL_RELEASE_THIS; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, obj); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_class_entry *ce; - uint32_t call_info; - zend_function *fbc; - zend_execute_data *call; - - SAVE_OPLINE(); - - if (IS_UNUSED == IS_CONST) { - /* no function found. try a static method in class */ - ce = CACHED_PTR(opline->result.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - if (IS_CONST != IS_CONST) { - CACHE_PTR(opline->result.num, ce); - } - } - } else if (IS_UNUSED == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - if (IS_UNUSED == IS_CONST && - IS_CONST == IS_CONST && - EXPECTED((fbc = CACHED_PTR(opline->result.num + sizeof(void*))) != NULL)) { - /* nothing to do */ - } else if (IS_UNUSED != IS_CONST && - IS_CONST == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == ce)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else if (IS_CONST != IS_UNUSED) { - - - function_name = RT_CONSTANT(opline, opline->op2); - if (IS_CONST != IS_CONST) { - if (UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (IS_CONST & (IS_VAR|IS_CV) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - - HANDLE_EXCEPTION(); - } while (0); - } - } - - if (ce->get_static_method) { - fbc = ce->get_static_method(ce, Z_STR_P(function_name)); - } else { - fbc = zend_std_get_static_method(ce, Z_STR_P(function_name), ((IS_CONST == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - } - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(ce, Z_STR_P(function_name)); - } - - HANDLE_EXCEPTION(); - } - if (IS_CONST == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE)))) { - CACHE_POLYMORPHIC_PTR(opline->result.num, ce, fbc); - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - if (IS_CONST != IS_CONST) { - - } - } else { - if (UNEXPECTED(ce->constructor == NULL)) { - zend_throw_error(NULL, "Cannot call constructor"); - HANDLE_EXCEPTION(); - } - if (Z_TYPE(EX(This)) == IS_OBJECT && Z_OBJ(EX(This))->ce != ce->constructor->common.scope && (ce->constructor->common.fn_flags & ZEND_ACC_PRIVATE)) { - zend_throw_error(NULL, "Cannot call private %s::__construct()", ZSTR_VAL(ce->name)); - HANDLE_EXCEPTION(); - } - fbc = ce->constructor; - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (!(fbc->common.fn_flags & ZEND_ACC_STATIC)) { - if (Z_TYPE(EX(This)) == IS_OBJECT && instanceof_function(Z_OBJCE(EX(This)), ce)) { - ce = (zend_class_entry*)Z_OBJ(EX(This)); - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - } else { - zend_non_static_method_call(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - goto check_parent_and_self; - } - } else { -check_parent_and_self: - /* previous opcode is ZEND_FETCH_CLASS */ - if (IS_UNUSED == IS_UNUSED - && ((opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_PARENT || - (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF)) { - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ce = Z_OBJCE(EX(This)); - } else { - ce = Z_CE(EX(This)); - } - } - call_info = ZEND_CALL_NESTED_FUNCTION; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, ce); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CONSTANT_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_constant *c; - - c = CACHED_PTR(opline->extended_value); - if (EXPECTED(c != NULL) && EXPECTED(!IS_SPECIAL_CACHE_VAL(c))) { - ZVAL_COPY_OR_DUP(EX_VAR(opline->result.var), &c->value); - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - zend_quick_get_constant(RT_CONSTANT(opline, opline->op2) + 1, opline->op1.num OPLINE_CC EXECUTE_DATA_CC); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_CONSTANT_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zend_class_entry *ce, *scope; - zend_class_constant *c; - zval *value, *zv; - USE_OPLINE - - SAVE_OPLINE(); - - do { - if (IS_UNUSED == IS_CONST) { - if (EXPECTED(CACHED_PTR(opline->extended_value + sizeof(void*)))) { - value = CACHED_PTR(opline->extended_value + sizeof(void*)); - break; - } else if (EXPECTED(CACHED_PTR(opline->extended_value))) { - ce = CACHED_PTR(opline->extended_value); - } else { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - } else { - if (IS_UNUSED == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - if (EXPECTED(CACHED_PTR(opline->extended_value) == ce)) { - value = CACHED_PTR(opline->extended_value + sizeof(void*)); - break; - } - } - - zv = zend_hash_find_ex(&ce->constants_table, Z_STR_P(RT_CONSTANT(opline, opline->op2)), 1); - if (EXPECTED(zv != NULL)) { - c = Z_PTR_P(zv); - scope = EX(func)->op_array.scope; - if (!zend_verify_const_access(c, scope)) { - zend_throw_error(NULL, "Cannot access %s const %s::%s", zend_visibility_string(Z_ACCESS_FLAGS(c->value)), ZSTR_VAL(ce->name), Z_STRVAL_P(RT_CONSTANT(opline, opline->op2))); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - value = &c->value; - if (Z_TYPE_P(value) == IS_CONSTANT_AST) { - zval_update_constant_ex(value, c->ce); - if (UNEXPECTED(EG(exception) != NULL)) { - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - CACHE_POLYMORPHIC_PTR(opline->extended_value, ce, value); - } else { - zend_throw_error(NULL, "Undefined class constant '%s'", Z_STRVAL_P(RT_CONSTANT(opline, opline->op2))); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } while (0); - - ZVAL_COPY_OR_DUP(EX_VAR(opline->result.var), value); - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_UNUSED != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - zval *offset; - - SAVE_OPLINE(); - container = &EX(This); - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - offset = RT_CONSTANT(opline, opline->op2); - - do { - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (Z_TYPE_P(container) != IS_OBJECT) { - if (IS_UNUSED == IS_CV - && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - break; - } - } else { - break; - } - } - Z_OBJ_HT_P(container)->unset_property(container, offset, ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL)); - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - int result; - zval *offset; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = RT_CONSTANT(opline, opline->op2); - - if (IS_UNUSED == IS_CONST || - (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } else { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } - - result = - (opline->extended_value & ZEND_ISEMPTY) ^ - Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY), ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_ISEMPTY) : NULL)); - -isset_object_finish: - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_UNUSED != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_UNUSED & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = NULL; - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_UNUSED == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_UNUSED == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = NULL; - - /* Consts, temporary variables and references need copying */ - if (IS_UNUSED == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_UNUSED == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_UNUSED == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_CONST != IS_UNUSED) { - - zval *key = RT_CONSTANT(opline, opline->op2); - - /* Consts, temporary variables and references need copying */ - if (IS_CONST == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_CONST == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_CONST == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2, free_op_data; - zval *object; - zval *property; - zval *value; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_op_object; - } - if (IS_UNUSED == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -assign_op_object: - /* here we are sure we are dealing with an object */ - cache_slot = ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR((opline+1)->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - zval *orig_zptr = zptr; - zend_reference *ref; - - do { - if (UNEXPECTED(Z_ISREF_P(zptr))) { - ref = Z_REF_P(zptr); - zptr = Z_REFVAL_P(zptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), orig_zptr); - } - if (UNEXPECTED(prop_info)) { - /* special case for typed properties */ - zend_binary_assign_op_typed_prop(prop_info, zptr, value OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_binary_op(zptr, zptr, value OPLINE_CC); - } - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), zptr); - } - } - } else { - zend_assign_op_overloaded_property(object, property, cache_slot, value OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - FREE_OP(free_op_data); - zval_ptr_dtor_nogc(free_op2); - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMP|VAR|CV, UNUSED|CONST|TMPVAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto pre_incdec_object; - } - if (IS_UNUSED == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -pre_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - prop_info = (zend_property_info *) CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto post_incdec_object; - } - if (IS_UNUSED == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -post_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - - zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - zend_free_op free_op2; - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_CONST || - (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - if (IS_UNUSED == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - zend_wrong_property_read(offset); - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_r_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_REF /* FUNC_ARG fetch may contain it */); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_INFO_P(retval) != IS_UNDEF)) { - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { -fetch_obj_r_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - } - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_R, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_r_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_r_finish: - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *property, *container, *result; - - SAVE_OPLINE(); - - container = &EX(This); - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address( - result, container, IS_UNUSED, property, (IS_TMP_VAR|IS_VAR), - (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_OBJ_FLAGS) : NULL), - BP_VAR_W, opline->extended_value & ZEND_FETCH_OBJ_FLAGS, 1 OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_UNUSED == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *property, *container, *result; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_UNUSED, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_RW, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_UNUSED == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - zend_free_op free_op2; - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_CONST || - (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_is_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_P(retval) != IS_UNDEF)) { - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { -fetch_obj_is_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - } - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_IS, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_is_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_is_finish: - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_UNUSED & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container, *property, *result; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_UNUSED, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_UNSET, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_UNUSED == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CONST, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CONST != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CONST == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CONST == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - zval_ptr_dtor_nogc(free_op2); - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2, free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_TMP_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - zval_ptr_dtor_nogc(free_op2); - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2, free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - zval_ptr_dtor_nogc(free_op2); - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CV, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CV != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CV == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CV == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - zval_ptr_dtor_nogc(free_op2); - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2, free_op_data; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - value_ptr = _get_zval_ptr_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (1) { - if (IS_UNUSED == IS_UNUSED) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_UNUSED, property, (IS_TMP_VAR|IS_VAR), value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op_data)) {zval_ptr_dtor_nogc(free_op_data);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - value_ptr = _get_zval_ptr_cv_BP_VAR_W((opline+1)->op1.var EXECUTE_DATA_CC); - - if (1) { - if (IS_UNUSED == IS_UNUSED) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_UNUSED, property, (IS_TMP_VAR|IS_VAR), value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zend_string **rope; - zval *var; - - /* Compiler allocates the necessary number of zval slots to keep the rope */ - rope = (zend_string**)EX_VAR(opline->result.var); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - var = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - rope[0] = Z_STR_P(var); - if (UNEXPECTED(Z_REFCOUNTED_P(var))) { - Z_ADDREF_P(var); - } - } else { - var = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (EXPECTED(Z_TYPE_P(var) == IS_STRING)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CV) { - rope[0] = zend_string_copy(Z_STR_P(var)); - } else { - rope[0] = Z_STR_P(var); - } - } else { - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(var) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - rope[0] = zval_get_string_func(var); - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zend_free_op free_op2; - zval *class_name; - USE_OPLINE - - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(NULL, opline->op1.num); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - zend_class_entry *ce = CACHED_PTR(opline->extended_value); - - if (UNEXPECTED(ce == NULL)) { - class_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), opline->op1.num); - CACHE_PTR(opline->extended_value, ce); - } - Z_CE_P(EX_VAR(opline->result.var)) = ce; - } else { - class_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); -try_class_name: - if (Z_TYPE_P(class_name) == IS_OBJECT) { - Z_CE_P(EX_VAR(opline->result.var)) = Z_OBJCE_P(class_name); - } else if (Z_TYPE_P(class_name) == IS_STRING) { - Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(Z_STR_P(class_name), opline->op1.num); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_TYPE_P(class_name) == IS_REFERENCE) { - class_name = Z_REFVAL_P(class_name); - goto try_class_name; - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(class_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Class name must be a valid object or a string"); - } - } - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_free_op free_op1, free_op2; - zval *object; - zend_function *fbc; - zend_class_entry *called_scope; - zend_object *obj; - zend_execute_data *call; - uint32_t call_info; - - SAVE_OPLINE(); - - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - } - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST && - UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Method name must be a string"); - zval_ptr_dtor_nogc(free_op2); - - HANDLE_EXCEPTION(); - } while (0); - } - - if (IS_UNUSED != IS_UNUSED) { - do { - if (IS_UNUSED == IS_CONST || UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if ((IS_UNUSED & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(object))) { - object = Z_REFVAL_P(object); - if (EXPECTED(Z_TYPE_P(object) == IS_OBJECT)) { - break; - } - } - if (IS_UNUSED == IS_CV && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - object = ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zval_ptr_dtor_nogc(free_op2); - } - HANDLE_EXCEPTION(); - } - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - } - zend_invalid_method_call(object, function_name); - zval_ptr_dtor_nogc(free_op2); - - HANDLE_EXCEPTION(); - } - } while (0); - } - - obj = Z_OBJ_P(object); - called_scope = obj->ce; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == called_scope)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else { - zend_object *orig_obj = obj; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - } - - /* First, locate the function. */ - fbc = obj->handlers->get_method(&obj, Z_STR_P(function_name), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(obj->ce, Z_STR_P(function_name)); - } - zval_ptr_dtor_nogc(free_op2); - - HANDLE_EXCEPTION(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE))) && - EXPECTED(obj == orig_obj)) { - CACHE_POLYMORPHIC_PTR(opline->result.num, called_scope, fbc); - } - if ((IS_UNUSED & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(obj != orig_obj)) { - /* Reset "object" to trigger reference counting */ - object = NULL; - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zval_ptr_dtor_nogc(free_op2); - } - - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_STATIC) != 0)) { - - if ((IS_UNUSED & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - /* call static method */ - obj = (zend_object*)called_scope; - call_info = ZEND_CALL_NESTED_FUNCTION; - } else if (IS_UNUSED & (IS_VAR|IS_TMP_VAR|IS_CV)) { - if (IS_UNUSED == IS_CV) { - GC_ADDREF(obj); /* For $this pointer */ - } else if (free_op1 != object) { - GC_ADDREF(obj); /* For $this pointer */ - - } - /* CV may be changed indirectly (e.g. when it's a reference) */ - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS | ZEND_CALL_RELEASE_THIS; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, obj); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_class_entry *ce; - uint32_t call_info; - zend_function *fbc; - zend_execute_data *call; - - SAVE_OPLINE(); - - if (IS_UNUSED == IS_CONST) { - /* no function found. try a static method in class */ - ce = CACHED_PTR(opline->result.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - zval_ptr_dtor_nogc(EX_VAR(opline->op2.var)); - HANDLE_EXCEPTION(); - } - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - CACHE_PTR(opline->result.num, ce); - } - } - } else if (IS_UNUSED == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - zval_ptr_dtor_nogc(EX_VAR(opline->op2.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - if (IS_UNUSED == IS_CONST && - (IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED((fbc = CACHED_PTR(opline->result.num + sizeof(void*))) != NULL)) { - /* nothing to do */ - } else if (IS_UNUSED != IS_CONST && - (IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == ce)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zend_free_op free_op2; - - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if ((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - zval_ptr_dtor_nogc(free_op2); - HANDLE_EXCEPTION(); - } while (0); - } - } - - if (ce->get_static_method) { - fbc = ce->get_static_method(ce, Z_STR_P(function_name)); - } else { - fbc = zend_std_get_static_method(ce, Z_STR_P(function_name), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - } - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(ce, Z_STR_P(function_name)); - } - zval_ptr_dtor_nogc(free_op2); - HANDLE_EXCEPTION(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE)))) { - CACHE_POLYMORPHIC_PTR(opline->result.num, ce, fbc); - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zval_ptr_dtor_nogc(free_op2); - } - } else { - if (UNEXPECTED(ce->constructor == NULL)) { - zend_throw_error(NULL, "Cannot call constructor"); - HANDLE_EXCEPTION(); - } - if (Z_TYPE(EX(This)) == IS_OBJECT && Z_OBJ(EX(This))->ce != ce->constructor->common.scope && (ce->constructor->common.fn_flags & ZEND_ACC_PRIVATE)) { - zend_throw_error(NULL, "Cannot call private %s::__construct()", ZSTR_VAL(ce->name)); - HANDLE_EXCEPTION(); - } - fbc = ce->constructor; - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (!(fbc->common.fn_flags & ZEND_ACC_STATIC)) { - if (Z_TYPE(EX(This)) == IS_OBJECT && instanceof_function(Z_OBJCE(EX(This)), ce)) { - ce = (zend_class_entry*)Z_OBJ(EX(This)); - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - } else { - zend_non_static_method_call(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - goto check_parent_and_self; - } - } else { -check_parent_and_self: - /* previous opcode is ZEND_FETCH_CLASS */ - if (IS_UNUSED == IS_UNUSED - && ((opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_PARENT || - (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF)) { - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ce = Z_OBJCE(EX(This)); - } else { - ce = Z_CE(EX(This)); - } - } - call_info = ZEND_CALL_NESTED_FUNCTION; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, ce); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_UNUSED != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container; - zval *offset; - - SAVE_OPLINE(); - container = &EX(This); - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (Z_TYPE_P(container) != IS_OBJECT) { - if (IS_UNUSED == IS_CV - && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - break; - } - } else { - break; - } - } - Z_OBJ_HT_P(container)->unset_property(container, offset, (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL)); - } while (0); - - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container; - int result; - zval *offset; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_CONST || - (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } else { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } - - result = - (opline->extended_value & ZEND_ISEMPTY) ^ - Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_ISEMPTY) : NULL)); - -isset_object_finish: - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_UNUSED != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_UNUSED & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = NULL; - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_UNUSED == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_UNUSED == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = NULL; - - /* Consts, temporary variables and references need copying */ - if (IS_UNUSED == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_UNUSED == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_UNUSED == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_TMP_VAR != IS_UNUSED) { - zend_free_op free_op2; - zval *key = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_TMP_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_TMP_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_TMP_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_TMP_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_UNUSED != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_UNUSED & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = NULL; - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_UNUSED == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_UNUSED == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = NULL; - - /* Consts, temporary variables and references need copying */ - if (IS_UNUSED == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_UNUSED == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_UNUSED == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_VAR != IS_UNUSED) { - zend_free_op free_op2; - zval *key = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - zval_ptr_dtor_nogc(free_op2); - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - - zval *class_name; - USE_OPLINE - - SAVE_OPLINE(); - if (IS_UNUSED == IS_UNUSED) { - Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(NULL, opline->op1.num); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else if (IS_UNUSED == IS_CONST) { - zend_class_entry *ce = CACHED_PTR(opline->extended_value); - - if (UNEXPECTED(ce == NULL)) { - class_name = NULL; - ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), opline->op1.num); - CACHE_PTR(opline->extended_value, ce); - } - Z_CE_P(EX_VAR(opline->result.var)) = ce; - } else { - class_name = NULL; -try_class_name: - if (Z_TYPE_P(class_name) == IS_OBJECT) { - Z_CE_P(EX_VAR(opline->result.var)) = Z_OBJCE_P(class_name); - } else if (Z_TYPE_P(class_name) == IS_STRING) { - Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(Z_STR_P(class_name), opline->op1.num); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_TYPE_P(class_name) == IS_REFERENCE) { - class_name = Z_REFVAL_P(class_name); - goto try_class_name; - } else { - if (IS_UNUSED == IS_CV && UNEXPECTED(Z_TYPE_P(class_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Class name must be a valid object or a string"); - } - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_class_entry *ce; - uint32_t call_info; - zend_function *fbc; - zend_execute_data *call; - - SAVE_OPLINE(); - - if (IS_UNUSED == IS_CONST) { - /* no function found. try a static method in class */ - ce = CACHED_PTR(opline->result.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - if (IS_UNUSED != IS_CONST) { - CACHE_PTR(opline->result.num, ce); - } - } - } else if (IS_UNUSED == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - if (IS_UNUSED == IS_CONST && - IS_UNUSED == IS_CONST && - EXPECTED((fbc = CACHED_PTR(opline->result.num + sizeof(void*))) != NULL)) { - /* nothing to do */ - } else if (IS_UNUSED != IS_CONST && - IS_UNUSED == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == ce)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else if (IS_UNUSED != IS_UNUSED) { - - - function_name = NULL; - if (IS_UNUSED != IS_CONST) { - if (UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (IS_UNUSED & (IS_VAR|IS_CV) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_UNUSED == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - - HANDLE_EXCEPTION(); - } while (0); - } - } - - if (ce->get_static_method) { - fbc = ce->get_static_method(ce, Z_STR_P(function_name)); - } else { - fbc = zend_std_get_static_method(ce, Z_STR_P(function_name), ((IS_UNUSED == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - } - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(ce, Z_STR_P(function_name)); - } - - HANDLE_EXCEPTION(); - } - if (IS_UNUSED == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE)))) { - CACHE_POLYMORPHIC_PTR(opline->result.num, ce, fbc); - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - if (IS_UNUSED != IS_CONST) { - - } - } else { - if (UNEXPECTED(ce->constructor == NULL)) { - zend_throw_error(NULL, "Cannot call constructor"); - HANDLE_EXCEPTION(); - } - if (Z_TYPE(EX(This)) == IS_OBJECT && Z_OBJ(EX(This))->ce != ce->constructor->common.scope && (ce->constructor->common.fn_flags & ZEND_ACC_PRIVATE)) { - zend_throw_error(NULL, "Cannot call private %s::__construct()", ZSTR_VAL(ce->name)); - HANDLE_EXCEPTION(); - } - fbc = ce->constructor; - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (!(fbc->common.fn_flags & ZEND_ACC_STATIC)) { - if (Z_TYPE(EX(This)) == IS_OBJECT && instanceof_function(Z_OBJCE(EX(This)), ce)) { - ce = (zend_class_entry*)Z_OBJ(EX(This)); - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - } else { - zend_non_static_method_call(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - goto check_parent_and_self; - } - } else { -check_parent_and_self: - /* previous opcode is ZEND_FETCH_CLASS */ - if (IS_UNUSED == IS_UNUSED - && ((opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_PARENT || - (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF)) { - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ce = Z_OBJCE(EX(This)); - } else { - ce = Z_CE(EX(This)); - } - } - call_info = ZEND_CALL_NESTED_FUNCTION; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, ce); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_VERIFY_RETURN_TYPE_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (IS_UNUSED == IS_UNUSED) { - zend_verify_missing_return_type(EX(func), CACHE_ADDR(opline->op2.num)); - } else { -/* prevents "undefined variable opline" errors */ -#if 0 || (IS_UNUSED != IS_UNUSED) - zval *retval_ref, *retval_ptr; - - zend_arg_info *ret_info = EX(func)->common.arg_info - 1; - - retval_ref = retval_ptr = NULL; - - if (IS_UNUSED == IS_CONST) { - ZVAL_COPY(EX_VAR(opline->result.var), retval_ptr); - retval_ref = retval_ptr = EX_VAR(opline->result.var); - } else if (IS_UNUSED == IS_VAR) { - if (UNEXPECTED(Z_TYPE_P(retval_ptr) == IS_INDIRECT)) { - retval_ptr = Z_INDIRECT_P(retval_ptr); - } - ZVAL_DEREF(retval_ptr); - } else if (IS_UNUSED == IS_CV) { - ZVAL_DEREF(retval_ptr); - } - - if (UNEXPECTED(!ZEND_TYPE_IS_CLASS(ret_info->type) - && ZEND_TYPE_CODE(ret_info->type) != IS_CALLABLE - && ZEND_TYPE_CODE(ret_info->type) != IS_ITERABLE - && !ZEND_SAME_FAKE_TYPE(ZEND_TYPE_CODE(ret_info->type), Z_TYPE_P(retval_ptr)) - && !(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE) - && retval_ref != retval_ptr) - ) { - /* A cast might happen - unwrap the reference if this is a by-value return */ - if (Z_REFCOUNT_P(retval_ref) == 1) { - ZVAL_UNREF(retval_ref); - } else { - Z_DELREF_P(retval_ref); - ZVAL_COPY(retval_ref, retval_ptr); - } - retval_ptr = retval_ref; - } - zend_verify_return_type(EX(func), retval_ptr, CACHE_ADDR(opline->op2.num)); -#endif - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_NEW_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *result; - zend_function *constructor; - zend_class_entry *ce; - zend_execute_data *call; - - SAVE_OPLINE(); - if (IS_UNUSED == IS_CONST) { - ce = CACHED_PTR(opline->op2.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - CACHE_PTR(opline->op2.num, ce); - } - } else if (IS_UNUSED == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - result = EX_VAR(opline->result.var); - if (UNEXPECTED(object_init_ex(result, ce) != SUCCESS)) { - ZVAL_UNDEF(result); - HANDLE_EXCEPTION(); - } - - constructor = Z_OBJ_HT_P(result)->get_constructor(Z_OBJ_P(result)); - if (constructor == NULL) { - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - - /* If there are no arguments, skip over the DO_FCALL opcode. We check if the next - * opcode is DO_FCALL in case EXT instructions are used. */ - if (EXPECTED(opline->extended_value == 0 && (opline+1)->opcode == ZEND_DO_FCALL)) { - ZEND_VM_NEXT_OPCODE_EX(1, 2); - } - - /* Perform a dummy function call */ - call = zend_vm_stack_push_call_frame( - ZEND_CALL_FUNCTION, (zend_function *) &zend_pass_function, - opline->extended_value, NULL); - } else { - if (EXPECTED(constructor->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&constructor->op_array))) { - init_func_run_time_cache(&constructor->op_array); - } - /* We are not handling overloaded classes right now */ - call = zend_vm_stack_push_call_frame( - ZEND_CALL_FUNCTION | ZEND_CALL_RELEASE_THIS | ZEND_CALL_HAS_THIS, - constructor, - opline->extended_value, - Z_OBJ_P(result)); - Z_ADDREF_P(result); - } - - call->prev_execute_data = EX(call); - EX(call) = call; - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_UNUSED != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_UNUSED != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_UNUSED & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = NULL; - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_UNUSED == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_UNUSED == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = NULL; - - /* Consts, temporary variables and references need copying */ - if (IS_UNUSED == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_UNUSED == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_UNUSED == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_UNUSED != IS_UNUSED) { - - zval *key = NULL; - - /* Consts, temporary variables and references need copying */ - if (IS_UNUSED == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_UNUSED == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_UNUSED == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_THIS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - if (EXPECTED(Z_TYPE(EX(This)) == IS_OBJECT)) { - zval *result = EX_VAR(opline->result.var); - - ZVAL_OBJ(result, Z_OBJ(EX(This))); - Z_ADDREF_P(result); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_THIS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - ZVAL_BOOL(EX_VAR(opline->result.var), - (opline->extended_value & ZEND_ISEMPTY) ^ - (Z_TYPE(EX(This)) == IS_OBJECT)); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GET_CLASS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - if (IS_UNUSED == IS_UNUSED) { - if (UNEXPECTED(!EX(func)->common.scope)) { - SAVE_OPLINE(); - zend_error(E_WARNING, "get_class() called without object from outside a class"); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZVAL_STR_COPY(EX_VAR(opline->result.var), EX(func)->common.scope->name); - ZEND_VM_NEXT_OPCODE(); - } - } else { - - zval *op1; - - SAVE_OPLINE(); - op1 = NULL; - while (1) { - if (Z_TYPE_P(op1) == IS_OBJECT) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), Z_OBJCE_P(op1)->name); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) != 0 && Z_TYPE_P(op1) == IS_REFERENCE) { - op1 = Z_REFVAL_P(op1); - continue; - } else { - if (IS_UNUSED == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - zend_error(E_WARNING, "get_class() expects parameter 1 to be object, %s given", zend_get_type_by_const(Z_TYPE_P(op1))); - ZVAL_FALSE(EX_VAR(opline->result.var)); - } - break; - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GET_CALLED_CLASS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), Z_OBJCE(EX(This))->name); - } else if (Z_CE(EX(This))) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), Z_CE(EX(This))->name); - } else { - ZVAL_FALSE(EX_VAR(opline->result.var)); - if (UNEXPECTED(!EX(func)->common.scope)) { - SAVE_OPLINE(); - zend_error(E_WARNING, "get_called_class() called from outside a class"); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FUNC_NUM_ARGS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - ZVAL_LONG(EX_VAR(opline->result.var), EX_NUM_ARGS()); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FUNC_GET_ARGS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_array *ht; - uint32_t arg_count, result_size, skip; - - arg_count = EX_NUM_ARGS(); - if (IS_UNUSED == IS_CONST) { - skip = Z_LVAL_P(RT_CONSTANT(opline, opline->op1)); - if (arg_count < skip) { - result_size = 0; - } else { - result_size = arg_count - skip; - } - } else { - skip = 0; - result_size = arg_count; - } - - if (result_size) { - uint32_t first_extra_arg = EX(func)->op_array.num_args; - - ht = zend_new_array(result_size); - ZVAL_ARR(EX_VAR(opline->result.var), ht); - zend_hash_real_init_packed(ht); - ZEND_HASH_FILL_PACKED(ht) { - zval *p, *q; - uint32_t i = skip; - p = EX_VAR_NUM(i); - if (arg_count > first_extra_arg) { - while (i < first_extra_arg) { - q = p; - if (EXPECTED(Z_TYPE_INFO_P(q) != IS_UNDEF)) { - ZVAL_DEREF(q); - if (Z_OPT_REFCOUNTED_P(q)) { - Z_ADDREF_P(q); - } - ZEND_HASH_FILL_SET(q); - } else { - ZEND_HASH_FILL_SET_NULL(); - } - ZEND_HASH_FILL_NEXT(); - p++; - i++; - } - if (skip < first_extra_arg) { - skip = 0; - } else { - skip -= first_extra_arg; - } - p = EX_VAR_NUM(EX(func)->op_array.last_var + EX(func)->op_array.T + skip); - } - while (i < arg_count) { - q = p; - if (EXPECTED(Z_TYPE_INFO_P(q) != IS_UNDEF)) { - ZVAL_DEREF(q); - if (Z_OPT_REFCOUNTED_P(q)) { - Z_ADDREF_P(q); - } - ZEND_HASH_FILL_SET(q); - } else { - ZEND_HASH_FILL_SET_NULL(); - } - ZEND_HASH_FILL_NEXT(); - p++; - i++; - } - } ZEND_HASH_FILL_END(); - ht->nNumOfElements = result_size; - } else { - ZVAL_EMPTY_ARRAY(EX_VAR(opline->result.var)); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *object; - zval *property; - zval *value; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - do { - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_op_object; - } - if (IS_UNUSED == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -assign_op_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CV == IS_CONST) ? CACHE_ADDR((opline+1)->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - zval *orig_zptr = zptr; - zend_reference *ref; - - do { - if (UNEXPECTED(Z_ISREF_P(zptr))) { - ref = Z_REF_P(zptr); - zptr = Z_REFVAL_P(zptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - - if (IS_CV == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), orig_zptr); - } - if (UNEXPECTED(prop_info)) { - /* special case for typed properties */ - zend_binary_assign_op_typed_prop(prop_info, zptr, value OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_binary_op(zptr, zptr, value OPLINE_CC); - } - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), zptr); - } - } - } else { - zend_assign_op_overloaded_property(object, property, cache_slot, value OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - FREE_OP(free_op_data); - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMP|VAR|CV, UNUSED|CONST|TMPVAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - do { - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto pre_incdec_object; - } - if (IS_UNUSED == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -pre_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - if (IS_CV == IS_CONST) { - prop_info = (zend_property_info *) CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - do { - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto post_incdec_object; - } - if (IS_UNUSED == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -post_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } else { - if (IS_CV == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - - zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = EX_VAR(opline->op2.var); - - if (IS_UNUSED == IS_CONST || - (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - if (IS_UNUSED == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - zend_wrong_property_read(offset); - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_r_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CV == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_REF /* FUNC_ARG fetch may contain it */); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_INFO_P(retval) != IS_UNDEF)) { - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { -fetch_obj_r_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - } - } else if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_R, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_r_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_r_finish: - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *result; - - SAVE_OPLINE(); - - container = &EX(This); - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address( - result, container, IS_UNUSED, property, IS_CV, - ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_OBJ_FLAGS) : NULL), - BP_VAR_W, opline->extended_value & ZEND_FETCH_OBJ_FLAGS, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *result; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_UNUSED, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_RW, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_CONST || - (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_is_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CV == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_P(retval) != IS_UNDEF)) { - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { -fetch_obj_is_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_UNUSED & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - } - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_IS, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_is_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_is_finish: - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_UNUSED & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_W_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container, *property, *result; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_UNUSED, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_UNSET, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CV == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CONST, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CONST != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CONST == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CONST == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CV == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_TMP_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CV == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CV == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CV, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CV != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CV == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CV == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - value_ptr = _get_zval_ptr_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (1) { - if (IS_UNUSED == IS_UNUSED) { - if (IS_CV == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if (IS_CV == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_UNUSED, property, IS_CV, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - - if (UNEXPECTED(free_op_data)) {zval_ptr_dtor_nogc(free_op_data);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - value_ptr = _get_zval_ptr_cv_BP_VAR_W((opline+1)->op1.var EXECUTE_DATA_CC); - - if (1) { - if (IS_UNUSED == IS_UNUSED) { - if (IS_CV == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if (IS_CV == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_UNUSED, property, IS_CV, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - - - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ROPE_INIT_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_string **rope; - zval *var; - - /* Compiler allocates the necessary number of zval slots to keep the rope */ - rope = (zend_string**)EX_VAR(opline->result.var); - if (IS_CV == IS_CONST) { - var = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - rope[0] = Z_STR_P(var); - if (UNEXPECTED(Z_REFCOUNTED_P(var))) { - Z_ADDREF_P(var); - } - } else { - var = EX_VAR(opline->op2.var); - if (EXPECTED(Z_TYPE_P(var) == IS_STRING)) { - if (IS_CV == IS_CV) { - rope[0] = zend_string_copy(Z_STR_P(var)); - } else { - rope[0] = Z_STR_P(var); - } - } else { - SAVE_OPLINE(); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(var) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - rope[0] = zval_get_string_func(var); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_CLASS_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - - zval *class_name; - USE_OPLINE - - SAVE_OPLINE(); - if (IS_CV == IS_UNUSED) { - Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(NULL, opline->op1.num); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else if (IS_CV == IS_CONST) { - zend_class_entry *ce = CACHED_PTR(opline->extended_value); - - if (UNEXPECTED(ce == NULL)) { - class_name = EX_VAR(opline->op2.var); - ce = zend_fetch_class_by_name(Z_STR_P(class_name), Z_STR_P(class_name + 1), opline->op1.num); - CACHE_PTR(opline->extended_value, ce); - } - Z_CE_P(EX_VAR(opline->result.var)) = ce; - } else { - class_name = EX_VAR(opline->op2.var); -try_class_name: - if (Z_TYPE_P(class_name) == IS_OBJECT) { - Z_CE_P(EX_VAR(opline->result.var)) = Z_OBJCE_P(class_name); - } else if (Z_TYPE_P(class_name) == IS_STRING) { - Z_CE_P(EX_VAR(opline->result.var)) = zend_fetch_class(Z_STR_P(class_name), opline->op1.num); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_TYPE_P(class_name) == IS_REFERENCE) { - class_name = Z_REFVAL_P(class_name); - goto try_class_name; - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(class_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Class name must be a valid object or a string"); - } - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_free_op free_op1; - zval *object; - zend_function *fbc; - zend_class_entry *called_scope; - zend_object *obj; - zend_execute_data *call; - uint32_t call_info; - - SAVE_OPLINE(); - - object = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - if (IS_CV != IS_CONST) { - function_name = EX_VAR(opline->op2.var); - } - - if (IS_CV != IS_CONST && - UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Method name must be a string"); - - - HANDLE_EXCEPTION(); - } while (0); - } - - if (IS_UNUSED != IS_UNUSED) { - do { - if (IS_UNUSED == IS_CONST || UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if ((IS_UNUSED & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(object))) { - object = Z_REFVAL_P(object); - if (EXPECTED(Z_TYPE_P(object) == IS_OBJECT)) { - break; - } - } - if (IS_UNUSED == IS_CV && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - object = ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if (IS_CV != IS_CONST) { - - } - HANDLE_EXCEPTION(); - } - } - if (IS_CV == IS_CONST) { - function_name = EX_VAR(opline->op2.var); - } - zend_invalid_method_call(object, function_name); - - - HANDLE_EXCEPTION(); - } - } while (0); - } - - obj = Z_OBJ_P(object); - called_scope = obj->ce; - - if (IS_CV == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == called_scope)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else { - zend_object *orig_obj = obj; - - if (IS_CV == IS_CONST) { - function_name = EX_VAR(opline->op2.var); - } - - /* First, locate the function. */ - fbc = obj->handlers->get_method(&obj, Z_STR_P(function_name), ((IS_CV == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(obj->ce, Z_STR_P(function_name)); - } - - - HANDLE_EXCEPTION(); - } - if (IS_CV == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE))) && - EXPECTED(obj == orig_obj)) { - CACHE_POLYMORPHIC_PTR(opline->result.num, called_scope, fbc); - } - if ((IS_UNUSED & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(obj != orig_obj)) { - /* Reset "object" to trigger reference counting */ - object = NULL; - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (IS_CV != IS_CONST) { - - } - - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_STATIC) != 0)) { - - if ((IS_UNUSED & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - /* call static method */ - obj = (zend_object*)called_scope; - call_info = ZEND_CALL_NESTED_FUNCTION; - } else if (IS_UNUSED & (IS_VAR|IS_TMP_VAR|IS_CV)) { - if (IS_UNUSED == IS_CV) { - GC_ADDREF(obj); /* For $this pointer */ - } else if (free_op1 != object) { - GC_ADDREF(obj); /* For $this pointer */ - - } - /* CV may be changed indirectly (e.g. when it's a reference) */ - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS | ZEND_CALL_RELEASE_THIS; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, obj); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_class_entry *ce; - uint32_t call_info; - zend_function *fbc; - zend_execute_data *call; - - SAVE_OPLINE(); - - if (IS_UNUSED == IS_CONST) { - /* no function found. try a static method in class */ - ce = CACHED_PTR(opline->result.num); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op1)), Z_STR_P(RT_CONSTANT(opline, opline->op1) + 1), ZEND_FETCH_CLASS_DEFAULT | ZEND_FETCH_CLASS_EXCEPTION); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - if (IS_CV != IS_CONST) { - CACHE_PTR(opline->result.num, ce); - } - } - } else if (IS_UNUSED == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op1.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op1.var)); - } - - if (IS_UNUSED == IS_CONST && - IS_CV == IS_CONST && - EXPECTED((fbc = CACHED_PTR(opline->result.num + sizeof(void*))) != NULL)) { - /* nothing to do */ - } else if (IS_UNUSED != IS_CONST && - IS_CV == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == ce)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else if (IS_CV != IS_UNUSED) { - - - function_name = EX_VAR(opline->op2.var); - if (IS_CV != IS_CONST) { - if (UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (IS_CV & (IS_VAR|IS_CV) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Function name must be a string"); - - HANDLE_EXCEPTION(); - } while (0); - } - } - - if (ce->get_static_method) { - fbc = ce->get_static_method(ce, Z_STR_P(function_name)); - } else { - fbc = zend_std_get_static_method(ce, Z_STR_P(function_name), ((IS_CV == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - } - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(ce, Z_STR_P(function_name)); - } - - HANDLE_EXCEPTION(); - } - if (IS_CV == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE)))) { - CACHE_POLYMORPHIC_PTR(opline->result.num, ce, fbc); - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - if (IS_CV != IS_CONST) { - - } - } else { - if (UNEXPECTED(ce->constructor == NULL)) { - zend_throw_error(NULL, "Cannot call constructor"); - HANDLE_EXCEPTION(); - } - if (Z_TYPE(EX(This)) == IS_OBJECT && Z_OBJ(EX(This))->ce != ce->constructor->common.scope && (ce->constructor->common.fn_flags & ZEND_ACC_PRIVATE)) { - zend_throw_error(NULL, "Cannot call private %s::__construct()", ZSTR_VAL(ce->name)); - HANDLE_EXCEPTION(); - } - fbc = ce->constructor; - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (!(fbc->common.fn_flags & ZEND_ACC_STATIC)) { - if (Z_TYPE(EX(This)) == IS_OBJECT && instanceof_function(Z_OBJCE(EX(This)), ce)) { - ce = (zend_class_entry*)Z_OBJ(EX(This)); - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - } else { - zend_non_static_method_call(fbc); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - goto check_parent_and_self; - } - } else { -check_parent_and_self: - /* previous opcode is ZEND_FETCH_CLASS */ - if (IS_UNUSED == IS_UNUSED - && ((opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_PARENT || - (opline->op1.num & ZEND_FETCH_CLASS_MASK) == ZEND_FETCH_CLASS_SELF)) { - if (Z_TYPE(EX(This)) == IS_OBJECT) { - ce = Z_OBJCE(EX(This)); - } else { - ce = Z_CE(EX(This)); - } - } - call_info = ZEND_CALL_NESTED_FUNCTION; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, ce); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_UNUSED != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - zval *offset; - - SAVE_OPLINE(); - container = &EX(This); - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - offset = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - do { - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (Z_TYPE_P(container) != IS_OBJECT) { - if (IS_UNUSED == IS_CV - && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - break; - } - } else { - break; - } - } - Z_OBJ_HT_P(container)->unset_property(container, offset, ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL)); - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - int result; - zval *offset; - - SAVE_OPLINE(); - container = &EX(This); - - if (IS_UNUSED == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_CONST || - (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } else { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } - - result = - (opline->extended_value & ZEND_ISEMPTY) ^ - Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY), ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_ISEMPTY) : NULL)); - -isset_object_finish: - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_UNUSED != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_UNUSED & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = NULL; - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_UNUSED == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = NULL; - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_UNUSED == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = NULL; - - /* Consts, temporary variables and references need copying */ - if (IS_UNUSED == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_UNUSED == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_UNUSED == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_CV != IS_UNUSED) { - - zval *key = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_CV == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_CV == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_CV == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BW_NOT_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1; - - op1 = EX_VAR(opline->op1.var); - if (EXPECTED(Z_TYPE_INFO_P(op1) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), ~Z_LVAL_P(op1)); - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = ZVAL_UNDEFINED_OP1(); - } - bitwise_not_function(EX_VAR(opline->result.var), op1); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BOOL_NOT_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *val; - - - val = EX_VAR(opline->op1.var); - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - /* The result and op1 can be the same cv zval */ - const uint32_t orig_val_type = Z_TYPE_INFO_P(val); - ZVAL_TRUE(EX_VAR(opline->result.var)); - if (IS_CV == IS_CV && UNEXPECTED(orig_val_type == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } else { - SAVE_OPLINE(); - ZVAL_BOOL(EX_VAR(opline->result.var), !i_zend_is_true(val)); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_inc_helper_SPEC_CV(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(var_ptr) == IS_UNDEF)) { - ZVAL_NULL(var_ptr); - ZVAL_UNDEFINED_OP1(); - } - - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - increment_function(var_ptr); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_SPEC_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - fast_long_increment_function(var_ptr); - if (UNEXPECTED(0)) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_pre_inc_helper_SPEC_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_SPEC_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - fast_long_increment_function(var_ptr); - if (UNEXPECTED(1)) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_pre_inc_helper_SPEC_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_pre_dec_helper_SPEC_CV(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(var_ptr) == IS_UNDEF)) { - ZVAL_NULL(var_ptr); - ZVAL_UNDEFINED_OP1(); - } - - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_incdec_typed_ref(ref, NULL OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - decrement_function(var_ptr); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_SPEC_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - fast_long_decrement_function(var_ptr); - if (UNEXPECTED(0)) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_pre_dec_helper_SPEC_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_SPEC_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - fast_long_decrement_function(var_ptr); - if (UNEXPECTED(1)) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_pre_dec_helper_SPEC_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_inc_helper_SPEC_CV(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(var_ptr) == IS_UNDEF)) { - ZVAL_NULL(var_ptr); - ZVAL_UNDEFINED_OP1(); - } - - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_incdec_typed_ref(ref, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - - increment_function(var_ptr); - } while (0); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - fast_long_increment_function(var_ptr); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_post_inc_helper_SPEC_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_post_dec_helper_SPEC_CV(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(var_ptr) == IS_UNDEF)) { - ZVAL_NULL(var_ptr); - ZVAL_UNDEFINED_OP1(); - } - - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_incdec_typed_ref(ref, EX_VAR(opline->result.var) OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - - decrement_function(var_ptr); - } while (0); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(var_ptr) == IS_LONG)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - fast_long_decrement_function(var_ptr); - ZEND_VM_NEXT_OPCODE(); - } - - ZEND_VM_TAIL_CALL(zend_post_dec_helper_SPEC_CV(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ECHO_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *z; - - SAVE_OPLINE(); - z = EX_VAR(opline->op1.var); - - if (Z_TYPE_P(z) == IS_STRING) { - zend_string *str = Z_STR_P(z); - - if (ZSTR_LEN(str) != 0) { - zend_write(ZSTR_VAL(str), ZSTR_LEN(str)); - } - } else { - zend_string *str = zval_get_string_func(z); - - if (ZSTR_LEN(str) != 0) { - zend_write(ZSTR_VAL(str), ZSTR_LEN(str)); - } else if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(z) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - zend_string_release_ex(str, 0); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZ_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *val; - - val = EX_VAR(opline->op1.var); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - SAVE_OPLINE(); - if (i_zend_is_true(val)) { - opline++; - } else { - opline = OP_JMP_ADDR(opline, opline->op2); - } - - ZEND_VM_JMP(opline); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPNZ_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *val; - - val = EX_VAR(opline->op1.var); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (i_zend_is_true(val)) { - opline = OP_JMP_ADDR(opline, opline->op2); - } else { - opline++; - } - - ZEND_VM_JMP(opline); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZNZ_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *val; - - val = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_INFO_P(val) == IS_TRUE)) { - ZEND_VM_SET_RELATIVE_OPCODE(opline, opline->extended_value); - ZEND_VM_CONTINUE(); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - SAVE_OPLINE(); - if (i_zend_is_true(val)) { - opline = ZEND_OFFSET_TO_OPLINE(opline, opline->extended_value); - } else { - opline = OP_JMP_ADDR(opline, opline->op2); - } - - ZEND_VM_JMP(opline); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPZ_EX_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *val; - int ret; - - val = EX_VAR(opline->op1.var); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - SAVE_OPLINE(); - ret = i_zend_is_true(val); - - if (ret) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - opline++; - } else { - ZVAL_FALSE(EX_VAR(opline->result.var)); - opline = OP_JMP_ADDR(opline, opline->op2); - } - ZEND_VM_JMP(opline); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMPNZ_EX_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *val; - int ret; - - val = EX_VAR(opline->op1.var); - - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(val) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - - SAVE_OPLINE(); - ret = i_zend_is_true(val); - - if (ret) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - opline = OP_JMP_ADDR(opline, opline->op2); - } else { - ZVAL_FALSE(EX_VAR(opline->result.var)); - opline++; - } - ZEND_VM_JMP(opline); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RETURN_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *retval_ptr; - zval *return_value; - zend_free_op free_op1; - - retval_ptr = EX_VAR(opline->op1.var); - return_value = EX(return_value); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(retval_ptr) == IS_UNDEF)) { - SAVE_OPLINE(); - retval_ptr = ZVAL_UNDEFINED_OP1(); - if (return_value) { - ZVAL_NULL(return_value); - } - } else if (!return_value) { - if (IS_CV & (IS_VAR|IS_TMP_VAR)) { - if (Z_REFCOUNTED_P(free_op1) && !Z_DELREF_P(free_op1)) { - SAVE_OPLINE(); - rc_dtor_func(Z_COUNTED_P(free_op1)); - } - } - } else { - if ((IS_CV & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(return_value))) { - Z_ADDREF_P(return_value); - } - } - } else if (IS_CV == IS_CV) { - do { - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - if (EXPECTED(!Z_OPT_ISREF_P(retval_ptr))) { - if (EXPECTED(!(EX_CALL_INFO() & ZEND_CALL_CODE))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (GC_MAY_LEAK(ref)) { - gc_possible_root(ref); - } - ZVAL_NULL(retval_ptr); - break; - } else { - Z_ADDREF_P(retval_ptr); - } - } else { - retval_ptr = Z_REFVAL_P(retval_ptr); - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } - } - ZVAL_COPY_VALUE(return_value, retval_ptr); - } while (0); - } else /* if (IS_CV == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - - retval_ptr = Z_REFVAL_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } else { - ZVAL_COPY_VALUE(return_value, retval_ptr); - } - } - } - ZEND_VM_TAIL_CALL(zend_leave_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_RETURN_BY_REF_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *retval_ptr; - - - SAVE_OPLINE(); - - do { - if ((IS_CV & (IS_CONST|IS_TMP_VAR)) || - (IS_CV == IS_VAR && opline->extended_value == ZEND_RETURNS_VALUE)) { - /* Not supposed to happen, but we'll allow it */ - zend_error(E_NOTICE, "Only variable references should be returned by reference"); - - retval_ptr = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - if (!EX(return_value)) { - - } else { - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISREF_P(retval_ptr))) { - ZVAL_COPY_VALUE(EX(return_value), retval_ptr); - break; - } - - ZVAL_NEW_REF(EX(return_value), retval_ptr); - if (IS_CV == IS_CONST) { - Z_TRY_ADDREF_P(retval_ptr); - } - } - break; - } - - retval_ptr = _get_zval_ptr_cv_BP_VAR_W(opline->op1.var EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - ZEND_ASSERT(retval_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION && !Z_ISREF_P(retval_ptr)) { - zend_error(E_NOTICE, "Only variable references should be returned by reference"); - if (EX(return_value)) { - ZVAL_NEW_REF(EX(return_value), retval_ptr); - } else { - - } - break; - } - } - - if (EX(return_value)) { - if (Z_ISREF_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } else { - ZVAL_MAKE_REF_EX(retval_ptr, 2); - } - ZVAL_REF(EX(return_value), Z_REF_P(retval_ptr)); - } - - } while (0); - - ZEND_VM_TAIL_CALL(zend_leave_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GENERATOR_RETURN_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *retval; - - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - retval = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - - /* Copy return value into generator->retval */ - if ((IS_CV & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(&generator->retval, retval); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->retval))) { - Z_ADDREF(generator->retval); - } - } - } else if (IS_CV == IS_CV) { - ZVAL_COPY_DEREF(&generator->retval, retval); - } else /* if (IS_CV == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_refcounted *ref = Z_COUNTED_P(retval); - - retval = Z_REFVAL_P(retval); - ZVAL_COPY_VALUE(&generator->retval, retval); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval)) { - Z_ADDREF_P(retval); - } - } else { - ZVAL_COPY_VALUE(&generator->retval, retval); - } - } - - /* Close the generator to free up resources */ - zend_generator_close(generator, 1); - - /* Pass execution back to handling code */ - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_THROW_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - - - SAVE_OPLINE(); - value = EX_VAR(opline->op1.var); - - do { - if (IS_CV == IS_CONST || UNEXPECTED(Z_TYPE_P(value) != IS_OBJECT)) { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - value = Z_REFVAL_P(value); - if (EXPECTED(Z_TYPE_P(value) == IS_OBJECT)) { - break; - } - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Can only throw objects"); - - HANDLE_EXCEPTION(); - } - } while (0); - - zend_exception_save(); - if (IS_CV != IS_TMP_VAR) { - Z_TRY_ADDREF_P(value); - } - - zend_throw_exception_object(value); - zend_exception_restore(); - - HANDLE_EXCEPTION(); -} - -static zend_always_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_SPEC_CV_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varptr, *arg; - - - varptr = EX_VAR(opline->op1.var); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(varptr) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_NULL(arg); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (IS_CV == IS_CV) { - ZVAL_COPY_DEREF(arg, varptr); - } else /* if (IS_CV == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(varptr))) { - zend_refcounted *ref = Z_COUNTED_P(varptr); - - varptr = Z_REFVAL_P(varptr); - ZVAL_COPY_VALUE(arg, varptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(arg)) { - Z_ADDREF_P(arg); - } - } else { - ZVAL_COPY_VALUE(arg, varptr); - } - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(ZEND_SEND_VAR_SPEC_CV_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_REF_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *varptr, *arg; - - SAVE_OPLINE(); - varptr = _get_zval_ptr_cv_BP_VAR_W(opline->op1.var EXECUTE_DATA_CC); - - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(varptr))) { - ZVAL_NEW_EMPTY_REF(arg); - ZVAL_NULL(Z_REFVAL_P(arg)); - ZEND_VM_NEXT_OPCODE(); - } - - if (Z_ISREF_P(varptr)) { - Z_ADDREF_P(varptr); - } else { - ZVAL_MAKE_REF_EX(varptr, 2); - } - ZVAL_REF(arg, Z_REF_P(varptr)); - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_EX_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varptr, *arg; - - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(0)) { - if (QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - goto send_var_by_ref; - } - } else if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { -send_var_by_ref: - ZEND_VM_TAIL_CALL(ZEND_SEND_REF_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - varptr = EX_VAR(opline->op1.var); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(varptr) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_NULL(arg); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (IS_CV == IS_CV) { - ZVAL_COPY_DEREF(arg, varptr); - } else /* if (IS_CV == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(varptr))) { - zend_refcounted *ref = Z_COUNTED_P(varptr); - - varptr = Z_REFVAL_P(varptr); - ZVAL_COPY_VALUE(arg, varptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(arg)) { - Z_ADDREF_P(arg); - } - } else { - ZVAL_COPY_VALUE(arg, varptr); - } - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_EX_SPEC_CV_QUICK_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varptr, *arg; - - uint32_t arg_num = opline->op2.num; - - if (EXPECTED(1)) { - if (QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - goto send_var_by_ref; - } - } else if (ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { -send_var_by_ref: - ZEND_VM_TAIL_CALL(ZEND_SEND_REF_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - varptr = EX_VAR(opline->op1.var); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(varptr) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_NULL(arg); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (IS_CV == IS_CV) { - ZVAL_COPY_DEREF(arg, varptr); - } else /* if (IS_CV == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(varptr))) { - zend_refcounted *ref = Z_COUNTED_P(varptr); - - varptr = Z_REFVAL_P(varptr); - ZVAL_COPY_VALUE(arg, varptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(arg)) { - Z_ADDREF_P(arg); - } - } else { - ZVAL_COPY_VALUE(arg, varptr); - } - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_USER_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *arg, *param; - - - SAVE_OPLINE(); - - if (UNEXPECTED(ARG_MUST_BE_SENT_BY_REF(EX(call)->func, opline->op2.num))) { - zend_param_must_be_ref(EX(call)->func, opline->op2.num); - } - - arg = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - param = ZEND_CALL_VAR(EX(call), opline->result.var); - ZVAL_COPY(param, arg); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BOOL_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *val; - - - val = EX_VAR(opline->op1.var); - if (Z_TYPE_INFO_P(val) == IS_TRUE) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - } else if (EXPECTED(Z_TYPE_INFO_P(val) <= IS_TRUE)) { - /* The result and op1 can be the same cv zval */ - const uint32_t orig_val_type = Z_TYPE_INFO_P(val); - ZVAL_FALSE(EX_VAR(opline->result.var)); - if (IS_CV == IS_CV && UNEXPECTED(orig_val_type == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - } else { - SAVE_OPLINE(); - ZVAL_BOOL(EX_VAR(opline->result.var), i_zend_is_true(val)); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CLONE_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *obj; - zend_class_entry *ce, *scope; - zend_function *clone; - zend_object_clone_obj_t clone_call; - - SAVE_OPLINE(); - obj = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(obj) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - do { - if (IS_CV == IS_CONST || - (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(obj) != IS_OBJECT))) { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(obj)) { - obj = Z_REFVAL_P(obj); - if (EXPECTED(Z_TYPE_P(obj) == IS_OBJECT)) { - break; - } - } - ZVAL_UNDEF(EX_VAR(opline->result.var)); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(obj) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "__clone method called on non-object"); - - HANDLE_EXCEPTION(); - } - } while (0); - - ce = Z_OBJCE_P(obj); - clone = ce->clone; - clone_call = Z_OBJ_HT_P(obj)->clone_obj; - if (UNEXPECTED(clone_call == NULL)) { - zend_throw_error(NULL, "Trying to clone an uncloneable object of class %s", ZSTR_VAL(ce->name)); - - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - - if (clone && !(clone->common.fn_flags & ZEND_ACC_PUBLIC)) { - scope = EX(func)->op_array.scope; - if (clone->common.scope != scope) { - if (UNEXPECTED(clone->common.fn_flags & ZEND_ACC_PRIVATE) - || UNEXPECTED(!zend_check_protected(zend_get_function_root_class(clone), scope))) { - zend_wrong_clone_call(clone, scope); - - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - } - - ZVAL_OBJ(EX_VAR(opline->result.var), clone_call(obj)); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CAST_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *expr; - zval *result = EX_VAR(opline->result.var); - HashTable *ht; - - SAVE_OPLINE(); - expr = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - - switch (opline->extended_value) { - case IS_NULL: - ZVAL_NULL(result); - break; - case _IS_BOOL: - ZVAL_BOOL(result, zend_is_true(expr)); - break; - case IS_LONG: - ZVAL_LONG(result, zval_get_long(expr)); - break; - case IS_DOUBLE: - ZVAL_DOUBLE(result, zval_get_double(expr)); - break; - case IS_STRING: - ZVAL_STR(result, zval_get_string(expr)); - break; - default: - if (IS_CV & (IS_VAR|IS_CV)) { - ZVAL_DEREF(expr); - } - /* If value is already of correct type, return it directly */ - if (Z_TYPE_P(expr) == opline->extended_value) { - ZVAL_COPY_VALUE(result, expr); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (IS_CV != IS_TMP_VAR) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - if (opline->extended_value == IS_ARRAY) { - if (IS_CV == IS_CONST || Z_TYPE_P(expr) != IS_OBJECT || Z_OBJCE_P(expr) == zend_ce_closure) { - if (Z_TYPE_P(expr) != IS_NULL) { - ZVAL_ARR(result, zend_new_array(1)); - expr = zend_hash_index_add_new(Z_ARRVAL_P(result), 0, expr); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(expr))) Z_ADDREF_P(expr); - } else { - if (Z_OPT_REFCOUNTED_P(expr)) Z_ADDREF_P(expr); - } - } else { - ZVAL_EMPTY_ARRAY(result); - } - } else { - HashTable *obj_ht = zend_get_properties_for(expr, ZEND_PROP_PURPOSE_ARRAY_CAST); - if (obj_ht) { - /* fast copy */ - ZVAL_ARR(result, zend_proptable_to_symtable(obj_ht, - (Z_OBJCE_P(expr)->default_properties_count || - Z_OBJ_P(expr)->handlers != &std_object_handlers || - GC_IS_RECURSIVE(obj_ht)))); - zend_release_properties(obj_ht); - } else { - ZVAL_EMPTY_ARRAY(result); - } - } - } else { - ZVAL_OBJ(result, zend_objects_new(zend_standard_class_def)); - if (Z_TYPE_P(expr) == IS_ARRAY) { - ht = zend_symtable_to_proptable(Z_ARR_P(expr)); - if (GC_FLAGS(ht) & IS_ARRAY_IMMUTABLE) { - /* TODO: try not to duplicate immutable arrays as well ??? */ - ht = zend_array_dup(ht); - } - Z_OBJ_P(result)->properties = ht; - } else if (Z_TYPE_P(expr) != IS_NULL) { - Z_OBJ_P(result)->properties = ht = zend_new_array(1); - expr = zend_hash_add_new(ht, ZSTR_KNOWN(ZEND_STR_SCALAR), expr); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(expr))) Z_ADDREF_P(expr); - } else { - if (Z_OPT_REFCOUNTED_P(expr)) Z_ADDREF_P(expr); - } - } - } - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INCLUDE_OR_EVAL_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_op_array *new_op_array; - - zval *inc_filename; - - SAVE_OPLINE(); - inc_filename = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - new_op_array = zend_include_or_eval(inc_filename, opline->extended_value); - - if (UNEXPECTED(EG(exception) != NULL)) { - if (new_op_array != ZEND_FAKE_OP_ARRAY && new_op_array != NULL) { - destroy_op_array(new_op_array); - efree_size(new_op_array, sizeof(zend_op_array)); - } - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else if (new_op_array == ZEND_FAKE_OP_ARRAY) { - if (RETURN_VALUE_USED(opline)) { - ZVAL_TRUE(EX_VAR(opline->result.var)); - } - } else if (EXPECTED(new_op_array != NULL)) { - zval *return_value = NULL; - zend_execute_data *call; - - if (RETURN_VALUE_USED(opline)) { - return_value = EX_VAR(opline->result.var); - } - - new_op_array->scope = EX(func)->op_array.scope; - - call = zend_vm_stack_push_call_frame( - (Z_TYPE_INFO(EX(This)) & ZEND_CALL_HAS_THIS) | ZEND_CALL_NESTED_CODE | ZEND_CALL_HAS_SYMBOL_TABLE, - (zend_function*)new_op_array, 0, - Z_PTR(EX(This))); - - if (EX_CALL_INFO() & ZEND_CALL_HAS_SYMBOL_TABLE) { - call->symbol_table = EX(symbol_table); - } else { - call->symbol_table = zend_rebuild_symbol_table(); - } - - call->prev_execute_data = execute_data; - i_init_code_execute_data(call, new_op_array, return_value); - if (EXPECTED(zend_execute_ex == execute_ex)) { - ZEND_VM_ENTER(); - } else { - ZEND_ADD_CALL_FLAG(call, ZEND_CALL_TOP); - zend_execute_ex(call); - zend_vm_stack_free_call_frame(call); - } - - destroy_op_array(new_op_array); - efree_size(new_op_array, sizeof(zend_op_array)); - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - } else if (RETURN_VALUE_USED(opline)) { - ZVAL_FALSE(EX_VAR(opline->result.var)); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_RESET_R_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *array_ptr, *result; - - SAVE_OPLINE(); - - array_ptr = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - if (EXPECTED(Z_TYPE_P(array_ptr) == IS_ARRAY)) { - result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, array_ptr); - if (IS_CV != IS_TMP_VAR && Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(array_ptr); - } - Z_FE_POS_P(result) = 0; - - ZEND_VM_NEXT_OPCODE(); - } else if (IS_CV != IS_CONST && EXPECTED(Z_TYPE_P(array_ptr) == IS_OBJECT)) { - if (!Z_OBJCE_P(array_ptr)->get_iterator) { - HashTable *properties; - if (Z_OBJ_P(array_ptr)->properties - && UNEXPECTED(GC_REFCOUNT(Z_OBJ_P(array_ptr)->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(Z_OBJ_P(array_ptr)->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(Z_OBJ_P(array_ptr)->properties); - } - Z_OBJ_P(array_ptr)->properties = zend_array_dup(Z_OBJ_P(array_ptr)->properties); - } - - properties = Z_OBJPROP_P(array_ptr); - result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, array_ptr); - if (IS_CV != IS_TMP_VAR) { - Z_ADDREF_P(array_ptr); - } - - if (zend_hash_num_elements(properties) == 0) { - Z_FE_ITER_P(result) = (uint32_t) -1; - - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } - - Z_FE_ITER_P(result) = zend_hash_iterator_add(properties, 0); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - zend_bool is_empty = zend_fe_reset_iterator(array_ptr, 0 OPLINE_CC EXECUTE_DATA_CC); - - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } else if (is_empty) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - } else { - zend_error(E_WARNING, "Invalid argument supplied for foreach()"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t)-1; - - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FE_RESET_RW_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *array_ptr, *array_ref; - - SAVE_OPLINE(); - - if (IS_CV == IS_VAR || IS_CV == IS_CV) { - array_ref = array_ptr = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - if (Z_ISREF_P(array_ref)) { - array_ptr = Z_REFVAL_P(array_ref); - } - } else { - array_ref = array_ptr = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - } - - if (EXPECTED(Z_TYPE_P(array_ptr) == IS_ARRAY)) { - if (IS_CV == IS_VAR || IS_CV == IS_CV) { - if (array_ptr == array_ref) { - ZVAL_NEW_REF(array_ref, array_ref); - array_ptr = Z_REFVAL_P(array_ref); - } - Z_ADDREF_P(array_ref); - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), array_ref); - } else { - array_ref = EX_VAR(opline->result.var); - ZVAL_NEW_REF(array_ref, array_ptr); - array_ptr = Z_REFVAL_P(array_ref); - } - if (IS_CV == IS_CONST) { - ZVAL_ARR(array_ptr, zend_array_dup(Z_ARRVAL_P(array_ptr))); - } else { - SEPARATE_ARRAY(array_ptr); - } - Z_FE_ITER_P(EX_VAR(opline->result.var)) = zend_hash_iterator_add(Z_ARRVAL_P(array_ptr), 0); - - if (IS_CV == IS_VAR) { - - } - ZEND_VM_NEXT_OPCODE(); - } else if (IS_CV != IS_CONST && EXPECTED(Z_TYPE_P(array_ptr) == IS_OBJECT)) { - if (!Z_OBJCE_P(array_ptr)->get_iterator) { - HashTable *properties; - if (IS_CV == IS_VAR || IS_CV == IS_CV) { - if (array_ptr == array_ref) { - ZVAL_NEW_REF(array_ref, array_ref); - array_ptr = Z_REFVAL_P(array_ref); - } - Z_ADDREF_P(array_ref); - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), array_ref); - } else { - array_ptr = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(array_ptr, array_ref); - } - if (Z_OBJ_P(array_ptr)->properties - && UNEXPECTED(GC_REFCOUNT(Z_OBJ_P(array_ptr)->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(Z_OBJ_P(array_ptr)->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(Z_OBJ_P(array_ptr)->properties); - } - Z_OBJ_P(array_ptr)->properties = zend_array_dup(Z_OBJ_P(array_ptr)->properties); - } - - properties = Z_OBJPROP_P(array_ptr); - if (zend_hash_num_elements(properties) == 0) { - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t) -1; - - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } - - Z_FE_ITER_P(EX_VAR(opline->result.var)) = zend_hash_iterator_add(properties, 0); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - zend_bool is_empty = zend_fe_reset_iterator(array_ptr, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - - } else { - - } - if (UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } else if (is_empty) { - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } - } else { - zend_error(E_WARNING, "Invalid argument supplied for foreach()"); - ZVAL_UNDEF(EX_VAR(opline->result.var)); - Z_FE_ITER_P(EX_VAR(opline->result.var)) = (uint32_t)-1; - if (IS_CV == IS_VAR) { - - } else { - - } - ZEND_VM_JMP(OP_JMP_ADDR(opline, opline->op2)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_JMP_SET_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - zval *ref = NULL; - int ret; - - SAVE_OPLINE(); - value = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - - if ((IS_CV == IS_VAR || IS_CV == IS_CV) && Z_ISREF_P(value)) { - if (IS_CV == IS_VAR) { - ref = value; - } - value = Z_REFVAL_P(value); - } - - ret = i_zend_is_true(value); - - if (UNEXPECTED(EG(exception))) { - - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - - if (ret) { - zval *result = EX_VAR(opline->result.var); - - ZVAL_COPY_VALUE(result, value); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (IS_CV == IS_CV) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } else if (IS_CV == IS_VAR && ref) { - zend_reference *r = Z_REF_P(ref); - - if (UNEXPECTED(GC_DELREF(r) == 0)) { - efree_size(r, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_COALESCE_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - zval *ref = NULL; - - SAVE_OPLINE(); - value = _get_zval_ptr_cv_BP_VAR_IS(opline->op1.var EXECUTE_DATA_CC); - - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - if (IS_CV & IS_VAR) { - ref = value; - } - value = Z_REFVAL_P(value); - } - - if (Z_TYPE_P(value) > IS_NULL) { - zval *result = EX_VAR(opline->result.var); - ZVAL_COPY_VALUE(result, value); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) Z_ADDREF_P(result); - } else if (IS_CV == IS_CV) { - if (Z_OPT_REFCOUNTED_P(result)) Z_ADDREF_P(result); - } else if ((IS_CV & IS_VAR) && ref) { - zend_reference *r = Z_REF_P(ref); - - if (UNEXPECTED(GC_DELREF(r) == 0)) { - efree_size(r, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } - ZEND_VM_JMP_EX(OP_JMP_ADDR(opline, opline->op2), 0); - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_QM_ASSIGN_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - zval *result = EX_VAR(opline->result.var); - - value = EX_VAR(opline->op1.var); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZVAL_NULL(result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - - if (IS_CV == IS_CV) { - ZVAL_COPY_DEREF(result, value); - } else if (IS_CV == IS_VAR) { - if (UNEXPECTED(Z_ISREF_P(value))) { - ZVAL_COPY_VALUE(result, Z_REFVAL_P(value)); - if (UNEXPECTED(Z_DELREF_P(value) == 0)) { - efree_size(Z_REF_P(value), sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(result)) { - Z_ADDREF_P(result); - } - } else { - ZVAL_COPY_VALUE(result, value); - } - } else { - ZVAL_COPY_VALUE(result, value); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(result))) { - Z_ADDREF_P(result); - } - } - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_FROM_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - zval *val; - - - SAVE_OPLINE(); - val = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - zend_throw_error(NULL, "Cannot use \"yield from\" in a force-closed generator"); - - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - if (Z_TYPE_P(val) == IS_ARRAY) { - ZVAL_COPY_VALUE(&generator->values, val); - if (IS_CV != IS_TMP_VAR && Z_OPT_REFCOUNTED_P(val)) { - Z_ADDREF_P(val); - } - Z_FE_POS(generator->values) = 0; - - } else if (IS_CV != IS_CONST && Z_TYPE_P(val) == IS_OBJECT && Z_OBJCE_P(val)->get_iterator) { - zend_class_entry *ce = Z_OBJCE_P(val); - if (ce == zend_ce_generator) { - zend_generator *new_gen = (zend_generator *) Z_OBJ_P(val); - - if (IS_CV != IS_TMP_VAR) { - Z_ADDREF_P(val); - } - - if (Z_ISUNDEF(new_gen->retval)) { - if (UNEXPECTED(zend_generator_get_current(new_gen) == generator)) { - zend_throw_error(NULL, "Impossible to yield from the Generator being currently run"); - zval_ptr_dtor(val); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else { - zend_generator_yield_from(generator, new_gen); - } - } else if (UNEXPECTED(new_gen->execute_data == NULL)) { - zend_throw_error(NULL, "Generator passed to yield from was aborted without proper return and is unable to continue"); - zval_ptr_dtor(val); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } else { - if (RETURN_VALUE_USED(opline)) { - ZVAL_COPY(EX_VAR(opline->result.var), &new_gen->retval); - } - ZEND_VM_NEXT_OPCODE(); - } - } else { - zend_object_iterator *iter = ce->get_iterator(ce, val, 0); - - if (UNEXPECTED(!iter) || UNEXPECTED(EG(exception))) { - if (!EG(exception)) { - zend_throw_error(NULL, "Object of type %s did not create an Iterator", ZSTR_VAL(ce->name)); - } - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - iter->index = 0; - if (iter->funcs->rewind) { - iter->funcs->rewind(iter); - if (UNEXPECTED(EG(exception) != NULL)) { - OBJ_RELEASE(&iter->std); - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - } - - ZVAL_OBJ(&generator->values, &iter->std); - } - } else { - zend_throw_error(NULL, "Can use \"yield from\" only with arrays and Traversables"); - - UNDEF_RESULT(); - HANDLE_EXCEPTION(); - } - - /* This is the default return value - * when the expression is a Generator, it will be overwritten in zend_generator_resume() */ - if (RETURN_VALUE_USED(opline)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - - /* This generator has no send target (though the generator we delegate to might have one) */ - generator->send_target = NULL; - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_STRLEN_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - - - value = EX_VAR(opline->op1.var); - if (EXPECTED(Z_TYPE_P(value) == IS_STRING)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_STRLEN_P(value)); - - ZEND_VM_NEXT_OPCODE(); - } else { - zend_bool strict; - - if ((IS_CV & (IS_VAR|IS_CV)) && Z_TYPE_P(value) == IS_REFERENCE) { - value = Z_REFVAL_P(value); - if (EXPECTED(Z_TYPE_P(value) == IS_STRING)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_STRLEN_P(value)); - - ZEND_VM_NEXT_OPCODE(); - } - } - - SAVE_OPLINE(); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - value = ZVAL_UNDEFINED_OP1(); - } - strict = EX_USES_STRICT_TYPES(); - do { - if (EXPECTED(!strict)) { - zend_string *str; - zval tmp; - - ZVAL_COPY(&tmp, value); - if (zend_parse_arg_str_weak(&tmp, &str)) { - ZVAL_LONG(EX_VAR(opline->result.var), ZSTR_LEN(str)); - zval_ptr_dtor(&tmp); - break; - } - zval_ptr_dtor(&tmp); - } - if (!EG(exception)) { - zend_internal_type_error(strict, "strlen() expects parameter 1 to be string, %s given", zend_get_type_by_const(Z_TYPE_P(value))); - } - ZVAL_NULL(EX_VAR(opline->result.var)); - } while (0); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_TYPE_CHECK_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - int result = 0; - - - value = EX_VAR(opline->op1.var); - if ((opline->extended_value >> (uint32_t)Z_TYPE_P(value)) & 1) { -type_check_resource: - if (EXPECTED(Z_TYPE_P(value) != IS_RESOURCE) - || EXPECTED(NULL != zend_rsrc_list_get_rsrc_type(Z_RES_P(value)))) { - result = 1; - } - } else if ((IS_CV & (IS_CV|IS_VAR)) && Z_ISREF_P(value)) { - value = Z_REFVAL_P(value); - if ((opline->extended_value >> (uint32_t)Z_TYPE_P(value)) & 1) { - goto type_check_resource; - } - } else if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - result = ((1 << IS_NULL) & opline->extended_value) != 0; - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception))) { - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - SAVE_OPLINE(); - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - Z_LVAL_P(var_ptr)++; - if (UNEXPECTED(0)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - Z_LVAL_P(var_ptr)++; - if (UNEXPECTED(1)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - fast_long_increment_function(var_ptr); - if (UNEXPECTED(0)) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - fast_long_increment_function(var_ptr); - if (UNEXPECTED(1)) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - Z_LVAL_P(var_ptr)--; - if (UNEXPECTED(0)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - Z_LVAL_P(var_ptr)--; - if (UNEXPECTED(1)) { - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - fast_long_decrement_function(var_ptr); - if (UNEXPECTED(0)) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - fast_long_decrement_function(var_ptr); - if (UNEXPECTED(1)) { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), var_ptr); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_LONG_NO_OVERFLOW_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - Z_LVAL_P(var_ptr)++; - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_LONG_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - fast_long_increment_function(var_ptr); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_LONG_NO_OVERFLOW_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - Z_LVAL_P(var_ptr)--; - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_DEC_LONG_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var_ptr; - - var_ptr = EX_VAR(opline->op1.var); - ZVAL_LONG(EX_VAR(opline->result.var), Z_LVAL_P(var_ptr)); - fast_long_decrement_function(var_ptr); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_SIMPLE_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varptr, *arg; - - - varptr = EX_VAR(opline->op1.var); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (IS_CV == IS_CV) { - ZVAL_COPY(arg, varptr); - } else /* if (IS_CV == IS_VAR) */ { - ZVAL_COPY_VALUE(arg, varptr); - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SEND_VAR_EX_SIMPLE_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varptr, *arg; - - uint32_t arg_num = opline->op2.num; - - if (QUICK_ARG_SHOULD_BE_SENT_BY_REF(EX(call)->func, arg_num)) { - ZEND_VM_TAIL_CALL(ZEND_SEND_REF_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - varptr = EX_VAR(opline->op1.var); - arg = ZEND_CALL_VAR(EX(call), opline->result.var); - - if (IS_CV == IS_CV) { - ZVAL_COPY(arg, varptr); - } else /* if (IS_CV == IS_VAR) */ { - ZVAL_COPY_VALUE(arg, varptr); - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DIV_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - fast_div_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POW_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - pow_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CONCAT_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - - if ((IS_CV == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - (IS_CONST == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if (IS_CV != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CONST == IS_CONST || IS_CONST == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if (IS_CONST != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CV == IS_CONST || IS_CV == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if (IS_CV != IS_CONST && IS_CV != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - if (UNEXPECTED(len > ZSTR_MAX_LEN - ZSTR_LEN(op2_str))) { - zend_error_noreturn(E_ERROR, "Integer overflow in memory allocation"); - } - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } else { - SAVE_OPLINE(); - - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = ZVAL_UNDEFINED_OP1(); - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - op2 = ZVAL_UNDEFINED_OP2(); - } - concat_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_IDENTICAL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - result = fast_is_identical_function(op1, op2); - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_IDENTICAL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - result = fast_is_not_identical_function(op1, op2); - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CV == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_CV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CV == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_CV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CV == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CV == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CV == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if (1 && IS_CV == IS_CONST && IS_CONST == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SPACESHIP_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - compare_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BOOL_XOR_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = RT_CONSTANT(opline, opline->op2); - boolean_xor_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_OP_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *object; - zval *property; - zval *value; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - do { - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_op_object; - } - if (IS_CV == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -assign_op_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CONST == IS_CONST) ? CACHE_ADDR((opline+1)->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - zval *orig_zptr = zptr; - zend_reference *ref; - - do { - if (UNEXPECTED(Z_ISREF_P(zptr))) { - ref = Z_REF_P(zptr); - zptr = Z_REFVAL_P(zptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - - if (IS_CONST == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), orig_zptr); - } - if (UNEXPECTED(prop_info)) { - /* special case for typed properties */ - zend_binary_assign_op_typed_prop(prop_info, zptr, value OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_binary_op(zptr, zptr, value OPLINE_CC); - } - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), zptr); - } - } - } else { - zend_assign_op_overloaded_property(object, property, cache_slot, value OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - FREE_OP(free_op_data); - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMP|VAR|CV, UNUSED|CONST|TMPVAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_OP_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data1; - zval *var_ptr; - zval *value, *container, *dim; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -assign_dim_op_array: - SEPARATE_ARRAY(container); -assign_dim_op_new_array: - dim = RT_CONSTANT(opline, opline->op2); - if (IS_CONST == IS_UNUSED) { - var_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(container), &EG(uninitialized_zval)); - if (UNEXPECTED(!var_ptr)) { - zend_cannot_add_element(); - goto assign_dim_op_ret_null; - } - } else { - if (IS_CONST == IS_CONST) { - var_ptr = zend_fetch_dimension_address_inner_RW_CONST(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } else { - var_ptr = zend_fetch_dimension_address_inner_RW(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(!var_ptr)) { - goto assign_dim_op_ret_null; - } - } - - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data1); - - do { - if (IS_CONST != IS_UNUSED && UNEXPECTED(Z_ISREF_P(var_ptr))) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - FREE_OP(free_op_data1); - } else { - if (EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto assign_dim_op_array; - } - } - - dim = RT_CONSTANT(opline, opline->op2); - - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_binary_assign_op_obj_dim(container, dim OPLINE_CC EXECUTE_DATA_CC); - } else if (EXPECTED(Z_TYPE_P(container) <= IS_FALSE)) { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - ZVAL_ARR(container, zend_new_array(8)); - goto assign_dim_op_new_array; - } else { - zend_binary_assign_op_dim_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); -assign_dim_op_ret_null: - FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - - - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OP_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *var_ptr; - zval *value; - - SAVE_OPLINE(); - value = RT_CONSTANT(opline, opline->op2); - var_ptr = _get_zval_ptr_cv_BP_VAR_RW(opline->op1.var EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - } - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - do { - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto pre_incdec_object; - } - if (IS_CV == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -pre_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - if (IS_CONST == IS_CONST) { - prop_info = (zend_property_info *) CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - do { - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto post_incdec_object; - } - if (IS_CV == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -post_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } else { - if (IS_CONST == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - - zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container, *dim, *value; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - dim = RT_CONSTANT(opline, opline->op2); - if (IS_CV != IS_CONST) { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_array: - value = zend_fetch_dimension_address_inner(Z_ARRVAL_P(container), dim, IS_CONST, BP_VAR_R EXECUTE_DATA_CC); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - } else if (EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_array; - } else { - goto fetch_dim_r_slow; - } - } else { -fetch_dim_r_slow: - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_fetch_dimension_address_read_R(container, dim, IS_CONST OPLINE_CC EXECUTE_DATA_CC); - } - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_W(container, RT_CONSTANT(opline, opline->op2), IS_CONST OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_RW(container, RT_CONSTANT(opline, opline->op2), IS_CONST OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_IS_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_read_IS(container, RT_CONSTANT(opline, opline->op2), IS_CONST OPLINE_CC EXECUTE_DATA_CC); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_CV & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_W_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if (IS_CONST == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_R_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_UNSET(container, RT_CONSTANT(opline, opline->op2), IS_CONST OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static zend_always_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_CV_CONST_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = RT_CONSTANT(opline, opline->op2); - - if (IS_CV == IS_CONST || - (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - zend_wrong_property_read(offset); - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_r_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CONST == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_REF /* FUNC_ARG fetch may contain it */); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_INFO_P(retval) != IS_UNDEF)) { - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { -fetch_obj_r_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - } - } else if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_R, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_r_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_r_finish: - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_CV_CONST_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *result; - - SAVE_OPLINE(); - - container = EX_VAR(opline->op1.var); - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - zend_fetch_property_address( - result, container, IS_CV, property, IS_CONST, - ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_OBJ_FLAGS) : NULL), - BP_VAR_W, opline->extended_value & ZEND_FETCH_OBJ_FLAGS, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *result; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - property = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_CV, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_RW, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = _get_zval_ptr_cv_BP_VAR_IS(opline->op1.var EXECUTE_DATA_CC); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = RT_CONSTANT(opline, opline->op2); - - if (IS_CV == IS_CONST || - (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_is_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CONST == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_P(retval) != IS_UNDEF)) { - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { -fetch_obj_is_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - } - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_IS, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_is_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_is_finish: - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_CV & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_W_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container, *property, *result; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_CV, property, IS_CONST, ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_UNSET, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CONST == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CONST, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CONST != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CONST == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CONST == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CONST == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_TMP_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CONST == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CONST == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CV, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CV != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CV == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CV == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = RT_CONSTANT((opline+1), (opline+1)->op1); - SEPARATE_ARRAY(object_ptr); - if (IS_CONST == IS_UNUSED) { - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CONST == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CONST == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = RT_CONSTANT(opline, opline->op2); - if (IS_CONST == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CONST, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = RT_CONSTANT(opline, opline->op2); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CONST == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = RT_CONSTANT(opline, opline->op2); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = RT_CONSTANT(opline, opline->op2); - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = RT_CONSTANT(opline, opline->op2); -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CONST != IS_UNUSED) { - - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_CONST == IS_UNUSED) { - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_TMP_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = RT_CONSTANT(opline, opline->op2); - if (IS_CONST == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CONST == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = RT_CONSTANT(opline, opline->op2); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = RT_CONSTANT(opline, opline->op2); -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CONST != IS_UNUSED) { - - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_CONST == IS_UNUSED) { - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = RT_CONSTANT(opline, opline->op2); - if (IS_CONST == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CONST == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = RT_CONSTANT(opline, opline->op2); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = RT_CONSTANT(opline, opline->op2); -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CONST != IS_UNUSED) { - - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_CONST == IS_UNUSED) { - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CV == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CV == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = RT_CONSTANT(opline, opline->op2); - if (IS_CONST == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CONST == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = RT_CONSTANT(opline, opline->op2); - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = RT_CONSTANT(opline, opline->op2); - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = RT_CONSTANT(opline, opline->op2); -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CONST != IS_UNUSED) { - - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = RT_CONSTANT(opline, opline->op2); - variable_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - - if (UNEXPECTED(0)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_CONST, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(0)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = RT_CONSTANT(opline, opline->op2); - variable_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - - if (UNEXPECTED(1)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_CONST, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(1)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - value_ptr = _get_zval_ptr_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (1) { - if (IS_CV == IS_UNUSED) { - if (IS_CONST == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if (IS_CONST == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_CV, property, IS_CONST, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - - if (UNEXPECTED(free_op_data)) {zval_ptr_dtor_nogc(free_op_data);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = RT_CONSTANT(opline, opline->op2); - - value_ptr = _get_zval_ptr_cv_BP_VAR_W((opline+1)->op1.var EXECUTE_DATA_CC); - - if (1) { - if (IS_CV == IS_UNUSED) { - if (IS_CONST == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if (IS_CONST == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_CV, property, IS_CONST, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - - - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FAST_CONCAT_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - zend_string *op1_str, *op2_str, *str; - - - op1 = EX_VAR(opline->op1.var); - op2 = RT_CONSTANT(opline, opline->op2); - if ((IS_CV == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - (IS_CONST == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if (IS_CV != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CONST == IS_CONST || IS_CONST == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if (IS_CONST != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CV == IS_CONST || IS_CV == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if (IS_CV != IS_CONST && IS_CV != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - if (UNEXPECTED(len > ZSTR_MAX_LEN - ZSTR_LEN(op2_str))) { - zend_error_noreturn(E_ERROR, "Integer overflow in memory allocation"); - } - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CONST & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_CV == IS_CONST) { - op1_str = Z_STR_P(op1); - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - op1_str = zend_string_copy(Z_STR_P(op1)); - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - op1_str = zval_get_string_func(op1); - } - if (IS_CONST == IS_CONST) { - op2_str = Z_STR_P(op2); - } else if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - op2_str = zend_string_copy(Z_STR_P(op2)); - } else { - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - op2_str = zval_get_string_func(op2); - } - do { - if (IS_CV != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op2))) { - GC_ADDREF(op2_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - zend_string_release_ex(op1_str, 0); - break; - } - } - if (IS_CONST != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op1))) { - GC_ADDREF(op1_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - zend_string_release_ex(op2_str, 0); - break; - } - } - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV != IS_CONST) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CONST != IS_CONST) { - zend_string_release_ex(op2_str, 0); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_free_op free_op1; - zval *object; - zend_function *fbc; - zend_class_entry *called_scope; - zend_object *obj; - zend_execute_data *call; - uint32_t call_info; - - SAVE_OPLINE(); - - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - if (IS_CONST != IS_CONST) { - function_name = RT_CONSTANT(opline, opline->op2); - } - - if (IS_CONST != IS_CONST && - UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Method name must be a string"); - - - HANDLE_EXCEPTION(); - } while (0); - } - - if (IS_CV != IS_UNUSED) { - do { - if (IS_CV == IS_CONST || UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(object))) { - object = Z_REFVAL_P(object); - if (EXPECTED(Z_TYPE_P(object) == IS_OBJECT)) { - break; - } - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - object = ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if (IS_CONST != IS_CONST) { - - } - HANDLE_EXCEPTION(); - } - } - if (IS_CONST == IS_CONST) { - function_name = RT_CONSTANT(opline, opline->op2); - } - zend_invalid_method_call(object, function_name); - - - HANDLE_EXCEPTION(); - } - } while (0); - } - - obj = Z_OBJ_P(object); - called_scope = obj->ce; - - if (IS_CONST == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == called_scope)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else { - zend_object *orig_obj = obj; - - if (IS_CONST == IS_CONST) { - function_name = RT_CONSTANT(opline, opline->op2); - } - - /* First, locate the function. */ - fbc = obj->handlers->get_method(&obj, Z_STR_P(function_name), ((IS_CONST == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(obj->ce, Z_STR_P(function_name)); - } - - - HANDLE_EXCEPTION(); - } - if (IS_CONST == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE))) && - EXPECTED(obj == orig_obj)) { - CACHE_POLYMORPHIC_PTR(opline->result.num, called_scope, fbc); - } - if ((IS_CV & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(obj != orig_obj)) { - /* Reset "object" to trigger reference counting */ - object = NULL; - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (IS_CONST != IS_CONST) { - - } - - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_STATIC) != 0)) { - - if ((IS_CV & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - /* call static method */ - obj = (zend_object*)called_scope; - call_info = ZEND_CALL_NESTED_FUNCTION; - } else if (IS_CV & (IS_VAR|IS_TMP_VAR|IS_CV)) { - if (IS_CV == IS_CV) { - GC_ADDREF(obj); /* For $this pointer */ - } else if (free_op1 != object) { - GC_ADDREF(obj); /* For $this pointer */ - - } - /* CV may be changed indirectly (e.g. when it's a reference) */ - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS | ZEND_CALL_RELEASE_THIS; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, obj); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_CV == IS_VAR || IS_CV == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = _get_zval_ptr_cv_BP_VAR_W(opline->op1.var EXECUTE_DATA_CC); - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - - } else { - expr_ptr = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - if (IS_CV == IS_TMP_VAR) { - /* pass */ - } else if (IS_CV == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_CV == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_CV == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if (IS_CONST != IS_UNUSED) { - - zval *offset = RT_CONSTANT(opline, opline->op2); - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CONST != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if (IS_CONST == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_CV != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - zval *offset; - zend_ulong hval; - zend_string *key; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - offset = RT_CONSTANT(opline, opline->op2); - - do { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - -unset_dim_array: - SEPARATE_ARRAY(container); - ht = Z_ARRVAL_P(container); -offset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - key = Z_STR_P(offset); - if (IS_CONST != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(key, hval)) { - goto num_index_dim; - } - } -str_index_dim: - if (ht == &EG(symbol_table)) { - zend_delete_global_variable(key); - } else { - zend_hash_del(ht, key); - } - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_dim: - zend_hash_index_del(ht, hval); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto offset_again; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_NULL) { - key = ZSTR_EMPTY_ALLOC(); - goto str_index_dim; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - hval = Z_RES_HANDLE_P(offset); - goto num_index_dim; - } else if (IS_CONST == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - key = ZSTR_EMPTY_ALLOC(); - goto str_index_dim; - } else { - zend_error(E_WARNING, "Illegal offset type in unset"); - } - break; - } else if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto unset_dim_array; - } - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - container = ZVAL_UNDEFINED_OP1(); - } - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - offset = ZVAL_UNDEFINED_OP2(); - } - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if (IS_CONST == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - Z_OBJ_HT_P(container)->unset_dimension(container, offset); - } else if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_STRING)) { - zend_throw_error(NULL, "Cannot unset string offsets"); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - zval *offset; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - offset = RT_CONSTANT(opline, opline->op2); - - do { - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (Z_TYPE_P(container) != IS_OBJECT) { - if (IS_CV == IS_CV - && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - break; - } - } else { - break; - } - } - Z_OBJ_HT_P(container)->unset_property(container, offset, ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL)); - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - int result; - zend_ulong hval; - zval *offset; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - offset = RT_CONSTANT(opline, opline->op2); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - zval *value; - zend_string *str; - -isset_dim_obj_array: - ht = Z_ARRVAL_P(container); -isset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CONST != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index_prop; - } - } - value = zend_hash_find_ex_ind(ht, str, IS_CONST == IS_CONST); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_prop: - value = zend_hash_index_find(ht, hval); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(offset))) { - offset = Z_REFVAL_P(offset); - goto isset_again; - } else { - value = zend_find_array_dim_slow(ht, offset EXECUTE_DATA_CC); - if (UNEXPECTED(EG(exception))) { - result = 0; - goto isset_dim_obj_exit; - } - } - - if (!(opline->extended_value & ZEND_ISEMPTY)) { - /* > IS_NULL means not IS_UNDEF and not IS_NULL */ - result = value != NULL && Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL); - - if (IS_CV & (IS_CONST|IS_CV)) { - /* avoid exception check */ - - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } - } else { - result = (value == NULL || !i_zend_is_true(value)); - } - goto isset_dim_obj_exit; - } else if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto isset_dim_obj_array; - } - } - - if (IS_CONST == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - result = zend_isset_dim_slow(container, offset EXECUTE_DATA_CC); - } else { - result = zend_isempty_dim_slow(container, offset EXECUTE_DATA_CC); - } - -isset_dim_obj_exit: - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - int result; - zval *offset; - - SAVE_OPLINE(); - container = _get_zval_ptr_cv_BP_VAR_IS(opline->op1.var EXECUTE_DATA_CC); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = RT_CONSTANT(opline, opline->op2); - - if (IS_CV == IS_CONST || - (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } else { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } - - result = - (opline->extended_value & ZEND_ISEMPTY) ^ - Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY), ((IS_CONST == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_ISEMPTY) : NULL)); - -isset_object_finish: - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - - zval *key, *subject; - HashTable *ht; - uint32_t result; - - SAVE_OPLINE(); - - key = EX_VAR(opline->op1.var); - subject = RT_CONSTANT(opline, opline->op2); - - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { -array_key_exists_array: - ht = Z_ARRVAL_P(subject); - result = zend_array_key_exists_fast(ht, key OPLINE_CC EXECUTE_DATA_CC); - } else { - if ((IS_CONST & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(subject))) { - subject = Z_REFVAL_P(subject); - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { - goto array_key_exists_array; - } - } - result = zend_array_key_exists_slow(subject, key OPLINE_CC EXECUTE_DATA_CC); - } - - - ZEND_VM_SMART_BRANCH(result == IS_TRUE, 1); - Z_TYPE_INFO_P(EX_VAR(opline->result.var)) = result; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|UNUSED|CV, ANY) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INSTANCEOF_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *expr; - zend_bool result; - - SAVE_OPLINE(); - expr = EX_VAR(opline->op1.var); - -try_instanceof: - if (Z_TYPE_P(expr) == IS_OBJECT) { - zend_class_entry *ce; - - if (IS_CONST == IS_CONST) { - ce = CACHED_PTR(opline->extended_value); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD); - if (EXPECTED(ce)) { - CACHE_PTR(opline->extended_value, ce); - } - } - } else if (IS_CONST == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op2.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op2.var)); - } - result = ce && instanceof_function(Z_OBJCE_P(expr), ce); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_TYPE_P(expr) == IS_REFERENCE) { - expr = Z_REFVAL_P(expr); - goto try_instanceof; - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(expr) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - result = 0; - } - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_CV != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_CV & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = _get_zval_ptr_cv_BP_VAR_W(opline->op1.var EXECUTE_DATA_CC); - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_CV == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_CV == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_CV == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CV == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_CONST != IS_UNUSED) { - - zval *key = RT_CONSTANT(opline, opline->op2); - - /* Consts, temporary variables and references need copying */ - if (IS_CONST == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_CONST == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_CONST & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_CONST == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BIND_GLOBAL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_string *varname; - zval *value; - zval *variable_ptr; - uintptr_t idx; - zend_reference *ref; - - ZEND_VM_REPEATABLE_OPCODE - - varname = Z_STR_P(RT_CONSTANT(opline, opline->op2)); - - /* We store "hash slot index" + 1 (NULL is a mark of uninitialized cache slot) */ - idx = (uintptr_t)CACHED_PTR(opline->extended_value) - 1; - if (EXPECTED(idx < EG(symbol_table).nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)EG(symbol_table).arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == varname) || - (EXPECTED(p->h == ZSTR_H(varname)) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, varname))))) { - - value = (zval*)p; /* value = &p->val; */ - goto check_indirect; - } - } - - value = zend_hash_find_ex(&EG(symbol_table), varname, 1); - if (UNEXPECTED(value == NULL)) { - value = zend_hash_add_new(&EG(symbol_table), varname, &EG(uninitialized_zval)); - idx = (char*)value - (char*)EG(symbol_table).arData; - /* Store "hash slot index" + 1 (NULL is a mark of uninitialized cache slot) */ - CACHE_PTR(opline->extended_value, (void*)(idx + 1)); - } else { - idx = (char*)value - (char*)EG(symbol_table).arData; - /* Store "hash slot index" + 1 (NULL is a mark of uninitialized cache slot) */ - CACHE_PTR(opline->extended_value, (void*)(idx + 1)); -check_indirect: - /* GLOBAL variable may be an INDIRECT pointer to CV */ - if (UNEXPECTED(Z_TYPE_P(value) == IS_INDIRECT)) { - value = Z_INDIRECT_P(value); - if (UNEXPECTED(Z_TYPE_P(value) == IS_UNDEF)) { - ZVAL_NULL(value); - } - } - } - - if (UNEXPECTED(!Z_ISREF_P(value))) { - ZVAL_MAKE_REF_EX(value, 2); - ref = Z_REF_P(value); - } else { - ref = Z_REF_P(value); - GC_ADDREF(ref); - } - - variable_ptr = EX_VAR(opline->op1.var); - - if (UNEXPECTED(Z_REFCOUNTED_P(variable_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(variable_ptr); - uint32_t refcnt = GC_DELREF(ref); - - if (EXPECTED(variable_ptr != value)) { - if (refcnt == 0) { - SAVE_OPLINE(); - rc_dtor_func(ref); - if (UNEXPECTED(EG(exception))) { - ZVAL_NULL(variable_ptr); - HANDLE_EXCEPTION(); - } - } else { - gc_check_possible_root(ref); - } - } - } - ZVAL_REF(variable_ptr, ref); - - ZEND_VM_REPEAT_OPCODE(ZEND_BIND_GLOBAL); - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IN_ARRAY_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1; - HashTable *ht = Z_ARRVAL_P(RT_CONSTANT(opline, opline->op2)); - zval *result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - result = zend_hash_find_ex(ht, Z_STR_P(op1), IS_CV == IS_CONST); - } else if (opline->extended_value) { - if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - result = zend_hash_index_find(ht, Z_LVAL_P(op1)); - } else { - result = NULL; - } - } else if (Z_TYPE_P(op1) <= IS_FALSE) { - result = zend_hash_find_ex(ht, ZSTR_EMPTY_ALLOC(), 1); - } else { - zend_string *key; - zval key_tmp, result_tmp, *val; - - result = NULL; - ZEND_HASH_FOREACH_STR_KEY_VAL(ht, key, val) { - ZVAL_STR(&key_tmp, key); - compare_function(&result_tmp, op1, &key_tmp); - if (Z_LVAL(result_tmp) == 0) { - result = val; - break; - } - } ZEND_HASH_FOREACH_END(); - } - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result != NULL); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_INDEX_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container, *dim, *value; - zend_long offset; - HashTable *ht; - - container = EX_VAR(opline->op1.var); - dim = RT_CONSTANT(opline, opline->op2); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_index_array: - if (EXPECTED(Z_TYPE_P(dim) == IS_LONG)) { - offset = Z_LVAL_P(dim); - } else { - offset = zval_get_long(dim); - } - ht = Z_ARRVAL_P(container); - ZEND_HASH_INDEX_FIND(ht, offset, value, fetch_dim_r_index_undef); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - SAVE_OPLINE(); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } else if (IS_CV != IS_CONST && EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_index_array; - } else { - goto fetch_dim_r_index_slow; - } - } else { -fetch_dim_r_index_slow: - SAVE_OPLINE(); - if (IS_CONST == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - -fetch_dim_r_index_undef: - ZVAL_NULL(EX_VAR(opline->result.var)); - SAVE_OPLINE(); - zend_undefined_offset(offset); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_INDEX_SPEC_CV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container, *dim, *value; - zend_long offset; - HashTable *ht; - - container = EX_VAR(opline->op1.var); - dim = EX_VAR(opline->op2.var); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_index_array: - if (EXPECTED(Z_TYPE_P(dim) == IS_LONG)) { - offset = Z_LVAL_P(dim); - } else { - offset = zval_get_long(dim); - } - ht = Z_ARRVAL_P(container); - ZEND_HASH_INDEX_FIND(ht, offset, value, fetch_dim_r_index_undef); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - SAVE_OPLINE(); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZEND_VM_NEXT_OPCODE(); - } - } else if (IS_CV != IS_CONST && EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_index_array; - } else { - goto fetch_dim_r_index_slow; - } - } else { -fetch_dim_r_index_slow: - SAVE_OPLINE(); - if ((IS_TMP_VAR|IS_VAR|IS_CV) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - -fetch_dim_r_index_undef: - ZVAL_NULL(EX_VAR(opline->result.var)); - SAVE_OPLINE(); - zend_undefined_offset(offset); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DIV_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - fast_div_function(EX_VAR(opline->result.var), op1, op2); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POW_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - pow_function(EX_VAR(opline->result.var), op1, op2); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CONCAT_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - - op1 = EX_VAR(opline->op1.var); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if ((IS_CV == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - ((IS_TMP_VAR|IS_VAR) == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if (IS_CV != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || (IS_TMP_VAR|IS_VAR) == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CV == IS_CONST || IS_CV == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if (IS_CV != IS_CONST && IS_CV != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } else { - SAVE_OPLINE(); - - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = ZVAL_UNDEFINED_OP1(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - op2 = ZVAL_UNDEFINED_OP2(); - } - concat_function(EX_VAR(opline->result.var), op1, op2); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (1 && IS_CV == IS_CONST && (IS_TMP_VAR|IS_VAR) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (1 && IS_CV == IS_CONST && (IS_TMP_VAR|IS_VAR) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (1 && IS_CV == IS_CONST && (IS_TMP_VAR|IS_VAR) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (1 && IS_CV == IS_CONST && (IS_TMP_VAR|IS_VAR) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (1 && IS_CV == IS_CONST && (IS_TMP_VAR|IS_VAR) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (1 && IS_CV == IS_CONST && (IS_TMP_VAR|IS_VAR) == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SPACESHIP_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - compare_function(EX_VAR(opline->result.var), op1, op2); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BOOL_XOR_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - boolean_xor_function(EX_VAR(opline->result.var), op1, op2); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_OP_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2, free_op_data; - zval *object; - zval *property; - zval *value; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_op_object; - } - if (IS_CV == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -assign_op_object: - /* here we are sure we are dealing with an object */ - cache_slot = ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR((opline+1)->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - zval *orig_zptr = zptr; - zend_reference *ref; - - do { - if (UNEXPECTED(Z_ISREF_P(zptr))) { - ref = Z_REF_P(zptr); - zptr = Z_REFVAL_P(zptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), orig_zptr); - } - if (UNEXPECTED(prop_info)) { - /* special case for typed properties */ - zend_binary_assign_op_typed_prop(prop_info, zptr, value OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_binary_op(zptr, zptr, value OPLINE_CC); - } - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), zptr); - } - } - } else { - zend_assign_op_overloaded_property(object, property, cache_slot, value OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - FREE_OP(free_op_data); - zval_ptr_dtor_nogc(free_op2); - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMP|VAR|CV, UNUSED|CONST|TMPVAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_OP_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2, free_op_data1; - zval *var_ptr; - zval *value, *container, *dim; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -assign_dim_op_array: - SEPARATE_ARRAY(container); -assign_dim_op_new_array: - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - var_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(container), &EG(uninitialized_zval)); - if (UNEXPECTED(!var_ptr)) { - zend_cannot_add_element(); - goto assign_dim_op_ret_null; - } - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - var_ptr = zend_fetch_dimension_address_inner_RW_CONST(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } else { - var_ptr = zend_fetch_dimension_address_inner_RW(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(!var_ptr)) { - goto assign_dim_op_ret_null; - } - } - - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data1); - - do { - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED && UNEXPECTED(Z_ISREF_P(var_ptr))) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - FREE_OP(free_op_data1); - } else { - if (EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto assign_dim_op_array; - } - } - - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_binary_assign_op_obj_dim(container, dim OPLINE_CC EXECUTE_DATA_CC); - } else if (EXPECTED(Z_TYPE_P(container) <= IS_FALSE)) { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - ZVAL_ARR(container, zend_new_array(8)); - goto assign_dim_op_new_array; - } else { - zend_binary_assign_op_dim_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); -assign_dim_op_ret_null: - FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OP_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *var_ptr; - zval *value; - - SAVE_OPLINE(); - value = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - var_ptr = _get_zval_ptr_cv_BP_VAR_RW(opline->op1.var EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - } - - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto pre_incdec_object; - } - if (IS_CV == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -pre_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - prop_info = (zend_property_info *) CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto post_incdec_object; - } - if (IS_CV == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -post_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - - zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container, *dim, *value; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if (IS_CV != IS_CONST) { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_array: - value = zend_fetch_dimension_address_inner(Z_ARRVAL_P(container), dim, (IS_TMP_VAR|IS_VAR), BP_VAR_R EXECUTE_DATA_CC); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - } else if (EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_array; - } else { - goto fetch_dim_r_slow; - } - } else { -fetch_dim_r_slow: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_fetch_dimension_address_read_R(container, dim, (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - } - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_W(container, _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC), (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_CV == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_RW(container, _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC), (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_CV == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_read_IS(container, _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC), (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_CV & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_UNSET(container, _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC), (IS_TMP_VAR|IS_VAR) OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_CV == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - zend_free_op free_op2; - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (IS_CV == IS_CONST || - (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - zend_wrong_property_read(offset); - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_r_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_REF /* FUNC_ARG fetch may contain it */); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_INFO_P(retval) != IS_UNDEF)) { - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { -fetch_obj_r_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - } - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_R, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_r_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_r_finish: - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *property, *container, *result; - - SAVE_OPLINE(); - - container = EX_VAR(opline->op1.var); - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address( - result, container, IS_CV, property, (IS_TMP_VAR|IS_VAR), - (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_OBJ_FLAGS) : NULL), - BP_VAR_W, opline->extended_value & ZEND_FETCH_OBJ_FLAGS, 1 OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_CV == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *property, *container, *result; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_CV, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_RW, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_CV == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - zend_free_op free_op2; - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = _get_zval_ptr_cv_BP_VAR_IS(opline->op1.var EXECUTE_DATA_CC); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (IS_CV == IS_CONST || - (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_is_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_P(retval) != IS_UNDEF)) { - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { -fetch_obj_is_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - } - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_IS, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_is_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_is_finish: - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_CV & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1, free_op2; - zval *container, *property, *result; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_CV, property, (IS_TMP_VAR|IS_VAR), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_UNSET, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op2); - if (IS_CV == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CONST, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CONST != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CONST == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CONST == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - zval_ptr_dtor_nogc(free_op2); - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2, free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_TMP_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - zval_ptr_dtor_nogc(free_op2); - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2, free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - zval_ptr_dtor_nogc(free_op2); - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CV, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CV != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CV == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CV == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, ((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - zval_ptr_dtor_nogc(free_op2); - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op2, free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = RT_CONSTANT((opline+1), (opline+1)->op1); - SEPARATE_ARRAY(object_ptr); - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CONST == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CONST == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CONST, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zval_ptr_dtor_nogc(free_op2); - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op2, free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_TMP_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zval_ptr_dtor_nogc(free_op2); - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op2, free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zval_ptr_dtor_nogc(free_op2); - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op2, free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CV == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CV == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if ((IS_TMP_VAR|IS_VAR) == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zval_ptr_dtor_nogc(free_op2); - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2, free_op_data; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - value_ptr = _get_zval_ptr_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (1) { - if (IS_CV == IS_UNUSED) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_CV, property, (IS_TMP_VAR|IS_VAR), value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(free_op_data)) {zval_ptr_dtor_nogc(free_op_data);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - value_ptr = _get_zval_ptr_cv_BP_VAR_W((opline+1)->op1.var EXECUTE_DATA_CC); - - if (1) { - if (IS_CV == IS_UNUSED) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_CV, property, (IS_TMP_VAR|IS_VAR), value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FAST_CONCAT_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - zend_string *op1_str, *op2_str, *str; - - - op1 = EX_VAR(opline->op1.var); - op2 = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - if ((IS_CV == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - ((IS_TMP_VAR|IS_VAR) == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if (IS_CV != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST || (IS_TMP_VAR|IS_VAR) == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if ((IS_TMP_VAR|IS_VAR) != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CV == IS_CONST || IS_CV == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if (IS_CV != IS_CONST && IS_CV != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if ((IS_TMP_VAR|IS_VAR) & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_CV == IS_CONST) { - op1_str = Z_STR_P(op1); - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - op1_str = zend_string_copy(Z_STR_P(op1)); - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - op1_str = zval_get_string_func(op1); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - op2_str = Z_STR_P(op2); - } else if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - op2_str = zend_string_copy(Z_STR_P(op2)); - } else { - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - op2_str = zval_get_string_func(op2); - } - do { - if (IS_CV != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op2))) { - GC_ADDREF(op2_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - zend_string_release_ex(op1_str, 0); - break; - } - } - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op1))) { - GC_ADDREF(op1_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - zend_string_release_ex(op2_str, 0); - break; - } - } - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV != IS_CONST) { - zend_string_release_ex(op1_str, 0); - } - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zend_string_release_ex(op2_str, 0); - } - } while (0); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_free_op free_op1, free_op2; - zval *object; - zend_function *fbc; - zend_class_entry *called_scope; - zend_object *obj; - zend_execute_data *call; - uint32_t call_info; - - SAVE_OPLINE(); - - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - } - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST && - UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Method name must be a string"); - zval_ptr_dtor_nogc(free_op2); - - HANDLE_EXCEPTION(); - } while (0); - } - - if (IS_CV != IS_UNUSED) { - do { - if (IS_CV == IS_CONST || UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(object))) { - object = Z_REFVAL_P(object); - if (EXPECTED(Z_TYPE_P(object) == IS_OBJECT)) { - break; - } - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - object = ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zval_ptr_dtor_nogc(free_op2); - } - HANDLE_EXCEPTION(); - } - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - } - zend_invalid_method_call(object, function_name); - zval_ptr_dtor_nogc(free_op2); - - HANDLE_EXCEPTION(); - } - } while (0); - } - - obj = Z_OBJ_P(object); - called_scope = obj->ce; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == called_scope)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else { - zend_object *orig_obj = obj; - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST) { - function_name = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - } - - /* First, locate the function. */ - fbc = obj->handlers->get_method(&obj, Z_STR_P(function_name), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(obj->ce, Z_STR_P(function_name)); - } - zval_ptr_dtor_nogc(free_op2); - - HANDLE_EXCEPTION(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE))) && - EXPECTED(obj == orig_obj)) { - CACHE_POLYMORPHIC_PTR(opline->result.num, called_scope, fbc); - } - if ((IS_CV & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(obj != orig_obj)) { - /* Reset "object" to trigger reference counting */ - object = NULL; - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - zval_ptr_dtor_nogc(free_op2); - } - - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_STATIC) != 0)) { - - if ((IS_CV & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - /* call static method */ - obj = (zend_object*)called_scope; - call_info = ZEND_CALL_NESTED_FUNCTION; - } else if (IS_CV & (IS_VAR|IS_TMP_VAR|IS_CV)) { - if (IS_CV == IS_CV) { - GC_ADDREF(obj); /* For $this pointer */ - } else if (free_op1 != object) { - GC_ADDREF(obj); /* For $this pointer */ - - } - /* CV may be changed indirectly (e.g. when it's a reference) */ - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS | ZEND_CALL_RELEASE_THIS; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, obj); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_CV == IS_VAR || IS_CV == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = _get_zval_ptr_cv_BP_VAR_W(opline->op1.var EXECUTE_DATA_CC); - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - - } else { - expr_ptr = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - if (IS_CV == IS_TMP_VAR) { - /* pass */ - } else if (IS_CV == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_CV == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_CV == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if ((IS_TMP_VAR|IS_VAR) != IS_UNUSED) { - zend_free_op free_op2; - zval *offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - zval_ptr_dtor_nogc(free_op2); - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_CV != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container; - zval *offset; - zend_ulong hval; - zend_string *key; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - -unset_dim_array: - SEPARATE_ARRAY(container); - ht = Z_ARRVAL_P(container); -offset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - key = Z_STR_P(offset); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(key, hval)) { - goto num_index_dim; - } - } -str_index_dim: - if (ht == &EG(symbol_table)) { - zend_delete_global_variable(key); - } else { - zend_hash_del(ht, key); - } - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_dim: - zend_hash_index_del(ht, hval); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto offset_again; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_NULL) { - key = ZSTR_EMPTY_ALLOC(); - goto str_index_dim; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - hval = Z_RES_HANDLE_P(offset); - goto num_index_dim; - } else if ((IS_TMP_VAR|IS_VAR) == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - key = ZSTR_EMPTY_ALLOC(); - goto str_index_dim; - } else { - zend_error(E_WARNING, "Illegal offset type in unset"); - } - break; - } else if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto unset_dim_array; - } - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - container = ZVAL_UNDEFINED_OP1(); - } - if ((IS_TMP_VAR|IS_VAR) == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - offset = ZVAL_UNDEFINED_OP2(); - } - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - Z_OBJ_HT_P(container)->unset_dimension(container, offset); - } else if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_STRING)) { - zend_throw_error(NULL, "Cannot unset string offsets"); - } - } while (0); - - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container; - zval *offset; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - do { - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (Z_TYPE_P(container) != IS_OBJECT) { - if (IS_CV == IS_CV - && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - break; - } - } else { - break; - } - } - Z_OBJ_HT_P(container)->unset_property(container, offset, (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL)); - } while (0); - - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container; - int result; - zend_ulong hval; - zval *offset; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - zval *value; - zend_string *str; - -isset_dim_obj_array: - ht = Z_ARRVAL_P(container); -isset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if ((IS_TMP_VAR|IS_VAR) != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index_prop; - } - } - value = zend_hash_find_ex_ind(ht, str, (IS_TMP_VAR|IS_VAR) == IS_CONST); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_prop: - value = zend_hash_index_find(ht, hval); - } else if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(offset))) { - offset = Z_REFVAL_P(offset); - goto isset_again; - } else { - value = zend_find_array_dim_slow(ht, offset EXECUTE_DATA_CC); - if (UNEXPECTED(EG(exception))) { - result = 0; - goto isset_dim_obj_exit; - } - } - - if (!(opline->extended_value & ZEND_ISEMPTY)) { - /* > IS_NULL means not IS_UNDEF and not IS_NULL */ - result = value != NULL && Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL); - - if (IS_CV & (IS_CONST|IS_CV)) { - /* avoid exception check */ - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } - } else { - result = (value == NULL || !i_zend_is_true(value)); - } - goto isset_dim_obj_exit; - } else if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto isset_dim_obj_array; - } - } - - if ((IS_TMP_VAR|IS_VAR) == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - result = zend_isset_dim_slow(container, offset EXECUTE_DATA_CC); - } else { - result = zend_isempty_dim_slow(container, offset EXECUTE_DATA_CC); - } - -isset_dim_obj_exit: - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *container; - int result; - zval *offset; - - SAVE_OPLINE(); - container = _get_zval_ptr_cv_BP_VAR_IS(opline->op1.var EXECUTE_DATA_CC); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (IS_CV == IS_CONST || - (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } else { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } - - result = - (opline->extended_value & ZEND_ISEMPTY) ^ - Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY), (((IS_TMP_VAR|IS_VAR) == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_ISEMPTY) : NULL)); - -isset_object_finish: - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_free_op free_op2; - zval *key, *subject; - HashTable *ht; - uint32_t result; - - SAVE_OPLINE(); - - key = EX_VAR(opline->op1.var); - subject = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { -array_key_exists_array: - ht = Z_ARRVAL_P(subject); - result = zend_array_key_exists_fast(ht, key OPLINE_CC EXECUTE_DATA_CC); - } else { - if (((IS_TMP_VAR|IS_VAR) & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(subject))) { - subject = Z_REFVAL_P(subject); - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { - goto array_key_exists_array; - } - } - result = zend_array_key_exists_slow(subject, key OPLINE_CC EXECUTE_DATA_CC); - } - - zval_ptr_dtor_nogc(free_op2); - - ZEND_VM_SMART_BRANCH(result == IS_TRUE, 1); - Z_TYPE_INFO_P(EX_VAR(opline->result.var)) = result; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|UNUSED|CV, ANY) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_IDENTICAL_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = fast_is_identical_function(op1, op2); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_IDENTICAL_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = fast_is_not_identical_function(op1, op2); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - variable_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(0)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(0)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - variable_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(1)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(1)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_CV != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_CV & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = _get_zval_ptr_cv_BP_VAR_W(opline->op1.var EXECUTE_DATA_CC); - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_CV == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_CV == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_CV == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CV == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_TMP_VAR != IS_UNUSED) { - zend_free_op free_op2; - zval *key = _get_zval_ptr_tmp(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_TMP_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_TMP_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_TMP_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_TMP_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_IDENTICAL_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var_deref(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = fast_is_identical_function(op1, op2); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_IDENTICAL_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_var_deref(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - result = fast_is_not_identical_function(op1, op2); - - zval_ptr_dtor_nogc(free_op2); - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - variable_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(0)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(0)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - variable_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - zval_ptr_dtor_nogc(free_op2); - if (UNEXPECTED(1)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(1)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_REF_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op2; - zval *variable_ptr; - zval *value_ptr; - - SAVE_OPLINE(); - value_ptr = _get_zval_ptr_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - variable_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - variable_ptr = &EG(uninitialized_zval); - } else if (IS_CV == IS_VAR && - UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT)) { - - zend_throw_error(NULL, "Cannot assign by reference to an array dimension of an object"); - variable_ptr = &EG(uninitialized_zval); - } else if (IS_VAR == IS_VAR && UNEXPECTED(Z_ISERROR_P(value_ptr))) { - variable_ptr = &EG(uninitialized_zval); - } else if (IS_VAR == IS_VAR && - opline->extended_value == ZEND_RETURNS_FUNCTION && - UNEXPECTED(!Z_ISREF_P(value_ptr))) { - - variable_ptr = zend_wrong_assign_to_variable_reference( - variable_ptr, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_variable_reference(variable_ptr, value_ptr); - } - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), variable_ptr); - } - - if (UNEXPECTED(free_op2)) {zval_ptr_dtor_nogc(free_op2);}; - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INSTANCEOF_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *expr; - zend_bool result; - - SAVE_OPLINE(); - expr = EX_VAR(opline->op1.var); - -try_instanceof: - if (Z_TYPE_P(expr) == IS_OBJECT) { - zend_class_entry *ce; - - if (IS_VAR == IS_CONST) { - ce = CACHED_PTR(opline->extended_value); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD); - if (EXPECTED(ce)) { - CACHE_PTR(opline->extended_value, ce); - } - } - } else if (IS_VAR == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op2.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op2.var)); - } - result = ce && instanceof_function(Z_OBJCE_P(expr), ce); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_TYPE_P(expr) == IS_REFERENCE) { - expr = Z_REFVAL_P(expr); - goto try_instanceof; - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(expr) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - result = 0; - } - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_CV != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_CV & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = _get_zval_ptr_cv_BP_VAR_W(opline->op1.var EXECUTE_DATA_CC); - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_CV == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_CV == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_CV == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CV == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_VAR != IS_UNUSED) { - zend_free_op free_op2; - zval *key = _get_zval_ptr_var(opline->op2.var, &free_op2 EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_VAR == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_VAR == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_VAR & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - zval_ptr_dtor_nogc(free_op2); - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_VAR == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_OP_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data1; - zval *var_ptr; - zval *value, *container, *dim; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -assign_dim_op_array: - SEPARATE_ARRAY(container); -assign_dim_op_new_array: - dim = NULL; - if (IS_UNUSED == IS_UNUSED) { - var_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(container), &EG(uninitialized_zval)); - if (UNEXPECTED(!var_ptr)) { - zend_cannot_add_element(); - goto assign_dim_op_ret_null; - } - } else { - if (IS_UNUSED == IS_CONST) { - var_ptr = zend_fetch_dimension_address_inner_RW_CONST(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } else { - var_ptr = zend_fetch_dimension_address_inner_RW(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(!var_ptr)) { - goto assign_dim_op_ret_null; - } - } - - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data1); - - do { - if (IS_UNUSED != IS_UNUSED && UNEXPECTED(Z_ISREF_P(var_ptr))) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - FREE_OP(free_op_data1); - } else { - if (EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto assign_dim_op_array; - } - } - - dim = NULL; - - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if (IS_UNUSED == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_binary_assign_op_obj_dim(container, dim OPLINE_CC EXECUTE_DATA_CC); - } else if (EXPECTED(Z_TYPE_P(container) <= IS_FALSE)) { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - ZVAL_ARR(container, zend_new_array(8)); - goto assign_dim_op_new_array; - } else { - zend_binary_assign_op_dim_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); -assign_dim_op_ret_null: - FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - - - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static zend_never_inline ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL zend_fetch_var_address_helper_SPEC_CV_UNUSED(int type ZEND_OPCODE_HANDLER_ARGS_DC) -{ - USE_OPLINE - - zval *varname; - zval *retval; - zend_string *name, *tmp_name; - HashTable *target_symbol_table; - - SAVE_OPLINE(); - varname = EX_VAR(opline->op1.var); - - if (IS_CV == IS_CONST) { - name = Z_STR_P(varname); - } else if (EXPECTED(Z_TYPE_P(varname) == IS_STRING)) { - name = Z_STR_P(varname); - tmp_name = NULL; - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(varname) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - name = zval_try_get_tmp_string(varname, &tmp_name); - if (UNEXPECTED(!name)) { - - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } - - target_symbol_table = zend_get_target_symbol_table(opline->extended_value EXECUTE_DATA_CC); - retval = zend_hash_find_ex(target_symbol_table, name, IS_CV == IS_CONST); - if (retval == NULL) { - if (UNEXPECTED(zend_string_equals(name, ZSTR_KNOWN(ZEND_STR_THIS)))) { -fetch_this: - zend_fetch_this_var(type OPLINE_CC EXECUTE_DATA_CC); - if (IS_CV != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - if (type == BP_VAR_W) { - retval = zend_hash_add_new(target_symbol_table, name, &EG(uninitialized_zval)); - } else if (type == BP_VAR_IS) { - retval = &EG(uninitialized_zval); - } else { - zend_error(E_NOTICE,"Undefined variable: %s", ZSTR_VAL(name)); - if (type == BP_VAR_RW) { - retval = zend_hash_update(target_symbol_table, name, &EG(uninitialized_zval)); - } else { - retval = &EG(uninitialized_zval); - } - } - /* GLOBAL or $$name variable may be an INDIRECT pointer to CV */ - } else if (Z_TYPE_P(retval) == IS_INDIRECT) { - retval = Z_INDIRECT_P(retval); - if (Z_TYPE_P(retval) == IS_UNDEF) { - if (UNEXPECTED(zend_string_equals(name, ZSTR_KNOWN(ZEND_STR_THIS)))) { - goto fetch_this; - } - if (type == BP_VAR_W) { - ZVAL_NULL(retval); - } else if (type == BP_VAR_IS) { - retval = &EG(uninitialized_zval); - } else { - zend_error(E_NOTICE,"Undefined variable: %s", ZSTR_VAL(name)); - if (type == BP_VAR_RW) { - ZVAL_NULL(retval); - } else { - retval = &EG(uninitialized_zval); - } - } - } - } - - if (!(opline->extended_value & ZEND_FETCH_GLOBAL_LOCK)) { - - } - - if (IS_CV != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - - ZEND_ASSERT(retval != NULL); - if (type == BP_VAR_R || type == BP_VAR_IS) { - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else { - ZVAL_INDIRECT(EX_VAR(opline->result.var), retval); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_R_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_CV_UNUSED(BP_VAR_R ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_W_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_CV_UNUSED(BP_VAR_W ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_RW_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_CV_UNUSED(BP_VAR_RW ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_FUNC_ARG_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - int fetch_type = - (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) ? - BP_VAR_W : BP_VAR_R; - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_CV_UNUSED(fetch_type ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_UNSET_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_CV_UNUSED(BP_VAR_UNSET ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_IS_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - ZEND_VM_TAIL_CALL(zend_fetch_var_address_helper_SPEC_CV_UNUSED(BP_VAR_IS ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_W(container, NULL, IS_UNUSED OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_RW(container, NULL, IS_UNUSED OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_CV & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_W_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if (IS_UNUSED == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = RT_CONSTANT((opline+1), (opline+1)->op1); - SEPARATE_ARRAY(object_ptr); - if (IS_UNUSED == IS_UNUSED) { - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CONST == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CONST == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = NULL; - if (IS_UNUSED == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CONST, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = NULL; - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_UNUSED == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_UNUSED == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = NULL; - value = RT_CONSTANT((opline+1), (opline+1)->op1); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = NULL; - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = NULL; -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_UNUSED != IS_UNUSED) { - - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_UNUSED == IS_UNUSED) { - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_TMP_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = NULL; - if (IS_UNUSED == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = NULL; - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_UNUSED == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = NULL; - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = NULL; - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = NULL; -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_UNUSED != IS_UNUSED) { - - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_UNUSED == IS_UNUSED) { - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = NULL; - if (IS_UNUSED == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = NULL; - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_UNUSED == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = NULL; - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = NULL; - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = NULL; -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_UNUSED != IS_UNUSED) { - - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_UNUSED == IS_UNUSED) { - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CV == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CV == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = NULL; - if (IS_UNUSED == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = NULL; - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_UNUSED == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_UNUSED == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = NULL; - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = NULL; - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = NULL; -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_UNUSED != IS_UNUSED) { - - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_VERIFY_RETURN_TYPE_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - SAVE_OPLINE(); - if (IS_CV == IS_UNUSED) { - zend_verify_missing_return_type(EX(func), CACHE_ADDR(opline->op2.num)); - } else { -/* prevents "undefined variable opline" errors */ -#if 0 || (IS_CV != IS_UNUSED) - zval *retval_ref, *retval_ptr; - - zend_arg_info *ret_info = EX(func)->common.arg_info - 1; - - retval_ref = retval_ptr = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - - if (IS_CV == IS_CONST) { - ZVAL_COPY(EX_VAR(opline->result.var), retval_ptr); - retval_ref = retval_ptr = EX_VAR(opline->result.var); - } else if (IS_CV == IS_VAR) { - if (UNEXPECTED(Z_TYPE_P(retval_ptr) == IS_INDIRECT)) { - retval_ptr = Z_INDIRECT_P(retval_ptr); - } - ZVAL_DEREF(retval_ptr); - } else if (IS_CV == IS_CV) { - ZVAL_DEREF(retval_ptr); - } - - if (UNEXPECTED(!ZEND_TYPE_IS_CLASS(ret_info->type) - && ZEND_TYPE_CODE(ret_info->type) != IS_CALLABLE - && ZEND_TYPE_CODE(ret_info->type) != IS_ITERABLE - && !ZEND_SAME_FAKE_TYPE(ZEND_TYPE_CODE(ret_info->type), Z_TYPE_P(retval_ptr)) - && !(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE) - && retval_ref != retval_ptr) - ) { - /* A cast might happen - unwrap the reference if this is a by-value return */ - if (Z_REFCOUNT_P(retval_ref) == 1) { - ZVAL_UNREF(retval_ref); - } else { - Z_DELREF_P(retval_ref); - ZVAL_COPY(retval_ref, retval_ptr); - } - retval_ptr = retval_ref; - } - zend_verify_return_type(EX(func), retval_ptr, CACHE_ADDR(opline->op2.num)); -#endif - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_CV == IS_VAR || IS_CV == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = _get_zval_ptr_cv_BP_VAR_W(opline->op1.var EXECUTE_DATA_CC); - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - - } else { - expr_ptr = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - if (IS_CV == IS_TMP_VAR) { - /* pass */ - } else if (IS_CV == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_CV == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_CV == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if (IS_UNUSED != IS_UNUSED) { - - zval *offset = NULL; - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_UNUSED != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if (IS_UNUSED == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_CV != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_CV_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *var = EX_VAR(opline->op1.var); - - if (Z_REFCOUNTED_P(var)) { - zend_refcounted *garbage = Z_COUNTED_P(var); - - ZVAL_UNDEF(var); - SAVE_OPLINE(); - if (!GC_DELREF(garbage)) { - rc_dtor_func(garbage); - } else { - gc_check_possible_root(garbage); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZVAL_UNDEF(var); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_VAR_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *varname; - zend_string *name, *tmp_name; - HashTable *target_symbol_table; - - - SAVE_OPLINE(); - - varname = EX_VAR(opline->op1.var); - - if (IS_CV == IS_CONST) { - name = Z_STR_P(varname); - } else if (EXPECTED(Z_TYPE_P(varname) == IS_STRING)) { - name = Z_STR_P(varname); - tmp_name = NULL; - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(varname) == IS_UNDEF)) { - varname = ZVAL_UNDEFINED_OP1(); - } - name = zval_try_get_tmp_string(varname, &tmp_name); - if (UNEXPECTED(!name)) { - - HANDLE_EXCEPTION(); - } - } - - target_symbol_table = zend_get_target_symbol_table(opline->extended_value EXECUTE_DATA_CC); - zend_hash_del_ind(target_symbol_table, name); - - if (IS_CV != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_SET_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - - value = EX_VAR(opline->op1.var); - if (!(0)) { - if (Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL)) { - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else { - int result; - - SAVE_OPLINE(); - result = !i_zend_is_true(value); - if (UNEXPECTED(EG(exception))) { - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_VM_HOT ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_EMPTY_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - - value = EX_VAR(opline->op1.var); - if (!(1)) { - if (Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL)) { - ZEND_VM_SMART_BRANCH_TRUE(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { - ZEND_VM_SMART_BRANCH_FALSE(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else { - int result; - - SAVE_OPLINE(); - result = !i_zend_is_true(value); - if (UNEXPECTED(EG(exception))) { - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *value; - int result; - - zval *varname; - zend_string *name, *tmp_name; - HashTable *target_symbol_table; - - SAVE_OPLINE(); - varname = _get_zval_ptr_cv_BP_VAR_IS(opline->op1.var EXECUTE_DATA_CC); - if (IS_CV == IS_CONST) { - name = Z_STR_P(varname); - } else { - name = zval_get_tmp_string(varname, &tmp_name); - } - - target_symbol_table = zend_get_target_symbol_table(opline->extended_value EXECUTE_DATA_CC); - value = zend_hash_find_ex(target_symbol_table, name, IS_CV == IS_CONST); - - if (IS_CV != IS_CONST) { - zend_tmp_string_release(tmp_name); - } - - if (!value) { - result = (opline->extended_value & ZEND_ISEMPTY); - } else { - if (Z_TYPE_P(value) == IS_INDIRECT) { - value = Z_INDIRECT_P(value); - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - if (Z_ISREF_P(value)) { - value = Z_REFVAL_P(value); - } - result = Z_TYPE_P(value) > IS_NULL; - } else { - result = !i_zend_is_true(value); - } - } - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CLASS_FETCH|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INSTANCEOF_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *expr; - zend_bool result; - - SAVE_OPLINE(); - expr = EX_VAR(opline->op1.var); - -try_instanceof: - if (Z_TYPE_P(expr) == IS_OBJECT) { - zend_class_entry *ce; - - if (IS_UNUSED == IS_CONST) { - ce = CACHED_PTR(opline->extended_value); - if (UNEXPECTED(ce == NULL)) { - ce = zend_fetch_class_by_name(Z_STR_P(RT_CONSTANT(opline, opline->op2)), Z_STR_P(RT_CONSTANT(opline, opline->op2) + 1), ZEND_FETCH_CLASS_NO_AUTOLOAD); - if (EXPECTED(ce)) { - CACHE_PTR(opline->extended_value, ce); - } - } - } else if (IS_UNUSED == IS_UNUSED) { - ce = zend_fetch_class(NULL, opline->op2.num); - if (UNEXPECTED(ce == NULL)) { - ZEND_ASSERT(EG(exception)); - - ZVAL_UNDEF(EX_VAR(opline->result.var)); - HANDLE_EXCEPTION(); - } - } else { - ce = Z_CE_P(EX_VAR(opline->op2.var)); - } - result = ce && instanceof_function(Z_OBJCE_P(expr), ce); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_TYPE_P(expr) == IS_REFERENCE) { - expr = Z_REFVAL_P(expr); - goto try_instanceof; - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(expr) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - result = 0; - } - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_CV != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_CV & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = _get_zval_ptr_cv_BP_VAR_W(opline->op1.var EXECUTE_DATA_CC); - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_CV == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_CV == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_CV == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CV == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_UNUSED != IS_UNUSED) { - - zval *key = NULL; - - /* Consts, temporary variables and references need copying */ - if (IS_UNUSED == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_UNUSED == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_UNUSED & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_UNUSED == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BIND_STATIC_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - HashTable *ht; - zval *value; - zval *variable_ptr; - - variable_ptr = EX_VAR(opline->op1.var); - i_zval_ptr_dtor(variable_ptr); - - ht = ZEND_MAP_PTR_GET(EX(func)->op_array.static_variables_ptr); - if (!ht) { - ZEND_ASSERT(EX(func)->op_array.fn_flags & (ZEND_ACC_IMMUTABLE|ZEND_ACC_PRELOADED)); - ht = zend_array_dup(EX(func)->op_array.static_variables); - ZEND_MAP_PTR_SET(EX(func)->op_array.static_variables_ptr, ht); - } else if (GC_REFCOUNT(ht) > 1) { - if (!(GC_FLAGS(ht) & IS_ARRAY_IMMUTABLE)) { - GC_DELREF(ht); - } - ht = zend_array_dup(ht); - ZEND_MAP_PTR_SET(EX(func)->op_array.static_variables_ptr, ht); - } - - value = (zval*)((char*)ht->arData + (opline->extended_value & ~(ZEND_BIND_REF|ZEND_BIND_IMPLICIT))); - - if (opline->extended_value & ZEND_BIND_REF) { - if (Z_TYPE_P(value) == IS_CONSTANT_AST) { - SAVE_OPLINE(); - if (UNEXPECTED(zval_update_constant_ex(value, EX(func)->op_array.scope) != SUCCESS)) { - ZVAL_NULL(variable_ptr); - HANDLE_EXCEPTION(); - } - } - if (UNEXPECTED(!Z_ISREF_P(value))) { - zend_reference *ref = (zend_reference*)emalloc(sizeof(zend_reference)); - GC_SET_REFCOUNT(ref, 2); - GC_TYPE_INFO(ref) = IS_REFERENCE; - ZVAL_COPY_VALUE(&ref->val, value); - ref->sources.ptr = NULL; - Z_REF_P(value) = ref; - Z_TYPE_INFO_P(value) = IS_REFERENCE_EX; - ZVAL_REF(variable_ptr, ref); - } else { - Z_ADDREF_P(value); - ZVAL_REF(variable_ptr, Z_REF_P(value)); - } - } else { - ZVAL_COPY(variable_ptr, value); - } - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CHECK_VAR_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1 = EX_VAR(opline->op1.var); - - if (UNEXPECTED(Z_TYPE_INFO_P(op1) == IS_UNDEF)) { - SAVE_OPLINE(); - ZVAL_UNDEFINED_OP1(); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_MAKE_REF_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *op1 = EX_VAR(opline->op1.var); - - if (IS_CV == IS_CV) { - if (UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_NEW_EMPTY_REF(op1); - Z_SET_REFCOUNT_P(op1, 2); - ZVAL_NULL(Z_REFVAL_P(op1)); - ZVAL_REF(EX_VAR(opline->result.var), Z_REF_P(op1)); - } else { - if (Z_ISREF_P(op1)) { - Z_ADDREF_P(op1); - } else { - ZVAL_MAKE_REF_EX(op1, 2); - } - ZVAL_REF(EX_VAR(opline->result.var), Z_REF_P(op1)); - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_INDIRECT)) { - op1 = Z_INDIRECT_P(op1); - if (EXPECTED(!Z_ISREF_P(op1))) { - ZVAL_MAKE_REF_EX(op1, 2); - } else { - GC_ADDREF(Z_REF_P(op1)); - } - ZVAL_REF(EX_VAR(opline->result.var), Z_REF_P(op1)); - } else { - ZVAL_COPY_VALUE(EX_VAR(opline->result.var), op1); - } - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_COUNT_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1; - zend_long count; - - SAVE_OPLINE(); - op1 = EX_VAR(opline->op1.var); - while (1) { - if (Z_TYPE_P(op1) == IS_ARRAY) { - count = zend_array_count(Z_ARRVAL_P(op1)); - break; - } else if (Z_TYPE_P(op1) == IS_OBJECT) { - /* first, we check if the handler is defined */ - if (Z_OBJ_HT_P(op1)->count_elements) { - if (SUCCESS == Z_OBJ_HT_P(op1)->count_elements(op1, &count)) { - break; - } - if (UNEXPECTED(EG(exception))) { - count = 0; - break; - } - } - - /* if not and the object implements Countable we call its count() method */ - if (instanceof_function(Z_OBJCE_P(op1), zend_ce_countable)) { - zval retval; - - zend_call_method_with_0_params(op1, NULL, NULL, "count", &retval); - count = zval_get_long(&retval); - zval_ptr_dtor(&retval); - break; - } - - /* If There's no handler and it doesn't implement Countable then add a warning */ - count = 1; - } else if ((IS_CV & (IS_VAR|IS_CV)) != 0 && Z_TYPE_P(op1) == IS_REFERENCE) { - op1 = Z_REFVAL_P(op1); - continue; - } else if (Z_TYPE_P(op1) <= IS_NULL) { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - count = 0; - } else { - count = 1; - } - zend_error(E_WARNING, "%s(): Parameter must be an array or an object that implements Countable", opline->extended_value ? "sizeof" : "count"); - break; - } - - ZVAL_LONG(EX_VAR(opline->result.var), count); - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GET_CLASS_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - if (IS_CV == IS_UNUSED) { - if (UNEXPECTED(!EX(func)->common.scope)) { - SAVE_OPLINE(); - zend_error(E_WARNING, "get_class() called without object from outside a class"); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } else { - ZVAL_STR_COPY(EX_VAR(opline->result.var), EX(func)->common.scope->name); - ZEND_VM_NEXT_OPCODE(); - } - } else { - - zval *op1; - - SAVE_OPLINE(); - op1 = EX_VAR(opline->op1.var); - while (1) { - if (Z_TYPE_P(op1) == IS_OBJECT) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), Z_OBJCE_P(op1)->name); - } else if ((IS_CV & (IS_VAR|IS_CV)) != 0 && Z_TYPE_P(op1) == IS_REFERENCE) { - op1 = Z_REFVAL_P(op1); - continue; - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - zend_error(E_WARNING, "get_class() expects parameter 1 to be object, %s given", zend_get_type_by_const(Z_TYPE_P(op1))); - ZVAL_FALSE(EX_VAR(opline->result.var)); - } - break; - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_GET_TYPE_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1; - zend_string *type; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - type = zend_zval_get_type(op1); - if (EXPECTED(type)) { - ZVAL_INTERNED_STR(EX_VAR(opline->result.var), type); - } else { - ZVAL_STRING(EX_VAR(opline->result.var), "unknown type"); - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_DIV_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - fast_div_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POW_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - pow_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_CONCAT_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - - if ((IS_CV == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - (IS_CV == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if (IS_CV != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CV == IS_CONST || IS_CV == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if (IS_CV != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CV == IS_CONST || IS_CV == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if (IS_CV != IS_CONST && IS_CV != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - if (UNEXPECTED(len > ZSTR_MAX_LEN - ZSTR_LEN(op2_str))) { - zend_error_noreturn(E_ERROR, "Integer overflow in memory allocation"); - } - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } else { - SAVE_OPLINE(); - - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - op1 = ZVAL_UNDEFINED_OP1(); - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - op2 = ZVAL_UNDEFINED_OP2(); - } - concat_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_IDENTICAL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - result = fast_is_identical_function(op1, op2); - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_IDENTICAL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - zend_bool result; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_cv_deref_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - result = fast_is_not_identical_function(op1, op2); - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CV == IS_CONST && IS_CV == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_CV_CV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CV == IS_CONST && IS_CV == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_EQUAL_SPEC_CV_CV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CV == IS_CONST && IS_CV == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) == Z_LVAL_P(op2))) { -is_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_equal_double: - if (d1 == d2) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (result) { - goto is_equal_true; - } else { - goto is_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CV == IS_CONST && IS_CV == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CV == IS_CONST && IS_CV == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - double d1, d2; - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if (1 && IS_CV == IS_CONST && IS_CV == IS_CONST) { - /* pass */ - } else if (EXPECTED(Z_TYPE_P(op1) == IS_LONG)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - if (EXPECTED(Z_LVAL_P(op1) != Z_LVAL_P(op2))) { -is_not_equal_true: - ZEND_VM_SMART_BRANCH_TRUE_JMPNZ(); - ZVAL_TRUE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } else { -is_not_equal_false: - ZEND_VM_SMART_BRANCH_FALSE_JMPNZ(); - ZVAL_FALSE(EX_VAR(opline->result.var)); - ZEND_VM_NEXT_OPCODE(); - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = (double)Z_LVAL_P(op1); - d2 = Z_DVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_DOUBLE)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_DOUBLE)) { - d1 = Z_DVAL_P(op1); - d2 = Z_DVAL_P(op2); -is_not_equal_double: - if (d1 != d2) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } else if (EXPECTED(Z_TYPE_P(op2) == IS_LONG)) { - d1 = Z_DVAL_P(op1); - d2 = (double)Z_LVAL_P(op2); - goto is_not_equal_double; - } - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - int result = zend_fast_equal_strings(Z_STR_P(op1), Z_STR_P(op2)); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op1); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zval_ptr_dtor_str(op2); - } - if (!result) { - goto is_not_equal_true; - } else { - goto is_not_equal_false; - } - } - } - ZEND_VM_TAIL_CALL(zend_is_not_equal_helper_SPEC(op1, op2 ZEND_OPCODE_HANDLER_ARGS_PASSTHRU_CC)); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_SPACESHIP_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - compare_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_BOOL_XOR_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - - SAVE_OPLINE(); - op1 = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - op2 = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - boolean_xor_function(EX_VAR(opline->result.var), op1, op2); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_OP_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *object; - zval *property; - zval *value; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - do { - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_op_object; - } - if (IS_CV == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -assign_op_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CV == IS_CONST) ? CACHE_ADDR((opline+1)->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - zval *orig_zptr = zptr; - zend_reference *ref; - - do { - if (UNEXPECTED(Z_ISREF_P(zptr))) { - ref = Z_REF_P(zptr); - zptr = Z_REFVAL_P(zptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - - if (IS_CV == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), orig_zptr); - } - if (UNEXPECTED(prop_info)) { - /* special case for typed properties */ - zend_binary_assign_op_typed_prop(prop_info, zptr, value OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_binary_op(zptr, zptr, value OPLINE_CC); - } - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), zptr); - } - } - } else { - zend_assign_op_overloaded_property(object, property, cache_slot, value OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - FREE_OP(free_op_data); - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMP|VAR|CV, UNUSED|CONST|TMPVAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_OP_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data1; - zval *var_ptr; - zval *value, *container, *dim; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -assign_dim_op_array: - SEPARATE_ARRAY(container); -assign_dim_op_new_array: - dim = EX_VAR(opline->op2.var); - if (IS_CV == IS_UNUSED) { - var_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(container), &EG(uninitialized_zval)); - if (UNEXPECTED(!var_ptr)) { - zend_cannot_add_element(); - goto assign_dim_op_ret_null; - } - } else { - if (IS_CV == IS_CONST) { - var_ptr = zend_fetch_dimension_address_inner_RW_CONST(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } else { - var_ptr = zend_fetch_dimension_address_inner_RW(Z_ARRVAL_P(container), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(!var_ptr)) { - goto assign_dim_op_ret_null; - } - } - - value = get_op_data_zval_ptr_r((opline+1)->op1_type, (opline+1)->op1, &free_op_data1); - - do { - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_ISREF_P(var_ptr))) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - FREE_OP(free_op_data1); - } else { - if (EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto assign_dim_op_array; - } - } - - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if (IS_CV == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_binary_assign_op_obj_dim(container, dim OPLINE_CC EXECUTE_DATA_CC); - } else if (EXPECTED(Z_TYPE_P(container) <= IS_FALSE)) { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - ZVAL_ARR(container, zend_new_array(8)); - goto assign_dim_op_new_array; - } else { - zend_binary_assign_op_dim_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); -assign_dim_op_ret_null: - FREE_UNFETCHED_OP((opline+1)->op1_type, (opline+1)->op1.var); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - - - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OP_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *var_ptr; - zval *value; - - SAVE_OPLINE(); - value = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - var_ptr = _get_zval_ptr_cv_BP_VAR_RW(opline->op1.var EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(var_ptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - do { - if (UNEXPECTED(Z_TYPE_P(var_ptr) == IS_REFERENCE)) { - zend_reference *ref = Z_REF_P(var_ptr); - var_ptr = Z_REFVAL_P(var_ptr); - if (UNEXPECTED(ZEND_REF_HAS_TYPE_SOURCES(ref))) { - zend_binary_assign_op_typed_ref(ref, value OPLINE_CC EXECUTE_DATA_CC); - break; - } - } - zend_binary_op(var_ptr, var_ptr, value OPLINE_CC); - } while (0); - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), var_ptr); - } - } - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_PRE_INC_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - do { - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto pre_incdec_object; - } - if (IS_CV == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -pre_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - if (IS_CV == IS_CONST) { - prop_info = (zend_property_info *) CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - zend_pre_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_pre_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_POST_INC_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object; - zval *property; - zval *zptr; - void **cache_slot; - zend_property_info *prop_info; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - do { - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto post_incdec_object; - } - if (IS_CV == IS_CV - && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - break; - } - } - -post_incdec_object: - /* here we are sure we are dealing with an object */ - cache_slot = (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL; - if (EXPECTED((zptr = Z_OBJ_HT_P(object)->get_property_ptr_ptr(object, property, BP_VAR_RW, cache_slot)) != NULL)) { - if (UNEXPECTED(Z_ISERROR_P(zptr))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } else { - if (IS_CV == IS_CONST) { - prop_info = (zend_property_info*)CACHED_PTR_EX(cache_slot + 2); - } else { - prop_info = zend_object_fetch_property_type_info(Z_OBJ_P(object), zptr); - } - - zend_post_incdec_property_zval(zptr, prop_info OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_post_incdec_overloaded_property(object, property, cache_slot OPLINE_CC EXECUTE_DATA_CC); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_R_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container, *dim, *value; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - dim = EX_VAR(opline->op2.var); - if (IS_CV != IS_CONST) { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { -fetch_dim_r_array: - value = zend_fetch_dimension_address_inner(Z_ARRVAL_P(container), dim, IS_CV, BP_VAR_R EXECUTE_DATA_CC); - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), value); - } else if (EXPECTED(Z_TYPE_P(container) == IS_REFERENCE)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto fetch_dim_r_array; - } else { - goto fetch_dim_r_slow; - } - } else { -fetch_dim_r_slow: - if (IS_CV == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_fetch_dimension_address_read_R_slow(container, dim OPLINE_CC EXECUTE_DATA_CC); - } - } else { - zend_fetch_dimension_address_read_R(container, dim, IS_CV OPLINE_CC EXECUTE_DATA_CC); - } - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_W_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_W(container, EX_VAR(opline->op2.var), IS_CV OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_RW_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_RW(container, EX_VAR(opline->op2.var), IS_CV OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_IS_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_read_IS(container, EX_VAR(opline->op2.var), IS_CV OPLINE_CC EXECUTE_DATA_CC); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - if ((IS_CV & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_W_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - if (IS_CV == IS_UNUSED) { - ZEND_VM_TAIL_CALL(zend_use_undef_in_read_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_DIM_R_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_DIM_UNSET_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - zend_fetch_dimension_address_UNSET(container, EX_VAR(opline->op2.var), IS_CV OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - zval *result = EX_VAR(opline->result.var); - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_R_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = EX_VAR(opline->op2.var); - - if (IS_CV == IS_CONST || - (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - zend_wrong_property_read(offset); - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_r_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CV == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_REF /* FUNC_ARG fetch may contain it */); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_INFO_P(retval) != IS_UNDEF)) { - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { -fetch_obj_r_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_r_copy; - } else { - goto fetch_obj_r_fast_copy; - } - } - } - } - } else if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(offset) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_R, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_r_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_r_finish: - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_W_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *result; - - SAVE_OPLINE(); - - container = EX_VAR(opline->op1.var); - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address( - result, container, IS_CV, property, IS_CV, - ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_FETCH_OBJ_FLAGS) : NULL), - BP_VAR_W, opline->extended_value & ZEND_FETCH_OBJ_FLAGS, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_RW_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *property, *container, *result; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_CV, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_RW, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_IS_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - - zval *offset; - void **cache_slot = NULL; - - SAVE_OPLINE(); - container = _get_zval_ptr_cv_BP_VAR_IS(opline->op1.var EXECUTE_DATA_CC); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - if (IS_CV == IS_CONST || - (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - do { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - break; - } - } - ZVAL_NULL(EX_VAR(opline->result.var)); - goto fetch_obj_is_finish; - } while (0); - } - - /* here we are sure we are dealing with an object */ - do { - zend_object *zobj = Z_OBJ_P(container); - zval *retval; - - if (IS_CV == IS_CONST) { - cache_slot = CACHE_ADDR(opline->extended_value); - - if (EXPECTED(zobj->ce == CACHED_PTR_EX(cache_slot))) { - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - retval = OBJ_PROP(zobj, prop_offset); - if (EXPECTED(Z_TYPE_P(retval) != IS_UNDEF)) { - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { -fetch_obj_is_fast_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - ZEND_VM_NEXT_OPCODE(); - } - } - } else if (EXPECTED(zobj->properties != NULL)) { - if (!IS_UNKNOWN_DYNAMIC_PROPERTY_OFFSET(prop_offset)) { - uintptr_t idx = ZEND_DECODE_DYN_PROP_OFFSET(prop_offset); - - if (EXPECTED(idx < zobj->properties->nNumUsed * sizeof(Bucket))) { - Bucket *p = (Bucket*)((char*)zobj->properties->arData + idx); - - if (EXPECTED(Z_TYPE(p->val) != IS_UNDEF) && - (EXPECTED(p->key == Z_STR_P(offset)) || - (EXPECTED(p->h == ZSTR_H(Z_STR_P(offset))) && - EXPECTED(p->key != NULL) && - EXPECTED(zend_string_equal_content(p->key, Z_STR_P(offset)))))) { - retval = &p->val; - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_DYNAMIC_PROPERTY_OFFSET); - } - retval = zend_hash_find_ex(zobj->properties, Z_STR_P(offset), 1); - if (EXPECTED(retval)) { - uintptr_t idx = (char*)retval - (char*)zobj->properties->arData; - CACHE_PTR_EX(cache_slot + 1, (void*)ZEND_ENCODE_DYN_PROP_OFFSET(idx)); - if (0 || (IS_CV & (IS_TMP_VAR|IS_VAR)) != 0) { - goto fetch_obj_is_copy; - } else { - goto fetch_obj_is_fast_copy; - } - } - } - } - } - - retval = zobj->handlers->read_property(container, offset, BP_VAR_IS, cache_slot, EX_VAR(opline->result.var)); - - if (retval != EX_VAR(opline->result.var)) { -fetch_obj_is_copy: - ZVAL_COPY_DEREF(EX_VAR(opline->result.var), retval); - } else if (UNEXPECTED(Z_ISREF_P(retval))) { - zend_unwrap_reference(retval); - } - } while (0); - -fetch_obj_is_finish: - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ -#if 0 - USE_OPLINE -#endif - - if (UNEXPECTED(ZEND_CALL_INFO(EX(call)) & ZEND_CALL_SEND_ARG_BY_REF)) { - /* Behave like FETCH_OBJ_W */ - if ((IS_CV & (IS_CONST|IS_TMP_VAR))) { - ZEND_VM_TAIL_CALL(zend_use_tmp_in_write_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_W_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZEND_VM_TAIL_CALL(ZEND_FETCH_OBJ_R_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FETCH_OBJ_UNSET_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op1; - zval *container, *property, *result; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - result = EX_VAR(opline->result.var); - zend_fetch_property_address(result, container, IS_CV, property, IS_CV, ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL), BP_VAR_UNSET, 0, 1 OPLINE_CC EXECUTE_DATA_CC); - - if (IS_CV == IS_VAR) { - FREE_VAR_PTR_AND_EXTRACT_RESULT_IF_NECESSARY(free_op1, result); - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CV == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CONST, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CONST != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CONST == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CONST == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CV == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_TMP_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CV == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_VAR, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_VAR != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_VAR == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_VAR == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - zval_ptr_dtor_nogc(free_op_data); -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object, *property, *value, tmp; - - SAVE_OPLINE(); - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if (Z_ISREF_P(object) && Z_TYPE_P(Z_REFVAL_P(object)) == IS_OBJECT) { - object = Z_REFVAL_P(object); - goto assign_object; - } - object = make_real_object(object, property OPLINE_CC EXECUTE_DATA_CC); - if (UNEXPECTED(!object)) { - value = &EG(uninitialized_zval); - goto free_and_exit_assign_obj; - } - } - -assign_object: - if (IS_CV == IS_CONST && - EXPECTED(Z_OBJCE_P(object) == CACHED_PTR(opline->extended_value))) { - void **cache_slot = CACHE_ADDR(opline->extended_value); - uintptr_t prop_offset = (uintptr_t)CACHED_PTR_EX(cache_slot + 1); - zend_object *zobj = Z_OBJ_P(object); - zval *property_val; - - if (EXPECTED(IS_VALID_PROPERTY_OFFSET(prop_offset))) { - property_val = OBJ_PROP(zobj, prop_offset); - if (Z_TYPE_P(property_val) != IS_UNDEF) { - zend_property_info *prop_info = (zend_property_info*) CACHED_PTR_EX(cache_slot + 2); - - if (UNEXPECTED(prop_info != NULL)) { - value = zend_assign_to_typed_prop(prop_info, property_val, value EXECUTE_DATA_CC); - goto free_and_exit_assign_obj; - } else { -fast_assign_obj: - value = zend_assign_to_variable(property_val, value, IS_CV, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } else { - if (EXPECTED(zobj->properties != NULL)) { - if (UNEXPECTED(GC_REFCOUNT(zobj->properties) > 1)) { - if (EXPECTED(!(GC_FLAGS(zobj->properties) & IS_ARRAY_IMMUTABLE))) { - GC_DELREF(zobj->properties); - } - zobj->properties = zend_array_dup(zobj->properties); - } - property_val = zend_hash_find_ex(zobj->properties, Z_STR_P(property), 1); - if (property_val) { - goto fast_assign_obj; - } - } - - if (!zobj->ce->__set) { - - if (EXPECTED(zobj->properties == NULL)) { - rebuild_object_properties(zobj); - } - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } else if (IS_CV != IS_TMP_VAR) { - if (Z_ISREF_P(value)) { - if (IS_CV == IS_VAR) { - zend_reference *ref = Z_REF_P(value); - if (GC_DELREF(ref) == 0) { - ZVAL_COPY_VALUE(&tmp, Z_REFVAL_P(value)); - efree_size(ref, sizeof(zend_reference)); - value = &tmp; - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else { - value = Z_REFVAL_P(value); - Z_TRY_ADDREF_P(value); - } - } else if (IS_CV == IS_CV) { - Z_TRY_ADDREF_P(value); - } - } - zend_hash_add_new(zobj->properties, Z_STR_P(property), value); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - goto exit_assign_obj; - } - } - } - - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - - value = Z_OBJ_HT_P(object)->write_property(object, property, value, (IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL); - -free_and_exit_assign_obj: - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - -exit_assign_obj: - - - /* assign_obj has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = RT_CONSTANT((opline+1), (opline+1)->op1); - SEPARATE_ARRAY(object_ptr); - if (IS_CV == IS_UNUSED) { - if (IS_CONST == IS_CV || IS_CONST == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CONST == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CONST == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = EX_VAR(opline->op2.var); - if (IS_CV == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CONST, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - - if (IS_CV == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CV == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = RT_CONSTANT((opline+1), (opline+1)->op1); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CV != IS_UNUSED) { - - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_CV == IS_UNUSED) { - if (IS_TMP_VAR == IS_CV || IS_TMP_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_TMP_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_TMP_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = EX_VAR(opline->op2.var); - if (IS_CV == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_TMP_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CV == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CV == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_tmp((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CV != IS_UNUSED) { - - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_CV == IS_UNUSED) { - if (IS_VAR == IS_CV || IS_VAR == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_VAR == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_VAR == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - zval_ptr_dtor_nogc(free_op_data); - } - } else if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = EX_VAR(opline->op2.var); - if (IS_CV == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_VAR, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (IS_CV == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - zval_ptr_dtor_nogc(free_op_data); - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CV == IS_UNUSED) { - zend_use_new_element_for_string(); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_var_deref((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(free_op_data); - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); -assign_dim_error: - zval_ptr_dtor_nogc(EX_VAR((opline+1)->op1.var)); - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CV != IS_UNUSED) { - - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *object_ptr, *orig_object_ptr; - zend_free_op free_op_data; - zval *value; - zval *variable_ptr; - zval *dim; - - SAVE_OPLINE(); - orig_object_ptr = object_ptr = EX_VAR(opline->op1.var); - - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { -try_assign_dim_array: - value = _get_zval_ptr_cv_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - SEPARATE_ARRAY(object_ptr); - if (IS_CV == IS_UNUSED) { - if (IS_CV == IS_CV || IS_CV == IS_VAR) { - ZVAL_DEREF(value); - } - variable_ptr = zend_hash_next_index_insert(Z_ARRVAL_P(object_ptr), value); - if (UNEXPECTED(variable_ptr == NULL)) { - zend_cannot_add_element(); - goto assign_dim_error; - } else if (IS_CV == IS_CV) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - } else if (IS_CV == IS_VAR) { - if (value != free_op_data) { - if (Z_REFCOUNTED_P(value)) { - Z_ADDREF_P(value); - } - - } - } else if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(value))) { - Z_ADDREF_P(value); - } - } - } else { - dim = EX_VAR(opline->op2.var); - if (IS_CV == IS_CONST) { - variable_ptr = zend_fetch_dimension_address_inner_W_CONST(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } else { - variable_ptr = zend_fetch_dimension_address_inner_W(Z_ARRVAL_P(object_ptr), dim EXECUTE_DATA_CC); - } - if (UNEXPECTED(variable_ptr == NULL)) { - goto assign_dim_error; - } - value = zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - } - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - } else { - if (EXPECTED(Z_ISREF_P(object_ptr))) { - object_ptr = Z_REFVAL_P(object_ptr); - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_ARRAY)) { - goto try_assign_dim_array; - } - } - if (EXPECTED(Z_TYPE_P(object_ptr) == IS_OBJECT)) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - - if (IS_CV == IS_CONST && Z_EXTRA_P(dim) == ZEND_EXTRA_VALUE) { - dim++; - } - zend_assign_to_object_dim(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } else if (EXPECTED(Z_TYPE_P(object_ptr) == IS_STRING)) { - if (IS_CV == IS_UNUSED) { - zend_use_new_element_for_string(); - - UNDEF_RESULT(); - } else { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - value = _get_zval_ptr_cv_deref_BP_VAR_R((opline+1)->op1.var EXECUTE_DATA_CC); - zend_assign_to_string_offset(object_ptr, dim, value OPLINE_CC EXECUTE_DATA_CC); - - } - } else if (EXPECTED(Z_TYPE_P(object_ptr) <= IS_FALSE)) { - if (Z_ISREF_P(orig_object_ptr) - && ZEND_REF_HAS_TYPE_SOURCES(Z_REF_P(orig_object_ptr)) - && !zend_verify_ref_array_assignable(Z_REF_P(orig_object_ptr))) { - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - UNDEF_RESULT(); - } else { - ZVAL_ARR(object_ptr, zend_new_array(8)); - goto try_assign_dim_array; - } - } else { - if (IS_CV != IS_VAR || EXPECTED(!Z_ISERROR_P(object_ptr))) { - zend_use_scalar_as_array(); - } - dim = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); -assign_dim_error: - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } - } - if (IS_CV != IS_UNUSED) { - - } - - /* assign_dim has two opcodes! */ - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_CV_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - variable_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - - if (UNEXPECTED(0)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(0)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_SPEC_CV_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *value; - zval *variable_ptr; - - SAVE_OPLINE(); - value = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - variable_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - - if (UNEXPECTED(1)) { - ZVAL_NULL(EX_VAR(opline->result.var)); - } - } else { - value = zend_assign_to_variable(variable_ptr, value, IS_CV, EX_USES_STRICT_TYPES()); - if (UNEXPECTED(1)) { - ZVAL_COPY(EX_VAR(opline->result.var), value); - } - - /* zend_assign_to_variable() always takes care of op2, never free it! */ - } - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_REF_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *variable_ptr; - zval *value_ptr; - - SAVE_OPLINE(); - value_ptr = _get_zval_ptr_cv_BP_VAR_W(opline->op2.var EXECUTE_DATA_CC); - variable_ptr = EX_VAR(opline->op1.var); - - if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(variable_ptr))) { - variable_ptr = &EG(uninitialized_zval); - } else if (IS_CV == IS_VAR && - UNEXPECTED(Z_TYPE_P(EX_VAR(opline->op1.var)) != IS_INDIRECT)) { - - zend_throw_error(NULL, "Cannot assign by reference to an array dimension of an object"); - variable_ptr = &EG(uninitialized_zval); - } else if (IS_CV == IS_VAR && UNEXPECTED(Z_ISERROR_P(value_ptr))) { - variable_ptr = &EG(uninitialized_zval); - } else if (IS_CV == IS_VAR && - opline->extended_value == ZEND_RETURNS_FUNCTION && - UNEXPECTED(!Z_ISREF_P(value_ptr))) { - - variable_ptr = zend_wrong_assign_to_variable_reference( - variable_ptr, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_variable_reference(variable_ptr, value_ptr); - } - - if (UNEXPECTED(RETURN_VALUE_USED(opline))) { - ZVAL_COPY(EX_VAR(opline->result.var), variable_ptr); - } - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zend_free_op free_op_data; - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - value_ptr = _get_zval_ptr_ptr_var((opline+1)->op1.var, &free_op_data EXECUTE_DATA_CC); - - if (1) { - if (IS_CV == IS_UNUSED) { - if (IS_CV == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if (IS_CV == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_CV, property, IS_CV, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - - if (UNEXPECTED(free_op_data)) {zval_ptr_dtor_nogc(free_op_data);}; - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *property, *container, *value_ptr; - - SAVE_OPLINE(); - - container = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - property = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - value_ptr = _get_zval_ptr_cv_BP_VAR_W((opline+1)->op1.var EXECUTE_DATA_CC); - - if (1) { - if (IS_CV == IS_UNUSED) { - if (IS_CV == IS_CONST) { - zend_assign_to_property_reference_this_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_this_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } else { - if (IS_CV == IS_CONST) { - zend_assign_to_property_reference_var_const(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } else { - zend_assign_to_property_reference_var_var(container, property, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - } - } else { - zend_assign_to_property_reference(container, IS_CV, property, IS_CV, value_ptr OPLINE_CC EXECUTE_DATA_CC); - } - - - - ZEND_VM_NEXT_OPCODE_EX(1, 2); -} - -/* No specialization for op_types (CONST|TMPVAR|CV, UNUSED|CONST|VAR) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_FAST_CONCAT_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *op1, *op2; - zend_string *op1_str, *op2_str, *str; - - - op1 = EX_VAR(opline->op1.var); - op2 = EX_VAR(opline->op2.var); - if ((IS_CV == IS_CONST || EXPECTED(Z_TYPE_P(op1) == IS_STRING)) && - (IS_CV == IS_CONST || EXPECTED(Z_TYPE_P(op2) == IS_STRING))) { - zend_string *op1_str = Z_STR_P(op1); - zend_string *op2_str = Z_STR_P(op2); - zend_string *str; - - if (IS_CV != IS_CONST && UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CV == IS_CONST || IS_CV == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op2_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - } else if (IS_CV != IS_CONST && UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CV == IS_CONST || IS_CV == IS_CV) { - ZVAL_STR_COPY(EX_VAR(opline->result.var), op1_str); - } else { - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else if (IS_CV != IS_CONST && IS_CV != IS_CV && - !ZSTR_IS_INTERNED(op1_str) && GC_REFCOUNT(op1_str) == 1) { - size_t len = ZSTR_LEN(op1_str); - - str = zend_string_extend(op1_str, len + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str) + len, ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } else { - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CV & (IS_TMP_VAR|IS_VAR)) { - zend_string_release_ex(op2_str, 0); - } - } - ZEND_VM_NEXT_OPCODE(); - } - - SAVE_OPLINE(); - if (IS_CV == IS_CONST) { - op1_str = Z_STR_P(op1); - } else if (EXPECTED(Z_TYPE_P(op1) == IS_STRING)) { - op1_str = zend_string_copy(Z_STR_P(op1)); - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op1) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - op1_str = zval_get_string_func(op1); - } - if (IS_CV == IS_CONST) { - op2_str = Z_STR_P(op2); - } else if (EXPECTED(Z_TYPE_P(op2) == IS_STRING)) { - op2_str = zend_string_copy(Z_STR_P(op2)); - } else { - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(op2) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - } - op2_str = zval_get_string_func(op2); - } - do { - if (IS_CV != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op1_str) == 0)) { - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op2))) { - GC_ADDREF(op2_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op2_str); - zend_string_release_ex(op1_str, 0); - break; - } - } - if (IS_CV != IS_CONST) { - if (UNEXPECTED(ZSTR_LEN(op2_str) == 0)) { - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_REFCOUNTED_P(op1))) { - GC_ADDREF(op1_str); - } - } - ZVAL_STR(EX_VAR(opline->result.var), op1_str); - zend_string_release_ex(op2_str, 0); - break; - } - } - str = zend_string_alloc(ZSTR_LEN(op1_str) + ZSTR_LEN(op2_str), 0); - memcpy(ZSTR_VAL(str), ZSTR_VAL(op1_str), ZSTR_LEN(op1_str)); - memcpy(ZSTR_VAL(str) + ZSTR_LEN(op1_str), ZSTR_VAL(op2_str), ZSTR_LEN(op2_str)+1); - ZVAL_NEW_STR(EX_VAR(opline->result.var), str); - if (IS_CV != IS_CONST) { - zend_string_release_ex(op1_str, 0); - } - if (IS_CV != IS_CONST) { - zend_string_release_ex(op2_str, 0); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_METHOD_CALL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - zval *function_name; - zend_free_op free_op1; - zval *object; - zend_function *fbc; - zend_class_entry *called_scope; - zend_object *obj; - zend_execute_data *call; - uint32_t call_info; - - SAVE_OPLINE(); - - object = EX_VAR(opline->op1.var); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - if (IS_CV != IS_CONST) { - function_name = EX_VAR(opline->op2.var); - } - - if (IS_CV != IS_CONST && - UNEXPECTED(Z_TYPE_P(function_name) != IS_STRING)) { - do { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(function_name)) { - function_name = Z_REFVAL_P(function_name); - if (EXPECTED(Z_TYPE_P(function_name) == IS_STRING)) { - break; - } - } else if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(function_name) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP2(); - if (UNEXPECTED(EG(exception) != NULL)) { - - HANDLE_EXCEPTION(); - } - } - zend_throw_error(NULL, "Method name must be a string"); - - - HANDLE_EXCEPTION(); - } while (0); - } - - if (IS_CV != IS_UNUSED) { - do { - if (IS_CV == IS_CONST || UNEXPECTED(Z_TYPE_P(object) != IS_OBJECT)) { - if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(object))) { - object = Z_REFVAL_P(object); - if (EXPECTED(Z_TYPE_P(object) == IS_OBJECT)) { - break; - } - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(object) == IS_UNDEF)) { - object = ZVAL_UNDEFINED_OP1(); - if (UNEXPECTED(EG(exception) != NULL)) { - if (IS_CV != IS_CONST) { - - } - HANDLE_EXCEPTION(); - } - } - if (IS_CV == IS_CONST) { - function_name = EX_VAR(opline->op2.var); - } - zend_invalid_method_call(object, function_name); - - - HANDLE_EXCEPTION(); - } - } while (0); - } - - obj = Z_OBJ_P(object); - called_scope = obj->ce; - - if (IS_CV == IS_CONST && - EXPECTED(CACHED_PTR(opline->result.num) == called_scope)) { - fbc = CACHED_PTR(opline->result.num + sizeof(void*)); - } else { - zend_object *orig_obj = obj; - - if (IS_CV == IS_CONST) { - function_name = EX_VAR(opline->op2.var); - } - - /* First, locate the function. */ - fbc = obj->handlers->get_method(&obj, Z_STR_P(function_name), ((IS_CV == IS_CONST) ? (RT_CONSTANT(opline, opline->op2) + 1) : NULL)); - if (UNEXPECTED(fbc == NULL)) { - if (EXPECTED(!EG(exception))) { - zend_undefined_method(obj->ce, Z_STR_P(function_name)); - } - - - HANDLE_EXCEPTION(); - } - if (IS_CV == IS_CONST && - EXPECTED(fbc->type <= ZEND_USER_FUNCTION) && - EXPECTED(!(fbc->common.fn_flags & (ZEND_ACC_CALL_VIA_TRAMPOLINE|ZEND_ACC_NEVER_CACHE))) && - EXPECTED(obj == orig_obj)) { - CACHE_POLYMORPHIC_PTR(opline->result.num, called_scope, fbc); - } - if ((IS_CV & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(obj != orig_obj)) { - /* Reset "object" to trigger reference counting */ - object = NULL; - } - if (EXPECTED(fbc->type == ZEND_USER_FUNCTION) && UNEXPECTED(!RUN_TIME_CACHE(&fbc->op_array))) { - init_func_run_time_cache(&fbc->op_array); - } - } - - if (IS_CV != IS_CONST) { - - } - - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS; - if (UNEXPECTED((fbc->common.fn_flags & ZEND_ACC_STATIC) != 0)) { - - if ((IS_CV & (IS_VAR|IS_TMP_VAR)) && UNEXPECTED(EG(exception))) { - HANDLE_EXCEPTION(); - } - /* call static method */ - obj = (zend_object*)called_scope; - call_info = ZEND_CALL_NESTED_FUNCTION; - } else if (IS_CV & (IS_VAR|IS_TMP_VAR|IS_CV)) { - if (IS_CV == IS_CV) { - GC_ADDREF(obj); /* For $this pointer */ - } else if (free_op1 != object) { - GC_ADDREF(obj); /* For $this pointer */ - - } - /* CV may be changed indirectly (e.g. when it's a reference) */ - call_info = ZEND_CALL_NESTED_FUNCTION | ZEND_CALL_HAS_THIS | ZEND_CALL_RELEASE_THIS; - } - - call = zend_vm_stack_push_call_frame(call_info, - fbc, opline->extended_value, obj); - call->prev_execute_data = EX(call); - EX(call) = call; - - ZEND_VM_NEXT_OPCODE(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *expr_ptr, new_expr; - - SAVE_OPLINE(); - if ((IS_CV == IS_VAR || IS_CV == IS_CV) && - UNEXPECTED(opline->extended_value & ZEND_ARRAY_ELEMENT_REF)) { - expr_ptr = _get_zval_ptr_cv_BP_VAR_W(opline->op1.var EXECUTE_DATA_CC); - if (Z_ISREF_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } else { - ZVAL_MAKE_REF_EX(expr_ptr, 2); - } - - } else { - expr_ptr = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - if (IS_CV == IS_TMP_VAR) { - /* pass */ - } else if (IS_CV == IS_CONST) { - Z_TRY_ADDREF_P(expr_ptr); - } else if (IS_CV == IS_CV) { - ZVAL_DEREF(expr_ptr); - Z_TRY_ADDREF_P(expr_ptr); - } else /* if (IS_CV == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(expr_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(expr_ptr); - - expr_ptr = Z_REFVAL_P(expr_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - ZVAL_COPY_VALUE(&new_expr, expr_ptr); - expr_ptr = &new_expr; - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(expr_ptr)) { - Z_ADDREF_P(expr_ptr); - } - } - } - } - - if (IS_CV != IS_UNUSED) { - - zval *offset = EX_VAR(opline->op2.var); - zend_string *str; - zend_ulong hval; - -add_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CV != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index; - } - } -str_index: - zend_hash_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), str, expr_ptr); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index: - zend_hash_index_update(Z_ARRVAL_P(EX_VAR(opline->result.var)), hval, expr_ptr); - } else if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto add_again; - } else if (Z_TYPE_P(offset) == IS_NULL) { - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - zend_use_resource_as_offset(offset); - hval = Z_RES_HANDLE_P(offset); - goto num_index; - } else if (IS_CV == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - str = ZSTR_EMPTY_ALLOC(); - goto str_index; - } else { - zend_illegal_offset(); - zval_ptr_dtor_nogc(expr_ptr); - } - - } else { - if (!zend_hash_next_index_insert(Z_ARRVAL_P(EX_VAR(opline->result.var)), expr_ptr)) { - zend_cannot_add_element(); - zval_ptr_dtor_nogc(expr_ptr); - } - } - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_INIT_ARRAY_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - zval *array; - uint32_t size; - USE_OPLINE - - array = EX_VAR(opline->result.var); - if (IS_CV != IS_UNUSED) { - size = opline->extended_value >> ZEND_ARRAY_SIZE_SHIFT; - ZVAL_ARR(array, zend_new_array(size)); - /* Explicitly initialize array as not-packed if flag is set */ - if (opline->extended_value & ZEND_ARRAY_NOT_PACKED) { - zend_hash_real_init_mixed(Z_ARRVAL_P(array)); - } - ZEND_VM_TAIL_CALL(ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } else { - ZVAL_ARR(array, zend_new_array(0)); - ZEND_VM_NEXT_OPCODE(); - } -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_DIM_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - zval *offset; - zend_ulong hval; - zend_string *key; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - offset = EX_VAR(opline->op2.var); - - do { - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - -unset_dim_array: - SEPARATE_ARRAY(container); - ht = Z_ARRVAL_P(container); -offset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - key = Z_STR_P(offset); - if (IS_CV != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(key, hval)) { - goto num_index_dim; - } - } -str_index_dim: - if (ht == &EG(symbol_table)) { - zend_delete_global_variable(key); - } else { - zend_hash_del(ht, key); - } - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_dim: - zend_hash_index_del(ht, hval); - } else if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_TYPE_P(offset) == IS_REFERENCE)) { - offset = Z_REFVAL_P(offset); - goto offset_again; - } else if (Z_TYPE_P(offset) == IS_DOUBLE) { - hval = zend_dval_to_lval(Z_DVAL_P(offset)); - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_NULL) { - key = ZSTR_EMPTY_ALLOC(); - goto str_index_dim; - } else if (Z_TYPE_P(offset) == IS_FALSE) { - hval = 0; - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_TRUE) { - hval = 1; - goto num_index_dim; - } else if (Z_TYPE_P(offset) == IS_RESOURCE) { - hval = Z_RES_HANDLE_P(offset); - goto num_index_dim; - } else if (IS_CV == IS_CV && Z_TYPE_P(offset) == IS_UNDEF) { - ZVAL_UNDEFINED_OP2(); - key = ZSTR_EMPTY_ALLOC(); - goto str_index_dim; - } else { - zend_error(E_WARNING, "Illegal offset type in unset"); - } - break; - } else if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto unset_dim_array; - } - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - container = ZVAL_UNDEFINED_OP1(); - } - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_P(offset) == IS_UNDEF)) { - offset = ZVAL_UNDEFINED_OP2(); - } - if (EXPECTED(Z_TYPE_P(container) == IS_OBJECT)) { - if (IS_CV == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - Z_OBJ_HT_P(container)->unset_dimension(container, offset); - } else if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_STRING)) { - zend_throw_error(NULL, "Cannot unset string offsets"); - } - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_UNSET_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - zval *offset; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - offset = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - do { - if (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - if (Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (Z_TYPE_P(container) != IS_OBJECT) { - if (IS_CV == IS_CV - && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZVAL_UNDEFINED_OP1(); - } - break; - } - } else { - break; - } - } - Z_OBJ_HT_P(container)->unset_property(container, offset, ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value) : NULL)); - } while (0); - - - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - int result; - zend_ulong hval; - zval *offset; - - SAVE_OPLINE(); - container = EX_VAR(opline->op1.var); - offset = EX_VAR(opline->op2.var); - - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - HashTable *ht; - zval *value; - zend_string *str; - -isset_dim_obj_array: - ht = Z_ARRVAL_P(container); -isset_again: - if (EXPECTED(Z_TYPE_P(offset) == IS_STRING)) { - str = Z_STR_P(offset); - if (IS_CV != IS_CONST) { - if (ZEND_HANDLE_NUMERIC(str, hval)) { - goto num_index_prop; - } - } - value = zend_hash_find_ex_ind(ht, str, IS_CV == IS_CONST); - } else if (EXPECTED(Z_TYPE_P(offset) == IS_LONG)) { - hval = Z_LVAL_P(offset); -num_index_prop: - value = zend_hash_index_find(ht, hval); - } else if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(offset))) { - offset = Z_REFVAL_P(offset); - goto isset_again; - } else { - value = zend_find_array_dim_slow(ht, offset EXECUTE_DATA_CC); - if (UNEXPECTED(EG(exception))) { - result = 0; - goto isset_dim_obj_exit; - } - } - - if (!(opline->extended_value & ZEND_ISEMPTY)) { - /* > IS_NULL means not IS_UNDEF and not IS_NULL */ - result = value != NULL && Z_TYPE_P(value) > IS_NULL && - (!Z_ISREF_P(value) || Z_TYPE_P(Z_REFVAL_P(value)) != IS_NULL); - - if (IS_CV & (IS_CONST|IS_CV)) { - /* avoid exception check */ - - ZEND_VM_SMART_BRANCH(result, 0); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE(); - } - } else { - result = (value == NULL || !i_zend_is_true(value)); - } - goto isset_dim_obj_exit; - } else if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(container))) { - container = Z_REFVAL_P(container); - if (EXPECTED(Z_TYPE_P(container) == IS_ARRAY)) { - goto isset_dim_obj_array; - } - } - - if (IS_CV == IS_CONST && Z_EXTRA_P(offset) == ZEND_EXTRA_VALUE) { - offset++; - } - if (!(opline->extended_value & ZEND_ISEMPTY)) { - result = zend_isset_dim_slow(container, offset EXECUTE_DATA_CC); - } else { - result = zend_isempty_dim_slow(container, offset EXECUTE_DATA_CC); - } - -isset_dim_obj_exit: - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zval *container; - int result; - zval *offset; - - SAVE_OPLINE(); - container = _get_zval_ptr_cv_BP_VAR_IS(opline->op1.var EXECUTE_DATA_CC); - - if (IS_CV == IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) == IS_UNDEF)) { - ZEND_VM_TAIL_CALL(zend_this_not_in_object_context_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - offset = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - if (IS_CV == IS_CONST || - (IS_CV != IS_UNUSED && UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT))) { - if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(container)) { - container = Z_REFVAL_P(container); - if (UNEXPECTED(Z_TYPE_P(container) != IS_OBJECT)) { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } else { - result = (opline->extended_value & ZEND_ISEMPTY); - goto isset_object_finish; - } - } - - result = - (opline->extended_value & ZEND_ISEMPTY) ^ - Z_OBJ_HT_P(container)->has_property(container, offset, (opline->extended_value & ZEND_ISEMPTY), ((IS_CV == IS_CONST) ? CACHE_ADDR(opline->extended_value & ~ZEND_ISEMPTY) : NULL)); - -isset_object_finish: - - - ZEND_VM_SMART_BRANCH(result, 1); - ZVAL_BOOL(EX_VAR(opline->result.var), result); - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - - zval *key, *subject; - HashTable *ht; - uint32_t result; - - SAVE_OPLINE(); - - key = EX_VAR(opline->op1.var); - subject = EX_VAR(opline->op2.var); - - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { -array_key_exists_array: - ht = Z_ARRVAL_P(subject); - result = zend_array_key_exists_fast(ht, key OPLINE_CC EXECUTE_DATA_CC); - } else { - if ((IS_CV & (IS_VAR|IS_CV)) && EXPECTED(Z_ISREF_P(subject))) { - subject = Z_REFVAL_P(subject); - if (EXPECTED(Z_TYPE_P(subject) == IS_ARRAY)) { - goto array_key_exists_array; - } - } - result = zend_array_key_exists_slow(subject, key OPLINE_CC EXECUTE_DATA_CC); - } - - - ZEND_VM_SMART_BRANCH(result == IS_TRUE, 1); - Z_TYPE_INFO_P(EX_VAR(opline->result.var)) = result; - ZEND_VM_NEXT_OPCODE_CHECK_EXCEPTION(); -} - -/* No specialization for op_types (CONST|TMPVAR|UNUSED|CV, ANY) */ -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_YIELD_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_generator *generator = zend_get_running_generator(EXECUTE_DATA_C); - - SAVE_OPLINE(); - if (UNEXPECTED(generator->flags & ZEND_GENERATOR_FORCED_CLOSE)) { - ZEND_VM_TAIL_CALL(zend_yield_in_closed_generator_helper_SPEC(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)); - } - - /* Destroy the previously yielded value */ - zval_ptr_dtor(&generator->value); - - /* Destroy the previously yielded key */ - zval_ptr_dtor(&generator->key); - - /* Set the new yielded value */ - if (IS_CV != IS_UNUSED) { - - - if (UNEXPECTED(EX(func)->op_array.fn_flags & ZEND_ACC_RETURN_REFERENCE)) { - /* Constants and temporary variables aren't yieldable by reference, - * but we still allow them with a notice. */ - if (IS_CV & (IS_CONST|IS_TMP_VAR)) { - zval *value; - - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - - value = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } - } else { - zval *value_ptr = _get_zval_ptr_cv_BP_VAR_W(opline->op1.var EXECUTE_DATA_CC); - - /* If a function call result is yielded and the function did - * not return by reference we throw a notice. */ - do { - if (IS_CV == IS_VAR) { - ZEND_ASSERT(value_ptr != &EG(uninitialized_zval)); - if (opline->extended_value == ZEND_RETURNS_FUNCTION - && !Z_ISREF_P(value_ptr)) { - zend_error(E_NOTICE, "Only variable references should be yielded by reference"); - ZVAL_COPY(&generator->value, value_ptr); - break; - } - } - if (Z_ISREF_P(value_ptr)) { - Z_ADDREF_P(value_ptr); - } else { - ZVAL_MAKE_REF_EX(value_ptr, 2); - } - ZVAL_REF(&generator->value, Z_REF_P(value_ptr)); - } while (0); - - } - } else { - zval *value = _get_zval_ptr_cv_BP_VAR_R(opline->op1.var EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_CV == IS_CONST) { - ZVAL_COPY_VALUE(&generator->value, value); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->value))) { - Z_ADDREF(generator->value); - } - } else if (IS_CV == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->value, value); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(value)) { - ZVAL_COPY(&generator->value, Z_REFVAL_P(value)); - - } else { - ZVAL_COPY_VALUE(&generator->value, value); - if (IS_CV == IS_CV) { - if (Z_OPT_REFCOUNTED_P(value)) Z_ADDREF_P(value); - } - } - } - } else { - /* If no value was specified yield null */ - ZVAL_NULL(&generator->value); - } - - /* Set the new yielded key */ - if (IS_CV != IS_UNUSED) { - - zval *key = _get_zval_ptr_cv_BP_VAR_R(opline->op2.var EXECUTE_DATA_CC); - - /* Consts, temporary variables and references need copying */ - if (IS_CV == IS_CONST) { - ZVAL_COPY_VALUE(&generator->key, key); - if (UNEXPECTED(Z_OPT_REFCOUNTED(generator->key))) { - Z_ADDREF(generator->key); - } - } else if (IS_CV == IS_TMP_VAR) { - ZVAL_COPY_VALUE(&generator->key, key); - } else if ((IS_CV & (IS_VAR|IS_CV)) && Z_ISREF_P(key)) { - ZVAL_COPY(&generator->key, Z_REFVAL_P(key)); - - } else { - ZVAL_COPY_VALUE(&generator->key, key); - if (IS_CV == IS_CV) { - if (Z_OPT_REFCOUNTED_P(key)) Z_ADDREF_P(key); - } - } - - if (Z_TYPE(generator->key) == IS_LONG - && Z_LVAL(generator->key) > generator->largest_used_integer_key - ) { - generator->largest_used_integer_key = Z_LVAL(generator->key); - } - } else { - /* If no key was specified we use auto-increment keys */ - generator->largest_used_integer_key++; - ZVAL_LONG(&generator->key, generator->largest_used_integer_key); - } - - if (RETURN_VALUE_USED(opline)) { - /* If the return value of yield is used set the send - * target and initialize it to NULL */ - generator->send_target = EX_VAR(opline->result.var); - ZVAL_NULL(generator->send_target); - } else { - generator->send_target = NULL; - } - - /* We increment to the next op, so we are at the correct position when the - * generator is resumed. */ - ZEND_VM_INC_OPCODE(); - - /* The GOTO VM uses a local opline variable. We need to set the opline - * variable in execute_data so we don't resume at an old position. */ - SAVE_OPLINE(); - - ZEND_VM_RETURN(); -} - -static ZEND_OPCODE_HANDLER_RET ZEND_FASTCALL ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS) -{ - USE_OPLINE - - zend_error_noreturn(E_ERROR, "Invalid opcode %d/%d/%d.", OPLINE->opcode, OPLINE->op1_type, OPLINE->op2_type); - ZEND_VM_NEXT_OPCODE(); /* Never reached */ -} - - -#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) -# undef ZEND_VM_TAIL_CALL -# undef ZEND_VM_CONTINUE -# undef ZEND_VM_RETURN - -# define ZEND_VM_TAIL_CALL(call) call; ZEND_VM_CONTINUE() -# define ZEND_VM_CONTINUE() HYBRID_NEXT() -# define ZEND_VM_RETURN() goto HYBRID_HALT_LABEL -#endif - - -#if (ZEND_VM_KIND != ZEND_VM_KIND_CALL) && (ZEND_GCC_VERSION >= 4000) && !defined(__clang__) -# pragma GCC push_options -# pragma GCC optimize("no-gcse") -# pragma GCC optimize("no-ivopts") -#endif -ZEND_API void execute_ex(zend_execute_data *ex) -{ - DCL_OPLINE - -#ifdef ZEND_VM_IP_GLOBAL_REG - const zend_op *orig_opline = opline; -#endif -#ifdef ZEND_VM_FP_GLOBAL_REG - zend_execute_data *orig_execute_data = execute_data; - execute_data = ex; -#else - zend_execute_data *execute_data = ex; -#endif - -#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) - if (UNEXPECTED(execute_data == NULL)) { - static const void * const labels[] = { - (void*)&&ZEND_NOP_SPEC_LABEL, - (void*)&&ZEND_ADD_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_ADD_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_SUB_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_DIV_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_DIV_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_DIV_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_DIV_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_DIV_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_DIV_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_DIV_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_DIV_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_DIV_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_DIV_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_DIV_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_DIV_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_DIV_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_DIV_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_DIV_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_DIV_SPEC_CV_CV_LABEL, - (void*)&&ZEND_MOD_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_MOD_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_MOD_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MOD_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_MOD_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MOD_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MOD_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_SL_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_SL_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SL_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_SL_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SL_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SL_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SR_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_SR_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_SR_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SR_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_SR_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SR_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SR_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_CONCAT_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_CONCAT_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_CONCAT_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_CONCAT_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_CONCAT_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_CONCAT_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_CONCAT_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_CONCAT_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_CONCAT_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_CONCAT_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_CONCAT_SPEC_CV_CV_LABEL, - (void*)&&ZEND_BW_OR_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_OR_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_OR_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_OR_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_AND_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_AND_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_AND_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_AND_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_XOR_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_XOR_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_XOR_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_XOR_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_POW_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_POW_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_POW_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_POW_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_POW_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_POW_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_POW_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_POW_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_POW_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_POW_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_POW_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_POW_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_POW_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_POW_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_POW_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_POW_SPEC_CV_CV_LABEL, - (void*)&&ZEND_BW_NOT_SPEC_CONST_LABEL, - (void*)&&ZEND_BW_NOT_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_BW_NOT_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BW_NOT_SPEC_CV_LABEL, - (void*)&&ZEND_BOOL_NOT_SPEC_CONST_LABEL, - (void*)&&ZEND_BOOL_NOT_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_BOOL_NOT_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BOOL_NOT_SPEC_CV_LABEL, - (void*)&&ZEND_BOOL_XOR_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BOOL_XOR_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BOOL_XOR_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BOOL_XOR_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_BOOL_XOR_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_BOOL_XOR_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BOOL_XOR_SPEC_CV_CV_LABEL, - (void*)&&ZEND_IS_IDENTICAL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_IDENTICAL_SPEC_TMP_CONST_LABEL, - (void*)&&ZEND_IS_IDENTICAL_SPEC_TMP_TMP_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_IDENTICAL_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_IS_IDENTICAL_SPEC_VAR_TMP_LABEL, - (void*)&&ZEND_IS_IDENTICAL_SPEC_VAR_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_IDENTICAL_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_IS_IDENTICAL_SPEC_CV_TMP_LABEL, - (void*)&&ZEND_IS_IDENTICAL_SPEC_CV_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_IDENTICAL_SPEC_CV_CV_LABEL, - (void*)&&ZEND_IS_NOT_IDENTICAL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_IDENTICAL_SPEC_TMP_CONST_LABEL, - (void*)&&ZEND_IS_NOT_IDENTICAL_SPEC_TMP_TMP_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_IDENTICAL_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_IS_NOT_IDENTICAL_SPEC_VAR_TMP_LABEL, - (void*)&&ZEND_IS_NOT_IDENTICAL_SPEC_VAR_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_IDENTICAL_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_IS_NOT_IDENTICAL_SPEC_CV_TMP_LABEL, - (void*)&&ZEND_IS_NOT_IDENTICAL_SPEC_CV_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_IDENTICAL_SPEC_CV_CV_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CV_CV_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CV_CV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_SPEC_CV_CV_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CV_CV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_USED_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_USED_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_USED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_USED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_USED_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_USED_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_USED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_CV_CV_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_ASSIGN_SPEC_CV_CV_RETVAL_USED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CONST_LABEL, - (void*)&&ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_TMP_LABEL, - (void*)&&ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OP_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OP_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_ASSIGN_OP_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OP_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OP_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OP_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_ASSIGN_OP_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OP_SPEC_CV_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_OP_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_ASSIGN_DIM_OP_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_ASSIGN_DIM_OP_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_ASSIGN_DIM_OP_SPEC_VAR_UNUSED_LABEL, - (void*)&&ZEND_ASSIGN_DIM_OP_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_DIM_OP_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_ASSIGN_DIM_OP_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_ASSIGN_DIM_OP_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_ASSIGN_DIM_OP_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_ASSIGN_DIM_OP_SPEC_CV_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_OP_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_OP_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_OP_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_OP_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_OP_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_OP_SPEC_CV_CV_LABEL, - (void*)&&ZEND_ASSIGN_STATIC_PROP_OP_SPEC_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_REF_SPEC_VAR_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_REF_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_REF_SPEC_CV_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_REF_SPEC_CV_CV_LABEL, - (void*)&&ZEND_QM_ASSIGN_SPEC_CONST_LABEL, - (void*)&&ZEND_QM_ASSIGN_SPEC_TMP_LABEL, - (void*)&&ZEND_QM_ASSIGN_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_QM_ASSIGN_SPEC_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_CV_LABEL, - (void*)&&ZEND_ASSIGN_STATIC_PROP_REF_SPEC_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_PRE_INC_SPEC_VAR_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_PRE_INC_SPEC_VAR_RETVAL_USED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_PRE_INC_SPEC_CV_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_PRE_INC_SPEC_CV_RETVAL_USED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_PRE_DEC_SPEC_VAR_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_PRE_DEC_SPEC_VAR_RETVAL_USED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_PRE_DEC_SPEC_CV_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_PRE_DEC_SPEC_CV_RETVAL_USED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_POST_INC_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_POST_INC_SPEC_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_POST_DEC_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_POST_DEC_SPEC_CV_LABEL, - (void*)&&ZEND_PRE_INC_STATIC_PROP_SPEC_LABEL, - (void*)&&ZEND_POST_INC_STATIC_PROP_SPEC_LABEL, - (void*)&&ZEND_JMP_SPEC_LABEL, - (void*)&&ZEND_JMPZ_SPEC_CONST_LABEL, - (void*)&&ZEND_JMPZ_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_JMPZ_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_JMPZ_SPEC_CV_LABEL, - (void*)&&ZEND_JMPNZ_SPEC_CONST_LABEL, - (void*)&&ZEND_JMPNZ_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_JMPNZ_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_JMPNZ_SPEC_CV_LABEL, - (void*)&&ZEND_JMPZNZ_SPEC_CONST_LABEL, - (void*)&&ZEND_JMPZNZ_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_JMPZNZ_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_JMPZNZ_SPEC_CV_LABEL, - (void*)&&ZEND_JMPZ_EX_SPEC_CONST_LABEL, - (void*)&&ZEND_JMPZ_EX_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_JMPZ_EX_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_JMPZ_EX_SPEC_CV_LABEL, - (void*)&&ZEND_JMPNZ_EX_SPEC_CONST_LABEL, - (void*)&&ZEND_JMPNZ_EX_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_JMPNZ_EX_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_JMPNZ_EX_SPEC_CV_LABEL, - (void*)&&ZEND_CASE_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_CASE_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_CASE_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_CASE_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_CHECK_VAR_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR_LABEL, - (void*)&&ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR_QUICK_LABEL, - (void*)&&ZEND_CAST_SPEC_CONST_LABEL, - (void*)&&ZEND_CAST_SPEC_TMP_LABEL, - (void*)&&ZEND_CAST_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_CAST_SPEC_CV_LABEL, - (void*)&&ZEND_BOOL_SPEC_CONST_LABEL, - (void*)&&ZEND_BOOL_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_BOOL_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BOOL_SPEC_CV_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FAST_CONCAT_SPEC_CV_CV_LABEL, - (void*)&&ZEND_ROPE_INIT_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ROPE_INIT_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_ROPE_ADD_SPEC_TMP_CONST_LABEL, - (void*)&&ZEND_ROPE_ADD_SPEC_TMP_TMPVAR_LABEL, - (void*)&&ZEND_ROPE_ADD_SPEC_TMP_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ROPE_ADD_SPEC_TMP_CV_LABEL, - (void*)&&ZEND_ROPE_END_SPEC_TMP_CONST_LABEL, - (void*)&&ZEND_ROPE_END_SPEC_TMP_TMPVAR_LABEL, - (void*)&&ZEND_ROPE_END_SPEC_TMP_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ROPE_END_SPEC_TMP_CV_LABEL, - (void*)&&ZEND_BEGIN_SILENCE_SPEC_LABEL, - (void*)&&ZEND_END_SILENCE_SPEC_TMP_LABEL, - (void*)&&ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_LABEL, - (void*)&&ZEND_DO_FCALL_SPEC_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_DO_FCALL_SPEC_RETVAL_USED_LABEL, - (void*)&&ZEND_INIT_FCALL_SPEC_CONST_LABEL, - (void*)&&ZEND_RETURN_SPEC_CONST_LABEL, - (void*)&&ZEND_RETURN_SPEC_TMP_LABEL, - (void*)&&ZEND_RETURN_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_RETURN_SPEC_CV_LABEL, - (void*)&&ZEND_RECV_SPEC_UNUSED_LABEL, - (void*)&&ZEND_RECV_INIT_SPEC_CONST_LABEL, - (void*)&&ZEND_SEND_VAL_SPEC_CONST_LABEL, - (void*)&&ZEND_SEND_VAL_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_SEND_VAL_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SEND_VAR_EX_SPEC_VAR_LABEL, - (void*)&&ZEND_SEND_VAR_EX_SPEC_VAR_QUICK_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SEND_VAR_EX_SPEC_CV_LABEL, - (void*)&&ZEND_SEND_VAR_EX_SPEC_CV_QUICK_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SEND_REF_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SEND_REF_SPEC_CV_LABEL, - (void*)&&ZEND_NEW_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NEW_SPEC_VAR_UNUSED_LABEL, - (void*)&&ZEND_NEW_SPEC_UNUSED_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INIT_NS_FCALL_BY_NAME_SPEC_CONST_LABEL, - (void*)&&ZEND_FREE_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_TMP_CONST_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_TMP_UNUSED_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_TMP_CV_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_VAR_UNUSED_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_UNUSED_UNUSED_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_INIT_ARRAY_SPEC_CV_CV_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CONST_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_UNUSED_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CV_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_UNUSED_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CV_LABEL, - (void*)&&ZEND_INCLUDE_OR_EVAL_SPEC_CONST_LABEL, - (void*)&&ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INCLUDE_OR_EVAL_SPEC_CV_LABEL, - (void*)&&ZEND_UNSET_VAR_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_UNSET_VAR_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_UNSET_DIM_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_UNSET_DIM_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_UNSET_DIM_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_UNSET_DIM_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_UNSET_DIM_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_UNSET_DIM_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_UNSET_DIM_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_UNSET_DIM_SPEC_CV_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_UNSET_OBJ_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_UNSET_OBJ_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_UNSET_OBJ_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_UNSET_OBJ_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_UNSET_OBJ_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_UNSET_OBJ_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_UNSET_OBJ_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_UNSET_OBJ_SPEC_CV_CV_LABEL, - (void*)&&ZEND_FE_RESET_R_SPEC_CONST_LABEL, - (void*)&&ZEND_FE_RESET_R_SPEC_TMP_LABEL, - (void*)&&ZEND_FE_RESET_R_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FE_RESET_R_SPEC_CV_LABEL, - (void*)&&ZEND_FE_FETCH_R_SPEC_VAR_LABEL, - (void*)&&ZEND_EXIT_SPEC_LABEL, - (void*)&&ZEND_FETCH_R_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_FETCH_R_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_FETCH_R_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_R_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_R_SPEC_CV_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_R_SPEC_CV_CV_LABEL, - (void*)&&ZEND_FETCH_W_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_FETCH_W_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_FETCH_W_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_W_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_W_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_W_SPEC_VAR_UNUSED_LABEL, - (void*)&&ZEND_FETCH_DIM_W_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_W_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_W_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_FETCH_DIM_W_SPEC_CV_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_W_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_W_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_W_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_W_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_W_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_W_SPEC_CV_CV_LABEL, - (void*)&&ZEND_FETCH_RW_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_RW_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_RW_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_RW_SPEC_VAR_UNUSED_LABEL, - (void*)&&ZEND_FETCH_DIM_RW_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_RW_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_RW_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_FETCH_DIM_RW_SPEC_CV_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_RW_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_RW_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_RW_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_RW_SPEC_CV_CV_LABEL, - (void*)&&ZEND_FETCH_IS_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_IS_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_IS_SPEC_CV_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_IS_SPEC_CV_CV_LABEL, - (void*)&&ZEND_FETCH_FUNC_ARG_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_FUNC_ARG_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_UNUSED_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CV_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_UNUSED_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CV_LABEL, - (void*)&&ZEND_FETCH_UNSET_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_UNSET_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_UNSET_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_UNSET_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_UNSET_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_UNSET_SPEC_CV_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_FETCH_OBJ_UNSET_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_OBJ_UNSET_SPEC_CV_CV_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CV_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CV_LABEL, - (void*)&&ZEND_FETCH_CONSTANT_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_CHECK_FUNC_ARG_SPEC_UNUSED_LABEL, - (void*)&&ZEND_CHECK_FUNC_ARG_SPEC_UNUSED_QUICK_LABEL, - (void*)&&ZEND_EXT_STMT_SPEC_LABEL, - (void*)&&ZEND_EXT_FCALL_BEGIN_SPEC_LABEL, - (void*)&&ZEND_EXT_FCALL_END_SPEC_LABEL, - (void*)&&ZEND_EXT_NOP_SPEC_LABEL, - (void*)&&ZEND_TICKS_SPEC_LABEL, - (void*)&&ZEND_SEND_VAR_NO_REF_SPEC_VAR_LABEL, - (void*)&&ZEND_CATCH_SPEC_CONST_LABEL, - (void*)&&ZEND_THROW_SPEC_CONST_LABEL, - (void*)&&ZEND_THROW_SPEC_TMP_LABEL, - (void*)&&ZEND_THROW_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_THROW_SPEC_CV_LABEL, - (void*)&&ZEND_FETCH_CLASS_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_FETCH_CLASS_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_CLASS_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_CLASS_SPEC_UNUSED_UNUSED_LABEL, - (void*)&&ZEND_FETCH_CLASS_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_CLONE_SPEC_CONST_LABEL, - (void*)&&ZEND_CLONE_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_CLONE_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_CLONE_SPEC_UNUSED_LABEL, - (void*)&&ZEND_CLONE_SPEC_CV_LABEL, - (void*)&&ZEND_RETURN_BY_REF_SPEC_CONST_LABEL, - (void*)&&ZEND_RETURN_BY_REF_SPEC_TMP_LABEL, - (void*)&&ZEND_RETURN_BY_REF_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_RETURN_BY_REF_SPEC_CV_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INIT_METHOD_CALL_SPEC_CV_CV_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_UNUSED_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_UNUSED_LABEL, - (void*)&&ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CV_LABEL, - (void*)&&ZEND_SEND_VAL_EX_SPEC_CONST_LABEL, - (void*)&&ZEND_SEND_VAL_EX_SPEC_CONST_QUICK_LABEL, - (void*)&&ZEND_SEND_VAL_EX_SPEC_TMP_LABEL, - (void*)&&ZEND_SEND_VAL_EX_SPEC_TMP_QUICK_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SEND_VAR_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SEND_VAR_SPEC_CV_LABEL, - (void*)&&ZEND_INIT_USER_CALL_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INIT_USER_CALL_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_SEND_ARRAY_SPEC_LABEL, - (void*)&&ZEND_SEND_USER_SPEC_CONST_LABEL, - (void*)&&ZEND_SEND_USER_SPEC_TMP_LABEL, - (void*)&&ZEND_SEND_USER_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SEND_USER_SPEC_CV_LABEL, - (void*)&&ZEND_STRLEN_SPEC_CONST_LABEL, - (void*)&&ZEND_STRLEN_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_STRLEN_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_STRLEN_SPEC_CV_LABEL, - (void*)&&ZEND_DEFINED_SPEC_CONST_LABEL, - (void*)&&ZEND_TYPE_CHECK_SPEC_CONST_LABEL, - (void*)&&ZEND_TYPE_CHECK_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_TYPE_CHECK_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_TYPE_CHECK_SPEC_CV_LABEL, - (void*)&&ZEND_VERIFY_RETURN_TYPE_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_VERIFY_RETURN_TYPE_SPEC_TMP_UNUSED_LABEL, - (void*)&&ZEND_VERIFY_RETURN_TYPE_SPEC_VAR_UNUSED_LABEL, - (void*)&&ZEND_VERIFY_RETURN_TYPE_SPEC_UNUSED_UNUSED_LABEL, - (void*)&&ZEND_VERIFY_RETURN_TYPE_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_FE_RESET_RW_SPEC_CONST_LABEL, - (void*)&&ZEND_FE_RESET_RW_SPEC_TMP_LABEL, - (void*)&&ZEND_FE_RESET_RW_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FE_RESET_RW_SPEC_CV_LABEL, - (void*)&&ZEND_FE_FETCH_RW_SPEC_VAR_LABEL, - (void*)&&ZEND_FE_FREE_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_INIT_DYNAMIC_CALL_SPEC_CONST_LABEL, - (void*)&&ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INIT_DYNAMIC_CALL_SPEC_CV_LABEL, - (void*)&&ZEND_DO_ICALL_SPEC_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_DO_ICALL_SPEC_RETVAL_USED_LABEL, - (void*)&&ZEND_DO_UCALL_SPEC_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_DO_UCALL_SPEC_RETVAL_USED_LABEL, - (void*)&&ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_USED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_PRE_INC_OBJ_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_PRE_INC_OBJ_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_PRE_INC_OBJ_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_PRE_INC_OBJ_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_PRE_INC_OBJ_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_PRE_INC_OBJ_SPEC_CV_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_POST_INC_OBJ_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_POST_INC_OBJ_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_POST_INC_OBJ_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_POST_INC_OBJ_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_POST_INC_OBJ_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_POST_INC_OBJ_SPEC_CV_CV_LABEL, - (void*)&&ZEND_ECHO_SPEC_CONST_LABEL, - (void*)&&ZEND_ECHO_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_ECHO_SPEC_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ECHO_SPEC_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INSTANCEOF_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INSTANCEOF_SPEC_TMPVAR_VAR_LABEL, - (void*)&&ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INSTANCEOF_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INSTANCEOF_SPEC_TMPVAR_VAR_LABEL, - (void*)&&ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INSTANCEOF_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_INSTANCEOF_SPEC_CV_VAR_LABEL, - (void*)&&ZEND_INSTANCEOF_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_GENERATOR_CREATE_SPEC_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MAKE_REF_SPEC_VAR_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MAKE_REF_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_DECLARE_FUNCTION_SPEC_LABEL, - (void*)&&ZEND_DECLARE_LAMBDA_FUNCTION_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_DECLARE_CONST_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_DECLARE_CLASS_SPEC_CONST_LABEL, - (void*)&&ZEND_DECLARE_CLASS_DELAYED_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_DECLARE_ANON_CLASS_SPEC_LABEL, - (void*)&&ZEND_ADD_ARRAY_UNPACK_SPEC_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CV_LABEL, - (void*)&&ZEND_HANDLE_EXCEPTION_SPEC_LABEL, - (void*)&&ZEND_USER_OPCODE_SPEC_LABEL, - (void*)&&ZEND_ASSERT_CHECK_SPEC_LABEL, - (void*)&&ZEND_JMP_SET_SPEC_CONST_LABEL, - (void*)&&ZEND_JMP_SET_SPEC_TMP_LABEL, - (void*)&&ZEND_JMP_SET_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_JMP_SET_SPEC_CV_LABEL, - (void*)&&ZEND_UNSET_CV_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_SET_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_EMPTY_LABEL, - (void*)&&ZEND_FETCH_LIST_W_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_FETCH_LIST_W_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_FETCH_LIST_W_SPEC_VAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_LIST_W_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_SEPARATE_SPEC_VAR_UNUSED_LABEL, - (void*)&&ZEND_FETCH_CLASS_NAME_SPEC_UNUSED_LABEL, - (void*)&&ZEND_CALL_TRAMPOLINE_SPEC_LABEL, - (void*)&&ZEND_DISCARD_EXCEPTION_SPEC_LABEL, - (void*)&&ZEND_YIELD_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_YIELD_SPEC_CONST_TMP_LABEL, - (void*)&&ZEND_YIELD_SPEC_CONST_VAR_LABEL, - (void*)&&ZEND_YIELD_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_YIELD_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_YIELD_SPEC_TMP_CONST_LABEL, - (void*)&&ZEND_YIELD_SPEC_TMP_TMP_LABEL, - (void*)&&ZEND_YIELD_SPEC_TMP_VAR_LABEL, - (void*)&&ZEND_YIELD_SPEC_TMP_UNUSED_LABEL, - (void*)&&ZEND_YIELD_SPEC_TMP_CV_LABEL, - (void*)&&ZEND_YIELD_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_YIELD_SPEC_VAR_TMP_LABEL, - (void*)&&ZEND_YIELD_SPEC_VAR_VAR_LABEL, - (void*)&&ZEND_YIELD_SPEC_VAR_UNUSED_LABEL, - (void*)&&ZEND_YIELD_SPEC_VAR_CV_LABEL, - (void*)&&ZEND_YIELD_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_YIELD_SPEC_UNUSED_TMP_LABEL, - (void*)&&ZEND_YIELD_SPEC_UNUSED_VAR_LABEL, - (void*)&&ZEND_YIELD_SPEC_UNUSED_UNUSED_LABEL, - (void*)&&ZEND_YIELD_SPEC_UNUSED_CV_LABEL, - (void*)&&ZEND_YIELD_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_YIELD_SPEC_CV_TMP_LABEL, - (void*)&&ZEND_YIELD_SPEC_CV_VAR_LABEL, - (void*)&&ZEND_YIELD_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_YIELD_SPEC_CV_CV_LABEL, - (void*)&&ZEND_GENERATOR_RETURN_SPEC_CONST_LABEL, - (void*)&&ZEND_GENERATOR_RETURN_SPEC_TMP_LABEL, - (void*)&&ZEND_GENERATOR_RETURN_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_GENERATOR_RETURN_SPEC_CV_LABEL, - (void*)&&ZEND_FAST_CALL_SPEC_LABEL, - (void*)&&ZEND_FAST_RET_SPEC_LABEL, - (void*)&&ZEND_RECV_VARIADIC_SPEC_UNUSED_LABEL, - (void*)&&ZEND_SEND_UNPACK_SPEC_LABEL, - (void*)&&ZEND_YIELD_FROM_SPEC_CONST_LABEL, - (void*)&&ZEND_YIELD_FROM_SPEC_TMP_LABEL, - (void*)&&ZEND_YIELD_FROM_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_YIELD_FROM_SPEC_CV_LABEL, - (void*)&&ZEND_COPY_TMP_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_BIND_GLOBAL_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_COALESCE_SPEC_CONST_LABEL, - (void*)&&ZEND_COALESCE_SPEC_TMP_LABEL, - (void*)&&ZEND_COALESCE_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_COALESCE_SPEC_CV_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SPACESHIP_SPEC_CV_CV_LABEL, - (void*)&&ZEND_FUNC_NUM_ARGS_SPEC_UNUSED_UNUSED_LABEL, - (void*)&&ZEND_FUNC_GET_ARGS_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FUNC_GET_ARGS_SPEC_UNUSED_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_STATIC_PROP_R_SPEC_LABEL, - (void*)&&ZEND_FETCH_STATIC_PROP_W_SPEC_LABEL, - (void*)&&ZEND_FETCH_STATIC_PROP_RW_SPEC_LABEL, - (void*)&&ZEND_FETCH_STATIC_PROP_IS_SPEC_LABEL, - (void*)&&ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_LABEL, - (void*)&&ZEND_FETCH_STATIC_PROP_UNSET_SPEC_LABEL, - (void*)&&ZEND_UNSET_STATIC_PROP_SPEC_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_LABEL, - (void*)&&ZEND_FETCH_CLASS_CONSTANT_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_CLASS_CONSTANT_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_FETCH_CLASS_CONSTANT_SPEC_UNUSED_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_BIND_LEXICAL_SPEC_TMP_CV_LABEL, - (void*)&&ZEND_BIND_STATIC_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_FETCH_THIS_SPEC_UNUSED_UNUSED_LABEL, - (void*)&&ZEND_SEND_FUNC_ARG_SPEC_VAR_LABEL, - (void*)&&ZEND_ISSET_ISEMPTY_THIS_SPEC_UNUSED_UNUSED_LABEL, - (void*)&&ZEND_SWITCH_LONG_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_SWITCH_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SWITCH_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SWITCH_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SWITCH_STRING_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_SWITCH_STRING_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SWITCH_STRING_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SWITCH_STRING_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IN_ARRAY_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_IN_ARRAY_SPEC_TMP_CONST_LABEL, - (void*)&&ZEND_IN_ARRAY_SPEC_VAR_CONST_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IN_ARRAY_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_COUNT_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_COUNT_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_COUNT_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_COUNT_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_GET_CLASS_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_GET_CLASS_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_GET_CLASS_SPEC_TMPVAR_UNUSED_LABEL, - (void*)&&ZEND_GET_CLASS_SPEC_UNUSED_UNUSED_LABEL, - (void*)&&ZEND_GET_CLASS_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_GET_CALLED_CLASS_SPEC_UNUSED_UNUSED_LABEL, - (void*)&&ZEND_GET_TYPE_SPEC_CONST_UNUSED_LABEL, - (void*)&&ZEND_GET_TYPE_SPEC_TMP_UNUSED_LABEL, - (void*)&&ZEND_GET_TYPE_SPEC_VAR_UNUSED_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_GET_TYPE_SPEC_CV_UNUSED_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CONST_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CV_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CV_LABEL, - (void*)&&ZEND_JMP_FORWARD_SPEC_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_LABEL, - (void*)&&ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_LABEL, - (void*)&&ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED_LABEL, - (void*)&&ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_USED_LABEL, - (void*)&&ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED_LABEL, - (void*)&&ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_USED_LABEL, - (void*)&&ZEND_POST_INC_LONG_NO_OVERFLOW_SPEC_CV_LABEL, - (void*)&&ZEND_POST_INC_LONG_SPEC_CV_LABEL, - (void*)&&ZEND_POST_DEC_LONG_NO_OVERFLOW_SPEC_CV_LABEL, - (void*)&&ZEND_POST_DEC_LONG_SPEC_CV_LABEL, - (void*)&&ZEND_QM_ASSIGN_LONG_SPEC_CONST_LABEL, - (void*)&&ZEND_QM_ASSIGN_LONG_SPEC_TMPVARCV_LABEL, - (void*)&&ZEND_QM_ASSIGN_LONG_SPEC_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_QM_ASSIGN_LONG_SPEC_TMPVARCV_LABEL, - (void*)&&ZEND_QM_ASSIGN_DOUBLE_SPEC_CONST_LABEL, - (void*)&&ZEND_QM_ASSIGN_DOUBLE_SPEC_TMPVARCV_LABEL, - (void*)&&ZEND_QM_ASSIGN_DOUBLE_SPEC_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_QM_ASSIGN_DOUBLE_SPEC_TMPVARCV_LABEL, - (void*)&&ZEND_QM_ASSIGN_NOREF_SPEC_CONST_LABEL, - (void*)&&ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV_LABEL, - (void*)&&ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_CONST_TMPVARCV_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_CV_CONST_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_CV_TMPVARCV_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_CV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_FETCH_DIM_R_INDEX_SPEC_CV_TMPVARCV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SEND_VAR_SIMPLE_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SEND_VAR_SIMPLE_SPEC_CV_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SEND_VAR_EX_SIMPLE_SPEC_VAR_LABEL, - (void*)&&ZEND_NULL_LABEL, - (void*)&&ZEND_SEND_VAR_EX_SIMPLE_SPEC_CV_LABEL, - (void*)&&ZEND_SEND_VAL_SIMPLE_SPEC_CONST_LABEL, - (void*)&&ZEND_SEND_VAL_EX_SIMPLE_SPEC_CONST_LABEL, - (void*)&&ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_UNUSED_LABEL, - (void*)&&ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_USED_LABEL, - (void*)&&ZEND_NULL_LABEL - }; - zend_opcode_handlers = (const void **) labels; - zend_handlers_count = sizeof(labels) / sizeof(void*); - memset(&hybrid_halt_op, 0, sizeof(hybrid_halt_op)); - hybrid_halt_op.handler = (void*)&&HYBRID_HALT_LABEL; - goto HYBRID_HALT_LABEL; - } -#endif - - LOAD_OPLINE(); - ZEND_VM_LOOP_INTERRUPT_CHECK(); - - while (1) { -#if !defined(ZEND_VM_FP_GLOBAL_REG) || !defined(ZEND_VM_IP_GLOBAL_REG) - int ret; -#endif -#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) - HYBRID_SWITCH() { -#else -#if defined(ZEND_VM_FP_GLOBAL_REG) && defined(ZEND_VM_IP_GLOBAL_REG) - ((opcode_handler_t)OPLINE->handler)(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - if (UNEXPECTED(!OPLINE)) { -#else - if (UNEXPECTED((ret = ((opcode_handler_t)OPLINE->handler)(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU)) != 0)) { -#endif -#endif -#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) - HYBRID_CASE(ZEND_ASSIGN_STATIC_PROP_OP_SPEC): - VM_TRACE(ZEND_ASSIGN_STATIC_PROP_OP_SPEC) - ZEND_ASSIGN_STATIC_PROP_OP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_STATIC_PROP_SPEC): - VM_TRACE(ZEND_PRE_INC_STATIC_PROP_SPEC) - ZEND_PRE_INC_STATIC_PROP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_STATIC_PROP_SPEC): - VM_TRACE(ZEND_POST_INC_STATIC_PROP_SPEC) - ZEND_POST_INC_STATIC_PROP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_STATIC_PROP_R_SPEC): - VM_TRACE(ZEND_FETCH_STATIC_PROP_R_SPEC) - ZEND_FETCH_STATIC_PROP_R_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_STATIC_PROP_W_SPEC): - VM_TRACE(ZEND_FETCH_STATIC_PROP_W_SPEC) - ZEND_FETCH_STATIC_PROP_W_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_STATIC_PROP_RW_SPEC): - VM_TRACE(ZEND_FETCH_STATIC_PROP_RW_SPEC) - ZEND_FETCH_STATIC_PROP_RW_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC): - VM_TRACE(ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC) - ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_STATIC_PROP_UNSET_SPEC): - VM_TRACE(ZEND_FETCH_STATIC_PROP_UNSET_SPEC) - ZEND_FETCH_STATIC_PROP_UNSET_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_STATIC_PROP_IS_SPEC): - VM_TRACE(ZEND_FETCH_STATIC_PROP_IS_SPEC) - ZEND_FETCH_STATIC_PROP_IS_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CONST) - ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_TMP) - ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_VAR) - ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CV) - ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_STATIC_PROP_REF_SPEC): - VM_TRACE(ZEND_ASSIGN_STATIC_PROP_REF_SPEC) - ZEND_ASSIGN_STATIC_PROP_REF_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); -zend_leave_helper_SPEC_LABEL: -{ - zend_execute_data *old_execute_data; - uint32_t call_info = EX_CALL_INFO(); - SAVE_OPLINE(); - - if (EXPECTED((call_info & (ZEND_CALL_CODE|ZEND_CALL_TOP|ZEND_CALL_HAS_SYMBOL_TABLE|ZEND_CALL_FREE_EXTRA_ARGS|ZEND_CALL_ALLOCATED)) == 0)) { - EG(current_execute_data) = EX(prev_execute_data); - i_free_compiled_variables(execute_data); - -#ifdef ZEND_PREFER_RELOAD - call_info = EX_CALL_INFO(); -#endif - if (UNEXPECTED(call_info & ZEND_CALL_RELEASE_THIS)) { - OBJ_RELEASE(Z_OBJ(execute_data->This)); - } else if (UNEXPECTED(call_info & ZEND_CALL_CLOSURE)) { - OBJ_RELEASE(ZEND_CLOSURE_OBJECT(EX(func))); - } - EG(vm_stack_top) = (zval*)execute_data; - execute_data = EX(prev_execute_data); - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION_LEAVE(); - } - - LOAD_NEXT_OPLINE(); - ZEND_VM_LEAVE(); - } else if (EXPECTED((call_info & (ZEND_CALL_CODE|ZEND_CALL_TOP)) == 0)) { - EG(current_execute_data) = EX(prev_execute_data); - i_free_compiled_variables(execute_data); - -#ifdef ZEND_PREFER_RELOAD - call_info = EX_CALL_INFO(); -#endif - if (UNEXPECTED(call_info & ZEND_CALL_HAS_SYMBOL_TABLE)) { - zend_clean_and_cache_symbol_table(EX(symbol_table)); - } - - /* Free extra args before releasing the closure, - * as that may free the op_array. */ - zend_vm_stack_free_extra_args_ex(call_info, execute_data); - - if (UNEXPECTED(call_info & ZEND_CALL_RELEASE_THIS)) { - OBJ_RELEASE(Z_OBJ(execute_data->This)); - } else if (UNEXPECTED(call_info & ZEND_CALL_CLOSURE)) { - OBJ_RELEASE(ZEND_CLOSURE_OBJECT(EX(func))); - } - - old_execute_data = execute_data; - execute_data = EX(prev_execute_data); - zend_vm_stack_free_call_frame_ex(call_info, old_execute_data); - - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION_LEAVE(); - } - - LOAD_NEXT_OPLINE(); - ZEND_VM_LEAVE(); - } else if (EXPECTED((call_info & ZEND_CALL_TOP) == 0)) { - zend_detach_symbol_table(execute_data); - destroy_op_array(&EX(func)->op_array); - efree_size(EX(func), sizeof(zend_op_array)); -#ifdef ZEND_PREFER_RELOAD - call_info = EX_CALL_INFO(); -#endif - old_execute_data = execute_data; - execute_data = EG(current_execute_data) = EX(prev_execute_data); - zend_vm_stack_free_call_frame_ex(call_info, old_execute_data); - - zend_attach_symbol_table(execute_data); - if (UNEXPECTED(EG(exception) != NULL)) { - zend_rethrow_exception(execute_data); - HANDLE_EXCEPTION_LEAVE(); - } - - LOAD_NEXT_OPLINE(); - ZEND_VM_LEAVE(); - } else { - if (EXPECTED((call_info & ZEND_CALL_CODE) == 0)) { - EG(current_execute_data) = EX(prev_execute_data); - i_free_compiled_variables(execute_data); -#ifdef ZEND_PREFER_RELOAD - call_info = EX_CALL_INFO(); -#endif - if (UNEXPECTED(call_info & (ZEND_CALL_HAS_SYMBOL_TABLE|ZEND_CALL_FREE_EXTRA_ARGS))) { - if (UNEXPECTED(call_info & ZEND_CALL_HAS_SYMBOL_TABLE)) { - zend_clean_and_cache_symbol_table(EX(symbol_table)); - } - zend_vm_stack_free_extra_args_ex(call_info, execute_data); - } - if (UNEXPECTED(call_info & ZEND_CALL_CLOSURE)) { - OBJ_RELEASE(ZEND_CLOSURE_OBJECT(EX(func))); - } - ZEND_VM_RETURN(); - } else /* if (call_kind == ZEND_CALL_TOP_CODE) */ { - zend_array *symbol_table = EX(symbol_table); - - zend_detach_symbol_table(execute_data); - old_execute_data = EX(prev_execute_data); - while (old_execute_data) { - if (old_execute_data->func && (ZEND_CALL_INFO(old_execute_data) & ZEND_CALL_HAS_SYMBOL_TABLE)) { - if (old_execute_data->symbol_table == symbol_table) { - zend_attach_symbol_table(old_execute_data); - } - break; - } - old_execute_data = old_execute_data->prev_execute_data; - } - EG(current_execute_data) = EX(prev_execute_data); - ZEND_VM_RETURN(); - } - } -} - - HYBRID_CASE(ZEND_JMP_SPEC): - VM_TRACE(ZEND_JMP_SPEC) - ZEND_JMP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DO_ICALL_SPEC_RETVAL_UNUSED): - VM_TRACE(ZEND_DO_ICALL_SPEC_RETVAL_UNUSED) - ZEND_DO_ICALL_SPEC_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DO_ICALL_SPEC_RETVAL_USED): - VM_TRACE(ZEND_DO_ICALL_SPEC_RETVAL_USED) - ZEND_DO_ICALL_SPEC_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DO_UCALL_SPEC_RETVAL_UNUSED): - VM_TRACE(ZEND_DO_UCALL_SPEC_RETVAL_UNUSED) - ZEND_DO_UCALL_SPEC_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DO_UCALL_SPEC_RETVAL_USED): - VM_TRACE(ZEND_DO_UCALL_SPEC_RETVAL_USED) - ZEND_DO_UCALL_SPEC_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_UNUSED): - VM_TRACE(ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_UNUSED) - ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_USED): - VM_TRACE(ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_USED) - ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DO_FCALL_SPEC_RETVAL_UNUSED): - VM_TRACE(ZEND_DO_FCALL_SPEC_RETVAL_UNUSED) - ZEND_DO_FCALL_SPEC_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DO_FCALL_SPEC_RETVAL_USED): - VM_TRACE(ZEND_DO_FCALL_SPEC_RETVAL_USED) - ZEND_DO_FCALL_SPEC_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GENERATOR_CREATE_SPEC): - VM_TRACE(ZEND_GENERATOR_CREATE_SPEC) - ZEND_GENERATOR_CREATE_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_UNPACK_SPEC): - VM_TRACE(ZEND_SEND_UNPACK_SPEC) - ZEND_SEND_UNPACK_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_ARRAY_SPEC): - VM_TRACE(ZEND_SEND_ARRAY_SPEC) - ZEND_SEND_ARRAY_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_UNPACK_SPEC): - VM_TRACE(ZEND_ADD_ARRAY_UNPACK_SPEC) - ZEND_ADD_ARRAY_UNPACK_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_STATIC_PROP_SPEC): - VM_TRACE(ZEND_UNSET_STATIC_PROP_SPEC) - ZEND_UNSET_STATIC_PROP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC): - VM_TRACE(ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC) - ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_EXIT_SPEC): - VM_TRACE(ZEND_EXIT_SPEC) - ZEND_EXIT_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BEGIN_SILENCE_SPEC): - VM_TRACE(ZEND_BEGIN_SILENCE_SPEC) - ZEND_BEGIN_SILENCE_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_EXT_STMT_SPEC): - VM_TRACE(ZEND_EXT_STMT_SPEC) - ZEND_EXT_STMT_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_EXT_FCALL_BEGIN_SPEC): - VM_TRACE(ZEND_EXT_FCALL_BEGIN_SPEC) - ZEND_EXT_FCALL_BEGIN_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_EXT_FCALL_END_SPEC): - VM_TRACE(ZEND_EXT_FCALL_END_SPEC) - ZEND_EXT_FCALL_END_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DECLARE_ANON_CLASS_SPEC): - VM_TRACE(ZEND_DECLARE_ANON_CLASS_SPEC) - ZEND_DECLARE_ANON_CLASS_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DECLARE_FUNCTION_SPEC): - VM_TRACE(ZEND_DECLARE_FUNCTION_SPEC) - ZEND_DECLARE_FUNCTION_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_TICKS_SPEC): - VM_TRACE(ZEND_TICKS_SPEC) - ZEND_TICKS_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_EXT_NOP_SPEC): - VM_TRACE(ZEND_EXT_NOP_SPEC) - ZEND_EXT_NOP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_NOP_SPEC): - VM_TRACE(ZEND_NOP_SPEC) - ZEND_NOP_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_HANDLE_EXCEPTION_SPEC): - VM_TRACE(ZEND_HANDLE_EXCEPTION_SPEC) - ZEND_HANDLE_EXCEPTION_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_USER_OPCODE_SPEC): - VM_TRACE(ZEND_USER_OPCODE_SPEC) - ZEND_USER_OPCODE_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DISCARD_EXCEPTION_SPEC): - VM_TRACE(ZEND_DISCARD_EXCEPTION_SPEC) - ZEND_DISCARD_EXCEPTION_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FAST_CALL_SPEC): - VM_TRACE(ZEND_FAST_CALL_SPEC) - ZEND_FAST_CALL_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FAST_RET_SPEC): - VM_TRACE(ZEND_FAST_RET_SPEC) - ZEND_FAST_RET_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSERT_CHECK_SPEC): - VM_TRACE(ZEND_ASSERT_CHECK_SPEC) - ZEND_ASSERT_CHECK_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CALL_TRAMPOLINE_SPEC): - VM_TRACE(ZEND_CALL_TRAMPOLINE_SPEC) - ZEND_CALL_TRAMPOLINE_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMP_FORWARD_SPEC): - VM_TRACE(ZEND_JMP_FORWARD_SPEC) - ZEND_JMP_FORWARD_SPEC_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_FCALL_BY_NAME_SPEC_CONST): - VM_TRACE(ZEND_INIT_FCALL_BY_NAME_SPEC_CONST) - ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_DYNAMIC_CALL_SPEC_CONST): - VM_TRACE(ZEND_INIT_DYNAMIC_CALL_SPEC_CONST) - ZEND_INIT_DYNAMIC_CALL_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_NS_FCALL_BY_NAME_SPEC_CONST): - VM_TRACE(ZEND_INIT_NS_FCALL_BY_NAME_SPEC_CONST) - ZEND_INIT_NS_FCALL_BY_NAME_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_FCALL_SPEC_CONST): - VM_TRACE(ZEND_INIT_FCALL_SPEC_CONST) - ZEND_INIT_FCALL_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_RECV_INIT_SPEC_CONST): - VM_TRACE(ZEND_RECV_INIT_SPEC_CONST) - ZEND_RECV_INIT_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR): - VM_TRACE(ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR) - ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_RECV_SPEC_UNUSED): - VM_TRACE(ZEND_RECV_SPEC_UNUSED) - ZEND_RECV_SPEC_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_RECV_VARIADIC_SPEC_UNUSED): - VM_TRACE(ZEND_RECV_VARIADIC_SPEC_UNUSED) - ZEND_RECV_VARIADIC_SPEC_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_DYNAMIC_CALL_SPEC_CV): - VM_TRACE(ZEND_INIT_DYNAMIC_CALL_SPEC_CV) - ZEND_INIT_DYNAMIC_CALL_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BW_NOT_SPEC_CONST): - VM_TRACE(ZEND_BW_NOT_SPEC_CONST) - ZEND_BW_NOT_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BOOL_NOT_SPEC_CONST): - VM_TRACE(ZEND_BOOL_NOT_SPEC_CONST) - ZEND_BOOL_NOT_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ECHO_SPEC_CONST): - VM_TRACE(ZEND_ECHO_SPEC_CONST) - ZEND_ECHO_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPZ_SPEC_CONST): - VM_TRACE(ZEND_JMPZ_SPEC_CONST) - ZEND_JMPZ_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPNZ_SPEC_CONST): - VM_TRACE(ZEND_JMPNZ_SPEC_CONST) - ZEND_JMPNZ_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPZNZ_SPEC_CONST): - VM_TRACE(ZEND_JMPZNZ_SPEC_CONST) - ZEND_JMPZNZ_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPZ_EX_SPEC_CONST): - VM_TRACE(ZEND_JMPZ_EX_SPEC_CONST) - ZEND_JMPZ_EX_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPNZ_EX_SPEC_CONST): - VM_TRACE(ZEND_JMPNZ_EX_SPEC_CONST) - ZEND_JMPNZ_EX_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_RETURN_SPEC_CONST): - VM_TRACE(ZEND_RETURN_SPEC_CONST) -{ - USE_OPLINE - zval *retval_ptr; - zval *return_value; - zend_free_op free_op1; - - retval_ptr = RT_CONSTANT(opline, opline->op1); - return_value = EX(return_value); - if (IS_CONST == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(retval_ptr) == IS_UNDEF)) { - SAVE_OPLINE(); - retval_ptr = ZVAL_UNDEFINED_OP1(); - if (return_value) { - ZVAL_NULL(return_value); - } - } else if (!return_value) { - if (IS_CONST & (IS_VAR|IS_TMP_VAR)) { - if (Z_REFCOUNTED_P(free_op1) && !Z_DELREF_P(free_op1)) { - SAVE_OPLINE(); - rc_dtor_func(Z_COUNTED_P(free_op1)); - } - } - } else { - if ((IS_CONST & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (IS_CONST == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(return_value))) { - Z_ADDREF_P(return_value); - } - } - } else if (IS_CONST == IS_CV) { - do { - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - if (EXPECTED(!Z_OPT_ISREF_P(retval_ptr))) { - if (EXPECTED(!(EX_CALL_INFO() & ZEND_CALL_CODE))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (GC_MAY_LEAK(ref)) { - gc_possible_root(ref); - } - ZVAL_NULL(retval_ptr); - break; - } else { - Z_ADDREF_P(retval_ptr); - } - } else { - retval_ptr = Z_REFVAL_P(retval_ptr); - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } - } - ZVAL_COPY_VALUE(return_value, retval_ptr); - } while (0); - } else /* if (IS_CONST == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - - retval_ptr = Z_REFVAL_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } else { - ZVAL_COPY_VALUE(return_value, retval_ptr); - } - } - } - goto zend_leave_helper_SPEC_LABEL; -} - - HYBRID_CASE(ZEND_RETURN_BY_REF_SPEC_CONST): - VM_TRACE(ZEND_RETURN_BY_REF_SPEC_CONST) - ZEND_RETURN_BY_REF_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GENERATOR_RETURN_SPEC_CONST): - VM_TRACE(ZEND_GENERATOR_RETURN_SPEC_CONST) - ZEND_GENERATOR_RETURN_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_THROW_SPEC_CONST): - VM_TRACE(ZEND_THROW_SPEC_CONST) - ZEND_THROW_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CATCH_SPEC_CONST): - VM_TRACE(ZEND_CATCH_SPEC_CONST) - ZEND_CATCH_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAL_SPEC_CONST): - VM_TRACE(ZEND_SEND_VAL_SPEC_CONST) - ZEND_SEND_VAL_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAL_EX_SPEC_CONST): - VM_TRACE(ZEND_SEND_VAL_EX_SPEC_CONST) - ZEND_SEND_VAL_EX_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAL_EX_SPEC_CONST_QUICK): - VM_TRACE(ZEND_SEND_VAL_EX_SPEC_CONST_QUICK) - ZEND_SEND_VAL_EX_SPEC_CONST_QUICK_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_USER_SPEC_CONST): - VM_TRACE(ZEND_SEND_USER_SPEC_CONST) - ZEND_SEND_USER_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BOOL_SPEC_CONST): - VM_TRACE(ZEND_BOOL_SPEC_CONST) - ZEND_BOOL_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CLONE_SPEC_CONST): - VM_TRACE(ZEND_CLONE_SPEC_CONST) - ZEND_CLONE_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CAST_SPEC_CONST): - VM_TRACE(ZEND_CAST_SPEC_CONST) - ZEND_CAST_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INCLUDE_OR_EVAL_SPEC_CONST): - VM_TRACE(ZEND_INCLUDE_OR_EVAL_SPEC_CONST) - ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FE_RESET_R_SPEC_CONST): - VM_TRACE(ZEND_FE_RESET_R_SPEC_CONST) - ZEND_FE_RESET_R_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FE_RESET_RW_SPEC_CONST): - VM_TRACE(ZEND_FE_RESET_RW_SPEC_CONST) - ZEND_FE_RESET_RW_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMP_SET_SPEC_CONST): - VM_TRACE(ZEND_JMP_SET_SPEC_CONST) - ZEND_JMP_SET_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_COALESCE_SPEC_CONST): - VM_TRACE(ZEND_COALESCE_SPEC_CONST) - ZEND_COALESCE_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_QM_ASSIGN_SPEC_CONST): - VM_TRACE(ZEND_QM_ASSIGN_SPEC_CONST) - ZEND_QM_ASSIGN_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DECLARE_CLASS_SPEC_CONST): - VM_TRACE(ZEND_DECLARE_CLASS_SPEC_CONST) - ZEND_DECLARE_CLASS_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_FROM_SPEC_CONST): - VM_TRACE(ZEND_YIELD_FROM_SPEC_CONST) - ZEND_YIELD_FROM_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_STRLEN_SPEC_CONST): - VM_TRACE(ZEND_STRLEN_SPEC_CONST) - ZEND_STRLEN_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_TYPE_CHECK_SPEC_CONST): - VM_TRACE(ZEND_TYPE_CHECK_SPEC_CONST) - ZEND_TYPE_CHECK_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DEFINED_SPEC_CONST): - VM_TRACE(ZEND_DEFINED_SPEC_CONST) - ZEND_DEFINED_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_QM_ASSIGN_LONG_SPEC_CONST): - VM_TRACE(ZEND_QM_ASSIGN_LONG_SPEC_CONST) - ZEND_QM_ASSIGN_LONG_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_QM_ASSIGN_DOUBLE_SPEC_CONST): - VM_TRACE(ZEND_QM_ASSIGN_DOUBLE_SPEC_CONST) - ZEND_QM_ASSIGN_DOUBLE_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_QM_ASSIGN_NOREF_SPEC_CONST): - VM_TRACE(ZEND_QM_ASSIGN_NOREF_SPEC_CONST) - ZEND_QM_ASSIGN_NOREF_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAL_SIMPLE_SPEC_CONST): - VM_TRACE(ZEND_SEND_VAL_SIMPLE_SPEC_CONST) - ZEND_SEND_VAL_SIMPLE_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAL_EX_SIMPLE_SPEC_CONST): - VM_TRACE(ZEND_SEND_VAL_EX_SIMPLE_SPEC_CONST) - ZEND_SEND_VAL_EX_SIMPLE_SPEC_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_SPEC_CONST_CONST): - VM_TRACE(ZEND_ADD_SPEC_CONST_CONST) - ZEND_ADD_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SUB_SPEC_CONST_CONST): - VM_TRACE(ZEND_SUB_SPEC_CONST_CONST) - ZEND_SUB_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MUL_SPEC_CONST_CONST): - VM_TRACE(ZEND_MUL_SPEC_CONST_CONST) - ZEND_MUL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DIV_SPEC_CONST_CONST): - VM_TRACE(ZEND_DIV_SPEC_CONST_CONST) - ZEND_DIV_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MOD_SPEC_CONST_CONST): - VM_TRACE(ZEND_MOD_SPEC_CONST_CONST) - ZEND_MOD_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SL_SPEC_CONST_CONST): - VM_TRACE(ZEND_SL_SPEC_CONST_CONST) - ZEND_SL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SR_SPEC_CONST_CONST): - VM_TRACE(ZEND_SR_SPEC_CONST_CONST) - ZEND_SR_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POW_SPEC_CONST_CONST): - VM_TRACE(ZEND_POW_SPEC_CONST_CONST) - ZEND_POW_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_IDENTICAL_SPEC_CONST_CONST): - VM_TRACE(ZEND_IS_IDENTICAL_SPEC_CONST_CONST) - ZEND_IS_IDENTICAL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_IDENTICAL_SPEC_CONST_CONST): - VM_TRACE(ZEND_IS_NOT_IDENTICAL_SPEC_CONST_CONST) - ZEND_IS_NOT_IDENTICAL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_CONST_CONST): - VM_TRACE(ZEND_IS_EQUAL_SPEC_CONST_CONST) - ZEND_IS_EQUAL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST) - ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_SPEC_CONST_CONST): - VM_TRACE(ZEND_IS_SMALLER_SPEC_CONST_CONST) - ZEND_IS_SMALLER_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST) - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SPACESHIP_SPEC_CONST_CONST): - VM_TRACE(ZEND_SPACESHIP_SPEC_CONST_CONST) - ZEND_SPACESHIP_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BW_OR_SPEC_CONST_CONST): - VM_TRACE(ZEND_BW_OR_SPEC_CONST_CONST) - ZEND_BW_OR_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BW_AND_SPEC_CONST_CONST): - VM_TRACE(ZEND_BW_AND_SPEC_CONST_CONST) - ZEND_BW_AND_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BW_XOR_SPEC_CONST_CONST): - VM_TRACE(ZEND_BW_XOR_SPEC_CONST_CONST) - ZEND_BW_XOR_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BOOL_XOR_SPEC_CONST_CONST): - VM_TRACE(ZEND_BOOL_XOR_SPEC_CONST_CONST) - ZEND_BOOL_XOR_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_SPEC_CONST_CONST): - VM_TRACE(ZEND_FETCH_DIM_R_SPEC_CONST_CONST) - ZEND_FETCH_DIM_R_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_IS_SPEC_CONST_CONST): - VM_TRACE(ZEND_FETCH_DIM_IS_SPEC_CONST_CONST) - ZEND_FETCH_DIM_IS_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CONST): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CONST) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_R_SPEC_CONST_CONST): - VM_TRACE(ZEND_FETCH_OBJ_R_SPEC_CONST_CONST) - ZEND_FETCH_OBJ_R_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_IS_SPEC_CONST_CONST): - VM_TRACE(ZEND_FETCH_OBJ_IS_SPEC_CONST_CONST) - ZEND_FETCH_OBJ_IS_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CONST): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CONST) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_LIST_R_SPEC_CONST_CONST): - VM_TRACE(ZEND_FETCH_LIST_R_SPEC_CONST_CONST) - ZEND_FETCH_LIST_R_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FAST_CONCAT_SPEC_CONST_CONST): - VM_TRACE(ZEND_FAST_CONCAT_SPEC_CONST_CONST) - ZEND_FAST_CONCAT_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_METHOD_CALL_SPEC_CONST_CONST): - VM_TRACE(ZEND_INIT_METHOD_CALL_SPEC_CONST_CONST) - ZEND_INIT_METHOD_CALL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CONST): - VM_TRACE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CONST) - ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_USER_CALL_SPEC_CONST_CONST): - VM_TRACE(ZEND_INIT_USER_CALL_SPEC_CONST_CONST) - ZEND_INIT_USER_CALL_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_CLASS_CONSTANT_SPEC_CONST_CONST): - VM_TRACE(ZEND_FETCH_CLASS_CONSTANT_SPEC_CONST_CONST) - ZEND_FETCH_CLASS_CONSTANT_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CONST): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CONST) - ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_CONST_CONST): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_CONST_CONST) - ZEND_INIT_ARRAY_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CONST): - VM_TRACE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CONST) - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CONST): - VM_TRACE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CONST) - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CONST): - VM_TRACE(ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CONST) - ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DECLARE_CLASS_DELAYED_SPEC_CONST_CONST): - VM_TRACE(ZEND_DECLARE_CLASS_DELAYED_SPEC_CONST_CONST) - ZEND_DECLARE_CLASS_DELAYED_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DECLARE_CONST_SPEC_CONST_CONST): - VM_TRACE(ZEND_DECLARE_CONST_SPEC_CONST_CONST) - ZEND_DECLARE_CONST_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_CONST_CONST): - VM_TRACE(ZEND_YIELD_SPEC_CONST_CONST) - ZEND_YIELD_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SWITCH_LONG_SPEC_CONST_CONST): - VM_TRACE(ZEND_SWITCH_LONG_SPEC_CONST_CONST) - ZEND_SWITCH_LONG_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SWITCH_STRING_SPEC_CONST_CONST): - VM_TRACE(ZEND_SWITCH_STRING_SPEC_CONST_CONST) - ZEND_SWITCH_STRING_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IN_ARRAY_SPEC_CONST_CONST): - VM_TRACE(ZEND_IN_ARRAY_SPEC_CONST_CONST) - ZEND_IN_ARRAY_SPEC_CONST_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_ADD_SPEC_CONST_TMPVARCV) - ZEND_ADD_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SUB_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_SUB_SPEC_CONST_TMPVARCV) - ZEND_SUB_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MOD_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_MOD_SPEC_CONST_TMPVARCV) - ZEND_MOD_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SL_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_SL_SPEC_CONST_TMPVARCV) - ZEND_SL_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SR_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_SR_SPEC_CONST_TMPVARCV) - ZEND_SR_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV) - ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPZ) - ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPNZ) - ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV) - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPZ) - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPNZ) - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV) - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SUB_LONG_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_SUB_LONG_SPEC_CONST_TMPVARCV) - ZEND_SUB_LONG_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV) - ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV) - ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ) - ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ) - ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV) - ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ) - ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ) - ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV) - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ) - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ) - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV) - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ) - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ) - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_INDEX_SPEC_CONST_TMPVARCV): - VM_TRACE(ZEND_FETCH_DIM_R_INDEX_SPEC_CONST_TMPVARCV) - ZEND_FETCH_DIM_R_INDEX_SPEC_CONST_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DIV_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_DIV_SPEC_CONST_TMPVAR) - ZEND_DIV_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POW_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_POW_SPEC_CONST_TMPVAR) - ZEND_POW_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CONCAT_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_CONCAT_SPEC_CONST_TMPVAR) - ZEND_CONCAT_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SPACESHIP_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_SPACESHIP_SPEC_CONST_TMPVAR) - ZEND_SPACESHIP_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR) - ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR) - ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR) - ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR) - ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_LIST_R_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_FETCH_LIST_R_SPEC_CONST_TMPVAR) - ZEND_FETCH_LIST_R_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR) - ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR) - ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR) - ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR) - ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR) - ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR) - ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR) - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR) - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_TMPVAR): - VM_TRACE(ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_TMPVAR) - ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_CONST_TMP): - VM_TRACE(ZEND_YIELD_SPEC_CONST_TMP) - ZEND_YIELD_SPEC_CONST_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_CONST_VAR): - VM_TRACE(ZEND_YIELD_SPEC_CONST_VAR) - ZEND_YIELD_SPEC_CONST_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_R_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_FETCH_R_SPEC_CONST_UNUSED) - ZEND_FETCH_R_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_W_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_FETCH_W_SPEC_CONST_UNUSED) - ZEND_FETCH_W_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_RW_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_FETCH_RW_SPEC_CONST_UNUSED) - ZEND_FETCH_RW_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_FUNC_ARG_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_FETCH_FUNC_ARG_SPEC_CONST_UNUSED) - ZEND_FETCH_FUNC_ARG_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_UNSET_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_FETCH_UNSET_SPEC_CONST_UNUSED) - ZEND_FETCH_UNSET_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_IS_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_FETCH_IS_SPEC_CONST_UNUSED) - ZEND_FETCH_IS_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_UNUSED) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_UNUSED) - ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_VERIFY_RETURN_TYPE_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_VERIFY_RETURN_TYPE_SPEC_CONST_UNUSED) - ZEND_VERIFY_RETURN_TYPE_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_NEW_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_NEW_SPEC_CONST_UNUSED) - ZEND_NEW_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_UNUSED) - ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_CONST_UNUSED) - ZEND_INIT_ARRAY_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_VAR_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_UNSET_VAR_SPEC_CONST_UNUSED) - ZEND_UNSET_VAR_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_UNUSED) - ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DECLARE_LAMBDA_FUNCTION_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_DECLARE_LAMBDA_FUNCTION_SPEC_CONST_UNUSED) - ZEND_DECLARE_LAMBDA_FUNCTION_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_YIELD_SPEC_CONST_UNUSED) - ZEND_YIELD_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_COUNT_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_COUNT_SPEC_CONST_UNUSED) - ZEND_COUNT_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GET_CLASS_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_GET_CLASS_SPEC_CONST_UNUSED) - ZEND_GET_CLASS_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GET_TYPE_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_GET_TYPE_SPEC_CONST_UNUSED) - ZEND_GET_TYPE_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FUNC_GET_ARGS_SPEC_CONST_UNUSED): - VM_TRACE(ZEND_FUNC_GET_ARGS_SPEC_CONST_UNUSED) - ZEND_FUNC_GET_ARGS_SPEC_CONST_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DIV_SPEC_CONST_CV): - VM_TRACE(ZEND_DIV_SPEC_CONST_CV) - ZEND_DIV_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POW_SPEC_CONST_CV): - VM_TRACE(ZEND_POW_SPEC_CONST_CV) - ZEND_POW_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CONCAT_SPEC_CONST_CV): - VM_TRACE(ZEND_CONCAT_SPEC_CONST_CV) - ZEND_CONCAT_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SPACESHIP_SPEC_CONST_CV): - VM_TRACE(ZEND_SPACESHIP_SPEC_CONST_CV) - ZEND_SPACESHIP_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_SPEC_CONST_CV): - VM_TRACE(ZEND_FETCH_DIM_R_SPEC_CONST_CV) - ZEND_FETCH_DIM_R_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_IS_SPEC_CONST_CV): - VM_TRACE(ZEND_FETCH_DIM_IS_SPEC_CONST_CV) - ZEND_FETCH_DIM_IS_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CV): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CV) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_R_SPEC_CONST_CV): - VM_TRACE(ZEND_FETCH_OBJ_R_SPEC_CONST_CV) - ZEND_FETCH_OBJ_R_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_IS_SPEC_CONST_CV): - VM_TRACE(ZEND_FETCH_OBJ_IS_SPEC_CONST_CV) - ZEND_FETCH_OBJ_IS_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CV): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CV) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_LIST_R_SPEC_CONST_CV): - VM_TRACE(ZEND_FETCH_LIST_R_SPEC_CONST_CV) - ZEND_FETCH_LIST_R_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FAST_CONCAT_SPEC_CONST_CV): - VM_TRACE(ZEND_FAST_CONCAT_SPEC_CONST_CV) - ZEND_FAST_CONCAT_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_METHOD_CALL_SPEC_CONST_CV): - VM_TRACE(ZEND_INIT_METHOD_CALL_SPEC_CONST_CV) - ZEND_INIT_METHOD_CALL_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CV): - VM_TRACE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CV) - ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_USER_CALL_SPEC_CONST_CV): - VM_TRACE(ZEND_INIT_USER_CALL_SPEC_CONST_CV) - ZEND_INIT_USER_CALL_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CV): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CV) - ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_CONST_CV): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_CONST_CV) - ZEND_INIT_ARRAY_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CV): - VM_TRACE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CV) - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CV): - VM_TRACE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CV) - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CV): - VM_TRACE(ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CV) - ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_CONST_CV): - VM_TRACE(ZEND_YIELD_SPEC_CONST_CV) - ZEND_YIELD_SPEC_CONST_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_QM_ASSIGN_LONG_SPEC_TMPVARCV): - VM_TRACE(ZEND_QM_ASSIGN_LONG_SPEC_TMPVARCV) - ZEND_QM_ASSIGN_LONG_SPEC_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_QM_ASSIGN_DOUBLE_SPEC_TMPVARCV): - VM_TRACE(ZEND_QM_ASSIGN_DOUBLE_SPEC_TMPVARCV) - ZEND_QM_ASSIGN_DOUBLE_SPEC_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV): - VM_TRACE(ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV) - ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_ADD_SPEC_TMPVARCV_CONST) - ZEND_ADD_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SUB_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_SUB_SPEC_TMPVARCV_CONST) - ZEND_SUB_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MUL_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_MUL_SPEC_TMPVARCV_CONST) - ZEND_MUL_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MOD_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_MOD_SPEC_TMPVARCV_CONST) - ZEND_MOD_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SL_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_SL_SPEC_TMPVARCV_CONST) - ZEND_SL_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SR_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_SR_SPEC_TMPVARCV_CONST) - ZEND_SR_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST) - ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPZ) - ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPNZ) - ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST) - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPZ) - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPNZ) - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BW_OR_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_BW_OR_SPEC_TMPVARCV_CONST) - ZEND_BW_OR_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BW_AND_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_BW_AND_SPEC_TMPVARCV_CONST) - ZEND_BW_AND_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BW_XOR_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_BW_XOR_SPEC_TMPVARCV_CONST) - ZEND_BW_XOR_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CONST) - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SWITCH_LONG_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_SWITCH_LONG_SPEC_TMPVARCV_CONST) - ZEND_SWITCH_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SWITCH_STRING_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_SWITCH_STRING_SPEC_TMPVARCV_CONST) - ZEND_SWITCH_STRING_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST) - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_LONG_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_ADD_LONG_SPEC_TMPVARCV_CONST) - ZEND_ADD_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_DOUBLE_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_ADD_DOUBLE_SPEC_TMPVARCV_CONST) - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST) - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SUB_LONG_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_SUB_LONG_SPEC_TMPVARCV_CONST) - ZEND_SUB_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST) - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST) - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MUL_LONG_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_MUL_LONG_SPEC_TMPVARCV_CONST) - ZEND_MUL_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MUL_DOUBLE_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_MUL_DOUBLE_SPEC_TMPVARCV_CONST) - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST) - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ): - VM_TRACE(ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ) - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ): - VM_TRACE(ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ) - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST) - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ): - VM_TRACE(ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ): - VM_TRACE(ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST) - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ) - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ) - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST) - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST) - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ) - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ) - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST) - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST) - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ) - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ) - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST) - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_ADD_SPEC_TMPVARCV_TMPVARCV) - ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SUB_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_SUB_SPEC_TMPVARCV_TMPVARCV) - ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MUL_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_MUL_SPEC_TMPVARCV_TMPVARCV) - ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MOD_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_MOD_SPEC_TMPVARCV_TMPVARCV) - ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SL_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_SL_SPEC_TMPVARCV_TMPVARCV) - ZEND_SL_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SR_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_SR_SPEC_TMPVARCV_TMPVARCV) - ZEND_SR_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV) - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ) - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ) - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV) - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ) - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ) - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV) - ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV) - ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV) - ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV) - ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV) - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV) - ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV) - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV) - ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV) - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV) - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ): - VM_TRACE(ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR): - VM_TRACE(ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR) - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CV): - VM_TRACE(ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CV) - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BW_NOT_SPEC_TMPVAR): - VM_TRACE(ZEND_BW_NOT_SPEC_TMPVAR) - ZEND_BW_NOT_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BOOL_NOT_SPEC_TMPVAR): - VM_TRACE(ZEND_BOOL_NOT_SPEC_TMPVAR) - ZEND_BOOL_NOT_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ECHO_SPEC_TMPVAR): - VM_TRACE(ZEND_ECHO_SPEC_TMPVAR) - ZEND_ECHO_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPZ_SPEC_TMPVAR): - VM_TRACE(ZEND_JMPZ_SPEC_TMPVAR) - ZEND_JMPZ_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPNZ_SPEC_TMPVAR): - VM_TRACE(ZEND_JMPNZ_SPEC_TMPVAR) - ZEND_JMPNZ_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPZNZ_SPEC_TMPVAR): - VM_TRACE(ZEND_JMPZNZ_SPEC_TMPVAR) - ZEND_JMPZNZ_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPZ_EX_SPEC_TMPVAR): - VM_TRACE(ZEND_JMPZ_EX_SPEC_TMPVAR) - ZEND_JMPZ_EX_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPNZ_EX_SPEC_TMPVAR): - VM_TRACE(ZEND_JMPNZ_EX_SPEC_TMPVAR) - ZEND_JMPNZ_EX_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FREE_SPEC_TMPVAR): - VM_TRACE(ZEND_FREE_SPEC_TMPVAR) - ZEND_FREE_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FE_FREE_SPEC_TMPVAR): - VM_TRACE(ZEND_FE_FREE_SPEC_TMPVAR) - ZEND_FE_FREE_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAL_SPEC_TMPVAR): - VM_TRACE(ZEND_SEND_VAL_SPEC_TMPVAR) - ZEND_SEND_VAL_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BOOL_SPEC_TMPVAR): - VM_TRACE(ZEND_BOOL_SPEC_TMPVAR) - ZEND_BOOL_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CLONE_SPEC_TMPVAR): - VM_TRACE(ZEND_CLONE_SPEC_TMPVAR) - ZEND_CLONE_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR): - VM_TRACE(ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR) - ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_STRLEN_SPEC_TMPVAR): - VM_TRACE(ZEND_STRLEN_SPEC_TMPVAR) - ZEND_STRLEN_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_TYPE_CHECK_SPEC_TMPVAR): - VM_TRACE(ZEND_TYPE_CHECK_SPEC_TMPVAR) - ZEND_TYPE_CHECK_SPEC_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DIV_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_DIV_SPEC_TMPVAR_CONST) - ZEND_DIV_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POW_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_POW_SPEC_TMPVAR_CONST) - ZEND_POW_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CONCAT_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_CONCAT_SPEC_TMPVAR_CONST) - ZEND_CONCAT_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_IS_EQUAL_SPEC_TMPVAR_CONST) - ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPZ): - VM_TRACE(ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPZ) - ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPNZ): - VM_TRACE(ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPNZ) - ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST) - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPZ) - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPNZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPNZ) - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SPACESHIP_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_SPACESHIP_SPEC_TMPVAR_CONST) - ZEND_SPACESHIP_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BOOL_XOR_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_BOOL_XOR_SPEC_TMPVAR_CONST) - ZEND_BOOL_XOR_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST) - ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST) - ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CONST) - ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST) - ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST) - ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST) - ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CASE_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_CASE_SPEC_TMPVAR_CONST) - ZEND_CASE_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST) - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST) - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CONST) - ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INSTANCEOF_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_INSTANCEOF_SPEC_TMPVAR_CONST) - ZEND_INSTANCEOF_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_CONST): - VM_TRACE(ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_CONST) - ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV): - VM_TRACE(ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV) - ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DIV_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_DIV_SPEC_TMPVAR_TMPVAR) - ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POW_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_POW_SPEC_TMPVAR_TMPVAR) - ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CONCAT_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_CONCAT_SPEC_TMPVAR_TMPVAR) - ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR) - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ): - VM_TRACE(ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ) - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ): - VM_TRACE(ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ) - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR) - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ) - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ) - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR) - ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR) - ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR) - ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR) - ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR) - ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR) - ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR) - ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR) - ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CASE_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_CASE_SPEC_TMPVAR_TMPVAR) - ZEND_CASE_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR) - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR) - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR): - VM_TRACE(ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR) - ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INSTANCEOF_SPEC_TMPVAR_VAR): - VM_TRACE(ZEND_INSTANCEOF_SPEC_TMPVAR_VAR) - ZEND_INSTANCEOF_SPEC_TMPVAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_R_SPEC_TMPVAR_UNUSED): - VM_TRACE(ZEND_FETCH_R_SPEC_TMPVAR_UNUSED) - ZEND_FETCH_R_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_W_SPEC_TMPVAR_UNUSED): - VM_TRACE(ZEND_FETCH_W_SPEC_TMPVAR_UNUSED) - ZEND_FETCH_W_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED): - VM_TRACE(ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED) - ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED): - VM_TRACE(ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED) - ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED): - VM_TRACE(ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED) - ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED): - VM_TRACE(ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED) - ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED): - VM_TRACE(ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED) - ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED): - VM_TRACE(ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED) - ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED): - VM_TRACE(ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED) - ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_COUNT_SPEC_TMPVAR_UNUSED): - VM_TRACE(ZEND_COUNT_SPEC_TMPVAR_UNUSED) - ZEND_COUNT_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GET_CLASS_SPEC_TMPVAR_UNUSED): - VM_TRACE(ZEND_GET_CLASS_SPEC_TMPVAR_UNUSED) - ZEND_GET_CLASS_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_COPY_TMP_SPEC_TMPVAR_UNUSED): - VM_TRACE(ZEND_COPY_TMP_SPEC_TMPVAR_UNUSED) - ZEND_COPY_TMP_SPEC_TMPVAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DIV_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_DIV_SPEC_TMPVAR_CV) - ZEND_DIV_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POW_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_POW_SPEC_TMPVAR_CV) - ZEND_POW_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CONCAT_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_CONCAT_SPEC_TMPVAR_CV) - ZEND_CONCAT_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SPACESHIP_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_SPACESHIP_SPEC_TMPVAR_CV) - ZEND_SPACESHIP_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV) - ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV) - ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CV) - ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV) - ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FAST_CONCAT_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_FAST_CONCAT_SPEC_TMPVAR_CV) - ZEND_FAST_CONCAT_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV) - ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CASE_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_CASE_SPEC_TMPVAR_CV) - ZEND_CASE_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV) - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV) - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CV): - VM_TRACE(ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CV) - ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_RETURN_SPEC_TMP): - VM_TRACE(ZEND_RETURN_SPEC_TMP) -{ - USE_OPLINE - zval *retval_ptr; - zval *return_value; - zend_free_op free_op1; - - retval_ptr = _get_zval_ptr_tmp(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - return_value = EX(return_value); - if (IS_TMP_VAR == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(retval_ptr) == IS_UNDEF)) { - SAVE_OPLINE(); - retval_ptr = ZVAL_UNDEFINED_OP1(); - if (return_value) { - ZVAL_NULL(return_value); - } - } else if (!return_value) { - if (IS_TMP_VAR & (IS_VAR|IS_TMP_VAR)) { - if (Z_REFCOUNTED_P(free_op1) && !Z_DELREF_P(free_op1)) { - SAVE_OPLINE(); - rc_dtor_func(Z_COUNTED_P(free_op1)); - } - } - } else { - if ((IS_TMP_VAR & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (IS_TMP_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(return_value))) { - Z_ADDREF_P(return_value); - } - } - } else if (IS_TMP_VAR == IS_CV) { - do { - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - if (EXPECTED(!Z_OPT_ISREF_P(retval_ptr))) { - if (EXPECTED(!(EX_CALL_INFO() & ZEND_CALL_CODE))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (GC_MAY_LEAK(ref)) { - gc_possible_root(ref); - } - ZVAL_NULL(retval_ptr); - break; - } else { - Z_ADDREF_P(retval_ptr); - } - } else { - retval_ptr = Z_REFVAL_P(retval_ptr); - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } - } - ZVAL_COPY_VALUE(return_value, retval_ptr); - } while (0); - } else /* if (IS_TMP_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - - retval_ptr = Z_REFVAL_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } else { - ZVAL_COPY_VALUE(return_value, retval_ptr); - } - } - } - goto zend_leave_helper_SPEC_LABEL; -} - - HYBRID_CASE(ZEND_RETURN_BY_REF_SPEC_TMP): - VM_TRACE(ZEND_RETURN_BY_REF_SPEC_TMP) - ZEND_RETURN_BY_REF_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GENERATOR_RETURN_SPEC_TMP): - VM_TRACE(ZEND_GENERATOR_RETURN_SPEC_TMP) - ZEND_GENERATOR_RETURN_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_THROW_SPEC_TMP): - VM_TRACE(ZEND_THROW_SPEC_TMP) - ZEND_THROW_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAL_EX_SPEC_TMP): - VM_TRACE(ZEND_SEND_VAL_EX_SPEC_TMP) - ZEND_SEND_VAL_EX_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAL_EX_SPEC_TMP_QUICK): - VM_TRACE(ZEND_SEND_VAL_EX_SPEC_TMP_QUICK) - ZEND_SEND_VAL_EX_SPEC_TMP_QUICK_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_USER_SPEC_TMP): - VM_TRACE(ZEND_SEND_USER_SPEC_TMP) - ZEND_SEND_USER_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CAST_SPEC_TMP): - VM_TRACE(ZEND_CAST_SPEC_TMP) - ZEND_CAST_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FE_RESET_R_SPEC_TMP): - VM_TRACE(ZEND_FE_RESET_R_SPEC_TMP) - ZEND_FE_RESET_R_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FE_RESET_RW_SPEC_TMP): - VM_TRACE(ZEND_FE_RESET_RW_SPEC_TMP) - ZEND_FE_RESET_RW_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_END_SILENCE_SPEC_TMP): - VM_TRACE(ZEND_END_SILENCE_SPEC_TMP) - ZEND_END_SILENCE_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMP_SET_SPEC_TMP): - VM_TRACE(ZEND_JMP_SET_SPEC_TMP) - ZEND_JMP_SET_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_COALESCE_SPEC_TMP): - VM_TRACE(ZEND_COALESCE_SPEC_TMP) - ZEND_COALESCE_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_QM_ASSIGN_SPEC_TMP): - VM_TRACE(ZEND_QM_ASSIGN_SPEC_TMP) - ZEND_QM_ASSIGN_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_FROM_SPEC_TMP): - VM_TRACE(ZEND_YIELD_FROM_SPEC_TMP) - ZEND_YIELD_FROM_SPEC_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_IDENTICAL_SPEC_TMP_CONST): - VM_TRACE(ZEND_IS_IDENTICAL_SPEC_TMP_CONST) - ZEND_IS_IDENTICAL_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_IDENTICAL_SPEC_TMP_CONST): - VM_TRACE(ZEND_IS_NOT_IDENTICAL_SPEC_TMP_CONST) - ZEND_IS_NOT_IDENTICAL_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CONST): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CONST) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CONST): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CONST) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ROPE_ADD_SPEC_TMP_CONST): - VM_TRACE(ZEND_ROPE_ADD_SPEC_TMP_CONST) - ZEND_ROPE_ADD_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ROPE_END_SPEC_TMP_CONST): - VM_TRACE(ZEND_ROPE_END_SPEC_TMP_CONST) - ZEND_ROPE_END_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CONST): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CONST) - ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_TMP_CONST): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_TMP_CONST) - ZEND_INIT_ARRAY_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_TMP_CONST): - VM_TRACE(ZEND_YIELD_SPEC_TMP_CONST) - ZEND_YIELD_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IN_ARRAY_SPEC_TMP_CONST): - VM_TRACE(ZEND_IN_ARRAY_SPEC_TMP_CONST) - ZEND_IN_ARRAY_SPEC_TMP_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ROPE_ADD_SPEC_TMP_TMPVAR): - VM_TRACE(ZEND_ROPE_ADD_SPEC_TMP_TMPVAR) - ZEND_ROPE_ADD_SPEC_TMP_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ROPE_END_SPEC_TMP_TMPVAR): - VM_TRACE(ZEND_ROPE_END_SPEC_TMP_TMPVAR) - ZEND_ROPE_END_SPEC_TMP_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR) - ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR) - ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_IDENTICAL_SPEC_TMP_TMP): - VM_TRACE(ZEND_IS_IDENTICAL_SPEC_TMP_TMP) - ZEND_IS_IDENTICAL_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_IDENTICAL_SPEC_TMP_TMP): - VM_TRACE(ZEND_IS_NOT_IDENTICAL_SPEC_TMP_TMP) - ZEND_IS_NOT_IDENTICAL_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_TMP_TMP): - VM_TRACE(ZEND_YIELD_SPEC_TMP_TMP) - ZEND_YIELD_SPEC_TMP_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_TMP_VAR): - VM_TRACE(ZEND_YIELD_SPEC_TMP_VAR) - ZEND_YIELD_SPEC_TMP_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_UNUSED): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_UNUSED) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_VERIFY_RETURN_TYPE_SPEC_TMP_UNUSED): - VM_TRACE(ZEND_VERIFY_RETURN_TYPE_SPEC_TMP_UNUSED) - ZEND_VERIFY_RETURN_TYPE_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_UNUSED): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_UNUSED) - ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_TMP_UNUSED): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_TMP_UNUSED) - ZEND_INIT_ARRAY_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_TMP_UNUSED): - VM_TRACE(ZEND_YIELD_SPEC_TMP_UNUSED) - ZEND_YIELD_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GET_TYPE_SPEC_TMP_UNUSED): - VM_TRACE(ZEND_GET_TYPE_SPEC_TMP_UNUSED) - ZEND_GET_TYPE_SPEC_TMP_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CV): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CV) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CV): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CV) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ROPE_ADD_SPEC_TMP_CV): - VM_TRACE(ZEND_ROPE_ADD_SPEC_TMP_CV) - ZEND_ROPE_ADD_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ROPE_END_SPEC_TMP_CV): - VM_TRACE(ZEND_ROPE_END_SPEC_TMP_CV) - ZEND_ROPE_END_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CV): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CV) - ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_TMP_CV): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_TMP_CV) - ZEND_INIT_ARRAY_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_TMP_CV): - VM_TRACE(ZEND_YIELD_SPEC_TMP_CV) - ZEND_YIELD_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BIND_LEXICAL_SPEC_TMP_CV): - VM_TRACE(ZEND_BIND_LEXICAL_SPEC_TMP_CV) - ZEND_BIND_LEXICAL_SPEC_TMP_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_SPEC_VAR_RETVAL_UNUSED): - VM_TRACE(ZEND_PRE_INC_SPEC_VAR_RETVAL_UNUSED) - ZEND_PRE_INC_SPEC_VAR_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_SPEC_VAR_RETVAL_USED): - VM_TRACE(ZEND_PRE_INC_SPEC_VAR_RETVAL_USED) - ZEND_PRE_INC_SPEC_VAR_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_DEC_SPEC_VAR_RETVAL_UNUSED): - VM_TRACE(ZEND_PRE_DEC_SPEC_VAR_RETVAL_UNUSED) - ZEND_PRE_DEC_SPEC_VAR_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_DEC_SPEC_VAR_RETVAL_USED): - VM_TRACE(ZEND_PRE_DEC_SPEC_VAR_RETVAL_USED) - ZEND_PRE_DEC_SPEC_VAR_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_SPEC_VAR): - VM_TRACE(ZEND_POST_INC_SPEC_VAR) - ZEND_POST_INC_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_DEC_SPEC_VAR): - VM_TRACE(ZEND_POST_DEC_SPEC_VAR) - ZEND_POST_DEC_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_RETURN_SPEC_VAR): - VM_TRACE(ZEND_RETURN_SPEC_VAR) -{ - USE_OPLINE - zval *retval_ptr; - zval *return_value; - zend_free_op free_op1; - - retval_ptr = _get_zval_ptr_var(opline->op1.var, &free_op1 EXECUTE_DATA_CC); - return_value = EX(return_value); - if (IS_VAR == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(retval_ptr) == IS_UNDEF)) { - SAVE_OPLINE(); - retval_ptr = ZVAL_UNDEFINED_OP1(); - if (return_value) { - ZVAL_NULL(return_value); - } - } else if (!return_value) { - if (IS_VAR & (IS_VAR|IS_TMP_VAR)) { - if (Z_REFCOUNTED_P(free_op1) && !Z_DELREF_P(free_op1)) { - SAVE_OPLINE(); - rc_dtor_func(Z_COUNTED_P(free_op1)); - } - } - } else { - if ((IS_VAR & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (IS_VAR == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(return_value))) { - Z_ADDREF_P(return_value); - } - } - } else if (IS_VAR == IS_CV) { - do { - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - if (EXPECTED(!Z_OPT_ISREF_P(retval_ptr))) { - if (EXPECTED(!(EX_CALL_INFO() & ZEND_CALL_CODE))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (GC_MAY_LEAK(ref)) { - gc_possible_root(ref); - } - ZVAL_NULL(retval_ptr); - break; - } else { - Z_ADDREF_P(retval_ptr); - } - } else { - retval_ptr = Z_REFVAL_P(retval_ptr); - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } - } - ZVAL_COPY_VALUE(return_value, retval_ptr); - } while (0); - } else /* if (IS_VAR == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - - retval_ptr = Z_REFVAL_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } else { - ZVAL_COPY_VALUE(return_value, retval_ptr); - } - } - } - goto zend_leave_helper_SPEC_LABEL; -} - - HYBRID_CASE(ZEND_RETURN_BY_REF_SPEC_VAR): - VM_TRACE(ZEND_RETURN_BY_REF_SPEC_VAR) - ZEND_RETURN_BY_REF_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GENERATOR_RETURN_SPEC_VAR): - VM_TRACE(ZEND_GENERATOR_RETURN_SPEC_VAR) - ZEND_GENERATOR_RETURN_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_THROW_SPEC_VAR): - VM_TRACE(ZEND_THROW_SPEC_VAR) - ZEND_THROW_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAR_SPEC_VAR): - VM_TRACE(ZEND_SEND_VAR_SPEC_VAR) - ZEND_SEND_VAR_SPEC_VAR_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAR_NO_REF_SPEC_VAR): - VM_TRACE(ZEND_SEND_VAR_NO_REF_SPEC_VAR) - ZEND_SEND_VAR_NO_REF_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR): - VM_TRACE(ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR) - ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR_QUICK): - VM_TRACE(ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR_QUICK) - ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR_QUICK_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_REF_SPEC_VAR): - VM_TRACE(ZEND_SEND_REF_SPEC_VAR) - ZEND_SEND_REF_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAR_EX_SPEC_VAR): - VM_TRACE(ZEND_SEND_VAR_EX_SPEC_VAR) - ZEND_SEND_VAR_EX_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAR_EX_SPEC_VAR_QUICK): - VM_TRACE(ZEND_SEND_VAR_EX_SPEC_VAR_QUICK) - ZEND_SEND_VAR_EX_SPEC_VAR_QUICK_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_FUNC_ARG_SPEC_VAR): - VM_TRACE(ZEND_SEND_FUNC_ARG_SPEC_VAR) - ZEND_SEND_FUNC_ARG_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_USER_SPEC_VAR): - VM_TRACE(ZEND_SEND_USER_SPEC_VAR) - ZEND_SEND_USER_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CAST_SPEC_VAR): - VM_TRACE(ZEND_CAST_SPEC_VAR) - ZEND_CAST_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FE_RESET_R_SPEC_VAR): - VM_TRACE(ZEND_FE_RESET_R_SPEC_VAR) - ZEND_FE_RESET_R_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FE_RESET_RW_SPEC_VAR): - VM_TRACE(ZEND_FE_RESET_RW_SPEC_VAR) - ZEND_FE_RESET_RW_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FE_FETCH_R_SPEC_VAR): - VM_TRACE(ZEND_FE_FETCH_R_SPEC_VAR) - ZEND_FE_FETCH_R_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FE_FETCH_RW_SPEC_VAR): - VM_TRACE(ZEND_FE_FETCH_RW_SPEC_VAR) - ZEND_FE_FETCH_RW_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMP_SET_SPEC_VAR): - VM_TRACE(ZEND_JMP_SET_SPEC_VAR) - ZEND_JMP_SET_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_COALESCE_SPEC_VAR): - VM_TRACE(ZEND_COALESCE_SPEC_VAR) - ZEND_COALESCE_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_QM_ASSIGN_SPEC_VAR): - VM_TRACE(ZEND_QM_ASSIGN_SPEC_VAR) - ZEND_QM_ASSIGN_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_FROM_SPEC_VAR): - VM_TRACE(ZEND_YIELD_FROM_SPEC_VAR) - ZEND_YIELD_FROM_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAR_SIMPLE_SPEC_VAR): - VM_TRACE(ZEND_SEND_VAR_SIMPLE_SPEC_VAR) - ZEND_SEND_VAR_SIMPLE_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAR_EX_SIMPLE_SPEC_VAR): - VM_TRACE(ZEND_SEND_VAR_EX_SIMPLE_SPEC_VAR) - ZEND_SEND_VAR_EX_SIMPLE_SPEC_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_IDENTICAL_SPEC_VAR_CONST): - VM_TRACE(ZEND_IS_IDENTICAL_SPEC_VAR_CONST) - ZEND_IS_IDENTICAL_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_IDENTICAL_SPEC_VAR_CONST): - VM_TRACE(ZEND_IS_NOT_IDENTICAL_SPEC_VAR_CONST) - ZEND_IS_NOT_IDENTICAL_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CONST): - VM_TRACE(ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CONST) - ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_OP_SPEC_VAR_CONST): - VM_TRACE(ZEND_ASSIGN_DIM_OP_SPEC_VAR_CONST) - ZEND_ASSIGN_DIM_OP_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OP_SPEC_VAR_CONST): - VM_TRACE(ZEND_ASSIGN_OP_SPEC_VAR_CONST) - ZEND_ASSIGN_OP_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_OBJ_SPEC_VAR_CONST): - VM_TRACE(ZEND_PRE_INC_OBJ_SPEC_VAR_CONST) - ZEND_PRE_INC_OBJ_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_OBJ_SPEC_VAR_CONST): - VM_TRACE(ZEND_POST_INC_OBJ_SPEC_VAR_CONST) - ZEND_POST_INC_OBJ_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_W_SPEC_VAR_CONST): - VM_TRACE(ZEND_FETCH_DIM_W_SPEC_VAR_CONST) - ZEND_FETCH_DIM_W_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_RW_SPEC_VAR_CONST): - VM_TRACE(ZEND_FETCH_DIM_RW_SPEC_VAR_CONST) - ZEND_FETCH_DIM_RW_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CONST): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CONST) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_UNSET_SPEC_VAR_CONST): - VM_TRACE(ZEND_FETCH_DIM_UNSET_SPEC_VAR_CONST) - ZEND_FETCH_DIM_UNSET_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_W_SPEC_VAR_CONST): - VM_TRACE(ZEND_FETCH_OBJ_W_SPEC_VAR_CONST) - ZEND_FETCH_OBJ_W_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_RW_SPEC_VAR_CONST): - VM_TRACE(ZEND_FETCH_OBJ_RW_SPEC_VAR_CONST) - ZEND_FETCH_OBJ_RW_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CONST): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CONST) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CONST): - VM_TRACE(ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CONST) - ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_LIST_W_SPEC_VAR_CONST): - VM_TRACE(ZEND_FETCH_LIST_W_SPEC_VAR_CONST) - ZEND_FETCH_LIST_W_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CONST) - ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_TMP) - ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CV) - ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CONST) - ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_TMP) - ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_VAR) - ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CV) - ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_UNUSED): - VM_TRACE(ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_UNUSED) - ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_USED): - VM_TRACE(ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_USED) - ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_CV) - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CONST): - VM_TRACE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CONST) - ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_CLASS_CONSTANT_SPEC_VAR_CONST): - VM_TRACE(ZEND_FETCH_CLASS_CONSTANT_SPEC_VAR_CONST) - ZEND_FETCH_CLASS_CONSTANT_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CONST): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CONST) - ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_VAR_CONST): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_VAR_CONST) - ZEND_INIT_ARRAY_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_DIM_SPEC_VAR_CONST): - VM_TRACE(ZEND_UNSET_DIM_SPEC_VAR_CONST) - ZEND_UNSET_DIM_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_OBJ_SPEC_VAR_CONST): - VM_TRACE(ZEND_UNSET_OBJ_SPEC_VAR_CONST) - ZEND_UNSET_OBJ_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_VAR_CONST): - VM_TRACE(ZEND_YIELD_SPEC_VAR_CONST) - ZEND_YIELD_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IN_ARRAY_SPEC_VAR_CONST): - VM_TRACE(ZEND_IN_ARRAY_SPEC_VAR_CONST) - ZEND_IN_ARRAY_SPEC_VAR_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_OP_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_ASSIGN_OBJ_OP_SPEC_VAR_TMPVAR) - ZEND_ASSIGN_OBJ_OP_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_OP_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_ASSIGN_DIM_OP_SPEC_VAR_TMPVAR) - ZEND_ASSIGN_DIM_OP_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OP_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_ASSIGN_OP_SPEC_VAR_TMPVAR) - ZEND_ASSIGN_OP_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR) - ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR) - ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR) - ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR) - ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR) - ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR) - ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR) - ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR) - ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_LIST_W_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_FETCH_LIST_W_SPEC_VAR_TMPVAR) - ZEND_FETCH_LIST_W_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST) - ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP) - ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV) - ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST) - ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP) - ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR) - ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV) - ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV) - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR) - ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR) - ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR) - ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_DIM_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_UNSET_DIM_SPEC_VAR_TMPVAR) - ZEND_UNSET_DIM_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR): - VM_TRACE(ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR) - ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_IDENTICAL_SPEC_VAR_TMP): - VM_TRACE(ZEND_IS_IDENTICAL_SPEC_VAR_TMP) - ZEND_IS_IDENTICAL_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_IDENTICAL_SPEC_VAR_TMP): - VM_TRACE(ZEND_IS_NOT_IDENTICAL_SPEC_VAR_TMP) - ZEND_IS_NOT_IDENTICAL_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_UNUSED): - VM_TRACE(ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_UNUSED) - ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_USED): - VM_TRACE(ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_USED) - ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_VAR_TMP): - VM_TRACE(ZEND_YIELD_SPEC_VAR_TMP) - ZEND_YIELD_SPEC_VAR_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_IDENTICAL_SPEC_VAR_VAR): - VM_TRACE(ZEND_IS_IDENTICAL_SPEC_VAR_VAR) - ZEND_IS_IDENTICAL_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_IDENTICAL_SPEC_VAR_VAR): - VM_TRACE(ZEND_IS_NOT_IDENTICAL_SPEC_VAR_VAR) - ZEND_IS_NOT_IDENTICAL_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_UNUSED): - VM_TRACE(ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_UNUSED) - ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_USED): - VM_TRACE(ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_USED) - ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_REF_SPEC_VAR_VAR): - VM_TRACE(ZEND_ASSIGN_REF_SPEC_VAR_VAR) - ZEND_ASSIGN_REF_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_VAR_VAR): - VM_TRACE(ZEND_YIELD_SPEC_VAR_VAR) - ZEND_YIELD_SPEC_VAR_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_OP_SPEC_VAR_UNUSED): - VM_TRACE(ZEND_ASSIGN_DIM_OP_SPEC_VAR_UNUSED) - ZEND_ASSIGN_DIM_OP_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_W_SPEC_VAR_UNUSED): - VM_TRACE(ZEND_FETCH_DIM_W_SPEC_VAR_UNUSED) - ZEND_FETCH_DIM_W_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_RW_SPEC_VAR_UNUSED): - VM_TRACE(ZEND_FETCH_DIM_RW_SPEC_VAR_UNUSED) - ZEND_FETCH_DIM_RW_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_UNUSED): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_UNUSED) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CONST) - ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_TMP) - ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_VAR) - ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CV) - ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_UNUSED): - VM_TRACE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_UNUSED) - ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_VERIFY_RETURN_TYPE_SPEC_VAR_UNUSED): - VM_TRACE(ZEND_VERIFY_RETURN_TYPE_SPEC_VAR_UNUSED) - ZEND_VERIFY_RETURN_TYPE_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_NEW_SPEC_VAR_UNUSED): - VM_TRACE(ZEND_NEW_SPEC_VAR_UNUSED) - ZEND_NEW_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_UNUSED): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_UNUSED) - ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_VAR_UNUSED): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_VAR_UNUSED) - ZEND_INIT_ARRAY_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEPARATE_SPEC_VAR_UNUSED): - VM_TRACE(ZEND_SEPARATE_SPEC_VAR_UNUSED) - ZEND_SEPARATE_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_VAR_UNUSED): - VM_TRACE(ZEND_YIELD_SPEC_VAR_UNUSED) - ZEND_YIELD_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MAKE_REF_SPEC_VAR_UNUSED): - VM_TRACE(ZEND_MAKE_REF_SPEC_VAR_UNUSED) - ZEND_MAKE_REF_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GET_TYPE_SPEC_VAR_UNUSED): - VM_TRACE(ZEND_GET_TYPE_SPEC_VAR_UNUSED) - ZEND_GET_TYPE_SPEC_VAR_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CV) - ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_OP_SPEC_VAR_CV): - VM_TRACE(ZEND_ASSIGN_DIM_OP_SPEC_VAR_CV) - ZEND_ASSIGN_DIM_OP_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OP_SPEC_VAR_CV): - VM_TRACE(ZEND_ASSIGN_OP_SPEC_VAR_CV) - ZEND_ASSIGN_OP_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_OBJ_SPEC_VAR_CV): - VM_TRACE(ZEND_PRE_INC_OBJ_SPEC_VAR_CV) - ZEND_PRE_INC_OBJ_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_OBJ_SPEC_VAR_CV): - VM_TRACE(ZEND_POST_INC_OBJ_SPEC_VAR_CV) - ZEND_POST_INC_OBJ_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_W_SPEC_VAR_CV): - VM_TRACE(ZEND_FETCH_DIM_W_SPEC_VAR_CV) - ZEND_FETCH_DIM_W_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_RW_SPEC_VAR_CV): - VM_TRACE(ZEND_FETCH_DIM_RW_SPEC_VAR_CV) - ZEND_FETCH_DIM_RW_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CV): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CV) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_UNSET_SPEC_VAR_CV): - VM_TRACE(ZEND_FETCH_DIM_UNSET_SPEC_VAR_CV) - ZEND_FETCH_DIM_UNSET_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_W_SPEC_VAR_CV): - VM_TRACE(ZEND_FETCH_OBJ_W_SPEC_VAR_CV) - ZEND_FETCH_OBJ_W_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_RW_SPEC_VAR_CV): - VM_TRACE(ZEND_FETCH_OBJ_RW_SPEC_VAR_CV) - ZEND_FETCH_OBJ_RW_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CV): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CV) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CV): - VM_TRACE(ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CV) - ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_LIST_W_SPEC_VAR_CV): - VM_TRACE(ZEND_FETCH_LIST_W_SPEC_VAR_CV) - ZEND_FETCH_LIST_W_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CONST) - ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_TMP) - ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CV) - ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CONST) - ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_TMP) - ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_VAR) - ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CV) - ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_UNUSED): - VM_TRACE(ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_UNUSED) - ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_USED): - VM_TRACE(ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_USED) - ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_REF_SPEC_VAR_CV): - VM_TRACE(ZEND_ASSIGN_REF_SPEC_VAR_CV) - ZEND_ASSIGN_REF_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_CV) - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CV): - VM_TRACE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CV) - ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CV): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CV) - ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_VAR_CV): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_VAR_CV) - ZEND_INIT_ARRAY_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_DIM_SPEC_VAR_CV): - VM_TRACE(ZEND_UNSET_DIM_SPEC_VAR_CV) - ZEND_UNSET_DIM_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_OBJ_SPEC_VAR_CV): - VM_TRACE(ZEND_UNSET_OBJ_SPEC_VAR_CV) - ZEND_UNSET_OBJ_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_VAR_CV): - VM_TRACE(ZEND_YIELD_SPEC_VAR_CV) - ZEND_YIELD_SPEC_VAR_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_UNUSED): - VM_TRACE(ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_UNUSED) - ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_USED): - VM_TRACE(ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_USED) - ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CHECK_FUNC_ARG_SPEC_UNUSED): - VM_TRACE(ZEND_CHECK_FUNC_ARG_SPEC_UNUSED) - ZEND_CHECK_FUNC_ARG_SPEC_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CHECK_FUNC_ARG_SPEC_UNUSED_QUICK): - VM_TRACE(ZEND_CHECK_FUNC_ARG_SPEC_UNUSED_QUICK) - ZEND_CHECK_FUNC_ARG_SPEC_UNUSED_QUICK_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CLONE_SPEC_UNUSED): - VM_TRACE(ZEND_CLONE_SPEC_UNUSED) - ZEND_CLONE_SPEC_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_CLASS_NAME_SPEC_UNUSED): - VM_TRACE(ZEND_FETCH_CLASS_NAME_SPEC_UNUSED) - ZEND_FETCH_CLASS_NAME_SPEC_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CONST) - ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_OBJ_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_PRE_INC_OBJ_SPEC_UNUSED_CONST) - ZEND_PRE_INC_OBJ_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_OBJ_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_POST_INC_OBJ_SPEC_UNUSED_CONST) - ZEND_POST_INC_OBJ_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_R_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_FETCH_OBJ_R_SPEC_UNUSED_CONST) - ZEND_FETCH_OBJ_R_SPEC_UNUSED_CONST_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_W_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_FETCH_OBJ_W_SPEC_UNUSED_CONST) - ZEND_FETCH_OBJ_W_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CONST) - ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CONST) - ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CONST) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CONST) - ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CONST) - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_TMP) - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CV) - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_CV) - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ROPE_INIT_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_ROPE_INIT_SPEC_UNUSED_CONST) - ZEND_ROPE_INIT_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_CLASS_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_FETCH_CLASS_SPEC_UNUSED_CONST) - ZEND_FETCH_CLASS_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CONST) - ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CONST) - ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_CONSTANT_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_FETCH_CONSTANT_SPEC_UNUSED_CONST) - ZEND_FETCH_CONSTANT_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_CLASS_CONSTANT_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_FETCH_CLASS_CONSTANT_SPEC_UNUSED_CONST) - ZEND_FETCH_CLASS_CONSTANT_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_UNUSED_CONST) - ZEND_INIT_ARRAY_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_OBJ_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_UNSET_OBJ_SPEC_UNUSED_CONST) - ZEND_UNSET_OBJ_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CONST) - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_UNUSED_CONST): - VM_TRACE(ZEND_YIELD_SPEC_UNUSED_CONST) - ZEND_YIELD_SPEC_UNUSED_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_TMPVAR) - ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR) - ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR) - ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR) - ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR) - ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR) - ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR) - ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR) - ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST) - ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP) - ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV) - ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV) - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR) - ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_CLASS_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_FETCH_CLASS_SPEC_UNUSED_TMPVAR) - ZEND_FETCH_CLASS_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR) - ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR) - ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR) - ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR) - ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR): - VM_TRACE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR) - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_UNUSED_TMP): - VM_TRACE(ZEND_YIELD_SPEC_UNUSED_TMP) - ZEND_YIELD_SPEC_UNUSED_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_UNUSED_VAR): - VM_TRACE(ZEND_YIELD_SPEC_UNUSED_VAR) - ZEND_YIELD_SPEC_UNUSED_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_CLASS_SPEC_UNUSED_UNUSED): - VM_TRACE(ZEND_FETCH_CLASS_SPEC_UNUSED_UNUSED) - ZEND_FETCH_CLASS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_UNUSED): - VM_TRACE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_UNUSED) - ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_VERIFY_RETURN_TYPE_SPEC_UNUSED_UNUSED): - VM_TRACE(ZEND_VERIFY_RETURN_TYPE_SPEC_UNUSED_UNUSED) - ZEND_VERIFY_RETURN_TYPE_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_NEW_SPEC_UNUSED_UNUSED): - VM_TRACE(ZEND_NEW_SPEC_UNUSED_UNUSED) - ZEND_NEW_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_UNUSED_UNUSED): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_UNUSED_UNUSED) - ZEND_INIT_ARRAY_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_UNUSED_UNUSED): - VM_TRACE(ZEND_YIELD_SPEC_UNUSED_UNUSED) - ZEND_YIELD_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_THIS_SPEC_UNUSED_UNUSED): - VM_TRACE(ZEND_FETCH_THIS_SPEC_UNUSED_UNUSED) - ZEND_FETCH_THIS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_THIS_SPEC_UNUSED_UNUSED): - VM_TRACE(ZEND_ISSET_ISEMPTY_THIS_SPEC_UNUSED_UNUSED) - ZEND_ISSET_ISEMPTY_THIS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GET_CLASS_SPEC_UNUSED_UNUSED): - VM_TRACE(ZEND_GET_CLASS_SPEC_UNUSED_UNUSED) - ZEND_GET_CLASS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GET_CALLED_CLASS_SPEC_UNUSED_UNUSED): - VM_TRACE(ZEND_GET_CALLED_CLASS_SPEC_UNUSED_UNUSED) - ZEND_GET_CALLED_CLASS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FUNC_NUM_ARGS_SPEC_UNUSED_UNUSED): - VM_TRACE(ZEND_FUNC_NUM_ARGS_SPEC_UNUSED_UNUSED) - ZEND_FUNC_NUM_ARGS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FUNC_GET_ARGS_SPEC_UNUSED_UNUSED): - VM_TRACE(ZEND_FUNC_GET_ARGS_SPEC_UNUSED_UNUSED) - ZEND_FUNC_GET_ARGS_SPEC_UNUSED_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CV) - ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_OBJ_SPEC_UNUSED_CV): - VM_TRACE(ZEND_PRE_INC_OBJ_SPEC_UNUSED_CV) - ZEND_PRE_INC_OBJ_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_OBJ_SPEC_UNUSED_CV): - VM_TRACE(ZEND_POST_INC_OBJ_SPEC_UNUSED_CV) - ZEND_POST_INC_OBJ_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_R_SPEC_UNUSED_CV): - VM_TRACE(ZEND_FETCH_OBJ_R_SPEC_UNUSED_CV) - ZEND_FETCH_OBJ_R_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_W_SPEC_UNUSED_CV): - VM_TRACE(ZEND_FETCH_OBJ_W_SPEC_UNUSED_CV) - ZEND_FETCH_OBJ_W_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CV): - VM_TRACE(ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CV) - ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CV): - VM_TRACE(ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CV) - ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CV): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CV) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CV): - VM_TRACE(ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CV) - ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CONST) - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_TMP) - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CV) - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_CV) - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ROPE_INIT_SPEC_UNUSED_CV): - VM_TRACE(ZEND_ROPE_INIT_SPEC_UNUSED_CV) - ZEND_ROPE_INIT_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_CLASS_SPEC_UNUSED_CV): - VM_TRACE(ZEND_FETCH_CLASS_SPEC_UNUSED_CV) - ZEND_FETCH_CLASS_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CV): - VM_TRACE(ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CV) - ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CV): - VM_TRACE(ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CV) - ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_UNUSED_CV): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_UNUSED_CV) - ZEND_INIT_ARRAY_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_OBJ_SPEC_UNUSED_CV): - VM_TRACE(ZEND_UNSET_OBJ_SPEC_UNUSED_CV) - ZEND_UNSET_OBJ_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CV): - VM_TRACE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CV) - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_UNUSED_CV): - VM_TRACE(ZEND_YIELD_SPEC_UNUSED_CV) - ZEND_YIELD_SPEC_UNUSED_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BW_NOT_SPEC_CV): - VM_TRACE(ZEND_BW_NOT_SPEC_CV) - ZEND_BW_NOT_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BOOL_NOT_SPEC_CV): - VM_TRACE(ZEND_BOOL_NOT_SPEC_CV) - ZEND_BOOL_NOT_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_SPEC_CV_RETVAL_UNUSED): - VM_TRACE(ZEND_PRE_INC_SPEC_CV_RETVAL_UNUSED) - ZEND_PRE_INC_SPEC_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_SPEC_CV_RETVAL_USED): - VM_TRACE(ZEND_PRE_INC_SPEC_CV_RETVAL_USED) - ZEND_PRE_INC_SPEC_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_DEC_SPEC_CV_RETVAL_UNUSED): - VM_TRACE(ZEND_PRE_DEC_SPEC_CV_RETVAL_UNUSED) - ZEND_PRE_DEC_SPEC_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_DEC_SPEC_CV_RETVAL_USED): - VM_TRACE(ZEND_PRE_DEC_SPEC_CV_RETVAL_USED) - ZEND_PRE_DEC_SPEC_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_SPEC_CV): - VM_TRACE(ZEND_POST_INC_SPEC_CV) - ZEND_POST_INC_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_DEC_SPEC_CV): - VM_TRACE(ZEND_POST_DEC_SPEC_CV) - ZEND_POST_DEC_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ECHO_SPEC_CV): - VM_TRACE(ZEND_ECHO_SPEC_CV) - ZEND_ECHO_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPZ_SPEC_CV): - VM_TRACE(ZEND_JMPZ_SPEC_CV) - ZEND_JMPZ_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPNZ_SPEC_CV): - VM_TRACE(ZEND_JMPNZ_SPEC_CV) - ZEND_JMPNZ_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPZNZ_SPEC_CV): - VM_TRACE(ZEND_JMPZNZ_SPEC_CV) - ZEND_JMPZNZ_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPZ_EX_SPEC_CV): - VM_TRACE(ZEND_JMPZ_EX_SPEC_CV) - ZEND_JMPZ_EX_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMPNZ_EX_SPEC_CV): - VM_TRACE(ZEND_JMPNZ_EX_SPEC_CV) - ZEND_JMPNZ_EX_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_RETURN_SPEC_CV): - VM_TRACE(ZEND_RETURN_SPEC_CV) -{ - USE_OPLINE - zval *retval_ptr; - zval *return_value; - zend_free_op free_op1; - - retval_ptr = EX_VAR(opline->op1.var); - return_value = EX(return_value); - if (IS_CV == IS_CV && UNEXPECTED(Z_TYPE_INFO_P(retval_ptr) == IS_UNDEF)) { - SAVE_OPLINE(); - retval_ptr = ZVAL_UNDEFINED_OP1(); - if (return_value) { - ZVAL_NULL(return_value); - } - } else if (!return_value) { - if (IS_CV & (IS_VAR|IS_TMP_VAR)) { - if (Z_REFCOUNTED_P(free_op1) && !Z_DELREF_P(free_op1)) { - SAVE_OPLINE(); - rc_dtor_func(Z_COUNTED_P(free_op1)); - } - } - } else { - if ((IS_CV & (IS_CONST|IS_TMP_VAR))) { - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (IS_CV == IS_CONST) { - if (UNEXPECTED(Z_OPT_REFCOUNTED_P(return_value))) { - Z_ADDREF_P(return_value); - } - } - } else if (IS_CV == IS_CV) { - do { - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - if (EXPECTED(!Z_OPT_ISREF_P(retval_ptr))) { - if (EXPECTED(!(EX_CALL_INFO() & ZEND_CALL_CODE))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (GC_MAY_LEAK(ref)) { - gc_possible_root(ref); - } - ZVAL_NULL(retval_ptr); - break; - } else { - Z_ADDREF_P(retval_ptr); - } - } else { - retval_ptr = Z_REFVAL_P(retval_ptr); - if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } - } - ZVAL_COPY_VALUE(return_value, retval_ptr); - } while (0); - } else /* if (IS_CV == IS_VAR) */ { - if (UNEXPECTED(Z_ISREF_P(retval_ptr))) { - zend_refcounted *ref = Z_COUNTED_P(retval_ptr); - - retval_ptr = Z_REFVAL_P(retval_ptr); - ZVAL_COPY_VALUE(return_value, retval_ptr); - if (UNEXPECTED(GC_DELREF(ref) == 0)) { - efree_size(ref, sizeof(zend_reference)); - } else if (Z_OPT_REFCOUNTED_P(retval_ptr)) { - Z_ADDREF_P(retval_ptr); - } - } else { - ZVAL_COPY_VALUE(return_value, retval_ptr); - } - } - } - goto zend_leave_helper_SPEC_LABEL; -} - - HYBRID_CASE(ZEND_RETURN_BY_REF_SPEC_CV): - VM_TRACE(ZEND_RETURN_BY_REF_SPEC_CV) - ZEND_RETURN_BY_REF_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GENERATOR_RETURN_SPEC_CV): - VM_TRACE(ZEND_GENERATOR_RETURN_SPEC_CV) - ZEND_GENERATOR_RETURN_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_THROW_SPEC_CV): - VM_TRACE(ZEND_THROW_SPEC_CV) - ZEND_THROW_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAR_SPEC_CV): - VM_TRACE(ZEND_SEND_VAR_SPEC_CV) - ZEND_SEND_VAR_SPEC_CV_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_REF_SPEC_CV): - VM_TRACE(ZEND_SEND_REF_SPEC_CV) - ZEND_SEND_REF_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAR_EX_SPEC_CV): - VM_TRACE(ZEND_SEND_VAR_EX_SPEC_CV) - ZEND_SEND_VAR_EX_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAR_EX_SPEC_CV_QUICK): - VM_TRACE(ZEND_SEND_VAR_EX_SPEC_CV_QUICK) - ZEND_SEND_VAR_EX_SPEC_CV_QUICK_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_USER_SPEC_CV): - VM_TRACE(ZEND_SEND_USER_SPEC_CV) - ZEND_SEND_USER_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BOOL_SPEC_CV): - VM_TRACE(ZEND_BOOL_SPEC_CV) - ZEND_BOOL_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CLONE_SPEC_CV): - VM_TRACE(ZEND_CLONE_SPEC_CV) - ZEND_CLONE_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CAST_SPEC_CV): - VM_TRACE(ZEND_CAST_SPEC_CV) - ZEND_CAST_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INCLUDE_OR_EVAL_SPEC_CV): - VM_TRACE(ZEND_INCLUDE_OR_EVAL_SPEC_CV) - ZEND_INCLUDE_OR_EVAL_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FE_RESET_R_SPEC_CV): - VM_TRACE(ZEND_FE_RESET_R_SPEC_CV) - ZEND_FE_RESET_R_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FE_RESET_RW_SPEC_CV): - VM_TRACE(ZEND_FE_RESET_RW_SPEC_CV) - ZEND_FE_RESET_RW_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_JMP_SET_SPEC_CV): - VM_TRACE(ZEND_JMP_SET_SPEC_CV) - ZEND_JMP_SET_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_COALESCE_SPEC_CV): - VM_TRACE(ZEND_COALESCE_SPEC_CV) - ZEND_COALESCE_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_QM_ASSIGN_SPEC_CV): - VM_TRACE(ZEND_QM_ASSIGN_SPEC_CV) - ZEND_QM_ASSIGN_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_FROM_SPEC_CV): - VM_TRACE(ZEND_YIELD_FROM_SPEC_CV) - ZEND_YIELD_FROM_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_STRLEN_SPEC_CV): - VM_TRACE(ZEND_STRLEN_SPEC_CV) - ZEND_STRLEN_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_TYPE_CHECK_SPEC_CV): - VM_TRACE(ZEND_TYPE_CHECK_SPEC_CV) - ZEND_TYPE_CHECK_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED): - VM_TRACE(ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED) - ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED): - VM_TRACE(ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED) - ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_UNUSED): - VM_TRACE(ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_UNUSED) - ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_USED): - VM_TRACE(ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_USED) - ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED): - VM_TRACE(ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED) - ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED): - VM_TRACE(ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED) - ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_UNUSED): - VM_TRACE(ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_UNUSED) - ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_USED): - VM_TRACE(ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_USED) - ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_LONG_NO_OVERFLOW_SPEC_CV): - VM_TRACE(ZEND_POST_INC_LONG_NO_OVERFLOW_SPEC_CV) - ZEND_POST_INC_LONG_NO_OVERFLOW_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_LONG_SPEC_CV): - VM_TRACE(ZEND_POST_INC_LONG_SPEC_CV) - ZEND_POST_INC_LONG_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_DEC_LONG_NO_OVERFLOW_SPEC_CV): - VM_TRACE(ZEND_POST_DEC_LONG_NO_OVERFLOW_SPEC_CV) - ZEND_POST_DEC_LONG_NO_OVERFLOW_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_DEC_LONG_SPEC_CV): - VM_TRACE(ZEND_POST_DEC_LONG_SPEC_CV) - ZEND_POST_DEC_LONG_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAR_SIMPLE_SPEC_CV): - VM_TRACE(ZEND_SEND_VAR_SIMPLE_SPEC_CV) - ZEND_SEND_VAR_SIMPLE_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SEND_VAR_EX_SIMPLE_SPEC_CV): - VM_TRACE(ZEND_SEND_VAR_EX_SIMPLE_SPEC_CV) - ZEND_SEND_VAR_EX_SIMPLE_SPEC_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DIV_SPEC_CV_CONST): - VM_TRACE(ZEND_DIV_SPEC_CV_CONST) - ZEND_DIV_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POW_SPEC_CV_CONST): - VM_TRACE(ZEND_POW_SPEC_CV_CONST) - ZEND_POW_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CONCAT_SPEC_CV_CONST): - VM_TRACE(ZEND_CONCAT_SPEC_CV_CONST) - ZEND_CONCAT_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_IDENTICAL_SPEC_CV_CONST): - VM_TRACE(ZEND_IS_IDENTICAL_SPEC_CV_CONST) - ZEND_IS_IDENTICAL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_IDENTICAL_SPEC_CV_CONST): - VM_TRACE(ZEND_IS_NOT_IDENTICAL_SPEC_CV_CONST) - ZEND_IS_NOT_IDENTICAL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_CV_CONST): - VM_TRACE(ZEND_IS_EQUAL_SPEC_CV_CONST) - ZEND_IS_EQUAL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_CV_CONST_JMPZ): - VM_TRACE(ZEND_IS_EQUAL_SPEC_CV_CONST_JMPZ) - ZEND_IS_EQUAL_SPEC_CV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_CV_CONST_JMPNZ): - VM_TRACE(ZEND_IS_EQUAL_SPEC_CV_CONST_JMPNZ) - ZEND_IS_EQUAL_SPEC_CV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_CV_CONST): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_CV_CONST) - ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPZ) - ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPNZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPNZ) - ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SPACESHIP_SPEC_CV_CONST): - VM_TRACE(ZEND_SPACESHIP_SPEC_CV_CONST) - ZEND_SPACESHIP_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BOOL_XOR_SPEC_CV_CONST): - VM_TRACE(ZEND_BOOL_XOR_SPEC_CV_CONST) - ZEND_BOOL_XOR_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_OP_SPEC_CV_CONST): - VM_TRACE(ZEND_ASSIGN_OBJ_OP_SPEC_CV_CONST) - ZEND_ASSIGN_OBJ_OP_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_OP_SPEC_CV_CONST): - VM_TRACE(ZEND_ASSIGN_DIM_OP_SPEC_CV_CONST) - ZEND_ASSIGN_DIM_OP_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OP_SPEC_CV_CONST): - VM_TRACE(ZEND_ASSIGN_OP_SPEC_CV_CONST) - ZEND_ASSIGN_OP_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_OBJ_SPEC_CV_CONST): - VM_TRACE(ZEND_PRE_INC_OBJ_SPEC_CV_CONST) - ZEND_PRE_INC_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_OBJ_SPEC_CV_CONST): - VM_TRACE(ZEND_POST_INC_OBJ_SPEC_CV_CONST) - ZEND_POST_INC_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_SPEC_CV_CONST): - VM_TRACE(ZEND_FETCH_DIM_R_SPEC_CV_CONST) - ZEND_FETCH_DIM_R_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_W_SPEC_CV_CONST): - VM_TRACE(ZEND_FETCH_DIM_W_SPEC_CV_CONST) - ZEND_FETCH_DIM_W_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_RW_SPEC_CV_CONST): - VM_TRACE(ZEND_FETCH_DIM_RW_SPEC_CV_CONST) - ZEND_FETCH_DIM_RW_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_IS_SPEC_CV_CONST): - VM_TRACE(ZEND_FETCH_DIM_IS_SPEC_CV_CONST) - ZEND_FETCH_DIM_IS_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CONST): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CONST) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_UNSET_SPEC_CV_CONST): - VM_TRACE(ZEND_FETCH_DIM_UNSET_SPEC_CV_CONST) - ZEND_FETCH_DIM_UNSET_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_R_SPEC_CV_CONST): - VM_TRACE(ZEND_FETCH_OBJ_R_SPEC_CV_CONST) - ZEND_FETCH_OBJ_R_SPEC_CV_CONST_INLINE_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_W_SPEC_CV_CONST): - VM_TRACE(ZEND_FETCH_OBJ_W_SPEC_CV_CONST) - ZEND_FETCH_OBJ_W_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_RW_SPEC_CV_CONST): - VM_TRACE(ZEND_FETCH_OBJ_RW_SPEC_CV_CONST) - ZEND_FETCH_OBJ_RW_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_IS_SPEC_CV_CONST): - VM_TRACE(ZEND_FETCH_OBJ_IS_SPEC_CV_CONST) - ZEND_FETCH_OBJ_IS_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CONST): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CONST) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_UNSET_SPEC_CV_CONST): - VM_TRACE(ZEND_FETCH_OBJ_UNSET_SPEC_CV_CONST) - ZEND_FETCH_OBJ_UNSET_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CONST) - ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_TMP) - ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CV) - ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CONST) - ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_TMP) - ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_VAR) - ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CV) - ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_UNUSED): - VM_TRACE(ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_UNUSED) - ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_USED): - VM_TRACE(ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_USED) - ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_CV) - ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FAST_CONCAT_SPEC_CV_CONST): - VM_TRACE(ZEND_FAST_CONCAT_SPEC_CV_CONST) - ZEND_FAST_CONCAT_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_METHOD_CALL_SPEC_CV_CONST): - VM_TRACE(ZEND_INIT_METHOD_CALL_SPEC_CV_CONST) - ZEND_INIT_METHOD_CALL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CONST): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CONST) - ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_CV_CONST): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_CV_CONST) - ZEND_INIT_ARRAY_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_DIM_SPEC_CV_CONST): - VM_TRACE(ZEND_UNSET_DIM_SPEC_CV_CONST) - ZEND_UNSET_DIM_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_OBJ_SPEC_CV_CONST): - VM_TRACE(ZEND_UNSET_OBJ_SPEC_CV_CONST) - ZEND_UNSET_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CONST): - VM_TRACE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CONST) - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CONST): - VM_TRACE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CONST) - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CONST): - VM_TRACE(ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CONST) - ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INSTANCEOF_SPEC_CV_CONST): - VM_TRACE(ZEND_INSTANCEOF_SPEC_CV_CONST) - ZEND_INSTANCEOF_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_CV_CONST): - VM_TRACE(ZEND_YIELD_SPEC_CV_CONST) - ZEND_YIELD_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BIND_GLOBAL_SPEC_CV_CONST): - VM_TRACE(ZEND_BIND_GLOBAL_SPEC_CV_CONST) - ZEND_BIND_GLOBAL_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IN_ARRAY_SPEC_CV_CONST): - VM_TRACE(ZEND_IN_ARRAY_SPEC_CV_CONST) - ZEND_IN_ARRAY_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_INDEX_SPEC_CV_CONST): - VM_TRACE(ZEND_FETCH_DIM_R_INDEX_SPEC_CV_CONST) - ZEND_FETCH_DIM_R_INDEX_SPEC_CV_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_INDEX_SPEC_CV_TMPVARCV): - VM_TRACE(ZEND_FETCH_DIM_R_INDEX_SPEC_CV_TMPVARCV) - ZEND_FETCH_DIM_R_INDEX_SPEC_CV_TMPVARCV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DIV_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_DIV_SPEC_CV_TMPVAR) - ZEND_DIV_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POW_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_POW_SPEC_CV_TMPVAR) - ZEND_POW_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CONCAT_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_CONCAT_SPEC_CV_TMPVAR) - ZEND_CONCAT_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_IS_EQUAL_SPEC_CV_TMPVAR) - ZEND_IS_EQUAL_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPZ): - VM_TRACE(ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPZ) - ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPNZ): - VM_TRACE(ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPNZ) - ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR) - ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPZ) - ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPNZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPNZ) - ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SPACESHIP_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_SPACESHIP_SPEC_CV_TMPVAR) - ZEND_SPACESHIP_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BOOL_XOR_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_BOOL_XOR_SPEC_CV_TMPVAR) - ZEND_BOOL_XOR_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_OP_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_ASSIGN_OBJ_OP_SPEC_CV_TMPVAR) - ZEND_ASSIGN_OBJ_OP_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_OP_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_ASSIGN_DIM_OP_SPEC_CV_TMPVAR) - ZEND_ASSIGN_DIM_OP_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OP_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_ASSIGN_OP_SPEC_CV_TMPVAR) - ZEND_ASSIGN_OP_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR) - ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR) - ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR) - ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR) - ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR) - ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR) - ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR) - ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR) - ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR) - ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR) - ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR) - ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR) - ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST) - ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP) - ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV) - ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST) - ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP) - ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR) - ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV) - ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV) - ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FAST_CONCAT_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_FAST_CONCAT_SPEC_CV_TMPVAR) - ZEND_FAST_CONCAT_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR) - ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR) - ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_CV_TMPVAR) - ZEND_INIT_ARRAY_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_DIM_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_UNSET_DIM_SPEC_CV_TMPVAR) - ZEND_UNSET_DIM_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_OBJ_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_UNSET_OBJ_SPEC_CV_TMPVAR) - ZEND_UNSET_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR) - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR) - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR): - VM_TRACE(ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR) - ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_IDENTICAL_SPEC_CV_TMP): - VM_TRACE(ZEND_IS_IDENTICAL_SPEC_CV_TMP) - ZEND_IS_IDENTICAL_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_IDENTICAL_SPEC_CV_TMP): - VM_TRACE(ZEND_IS_NOT_IDENTICAL_SPEC_CV_TMP) - ZEND_IS_NOT_IDENTICAL_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_UNUSED): - VM_TRACE(ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_UNUSED) - ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_USED): - VM_TRACE(ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_USED) - ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_CV_TMP): - VM_TRACE(ZEND_YIELD_SPEC_CV_TMP) - ZEND_YIELD_SPEC_CV_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_IDENTICAL_SPEC_CV_VAR): - VM_TRACE(ZEND_IS_IDENTICAL_SPEC_CV_VAR) - ZEND_IS_IDENTICAL_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_IDENTICAL_SPEC_CV_VAR): - VM_TRACE(ZEND_IS_NOT_IDENTICAL_SPEC_CV_VAR) - ZEND_IS_NOT_IDENTICAL_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_UNUSED): - VM_TRACE(ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_UNUSED) - ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_USED): - VM_TRACE(ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_USED) - ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_REF_SPEC_CV_VAR): - VM_TRACE(ZEND_ASSIGN_REF_SPEC_CV_VAR) - ZEND_ASSIGN_REF_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INSTANCEOF_SPEC_CV_VAR): - VM_TRACE(ZEND_INSTANCEOF_SPEC_CV_VAR) - ZEND_INSTANCEOF_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_CV_VAR): - VM_TRACE(ZEND_YIELD_SPEC_CV_VAR) - ZEND_YIELD_SPEC_CV_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_OP_SPEC_CV_UNUSED): - VM_TRACE(ZEND_ASSIGN_DIM_OP_SPEC_CV_UNUSED) - ZEND_ASSIGN_DIM_OP_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_R_SPEC_CV_UNUSED): - VM_TRACE(ZEND_FETCH_R_SPEC_CV_UNUSED) - ZEND_FETCH_R_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_W_SPEC_CV_UNUSED): - VM_TRACE(ZEND_FETCH_W_SPEC_CV_UNUSED) - ZEND_FETCH_W_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_RW_SPEC_CV_UNUSED): - VM_TRACE(ZEND_FETCH_RW_SPEC_CV_UNUSED) - ZEND_FETCH_RW_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_FUNC_ARG_SPEC_CV_UNUSED): - VM_TRACE(ZEND_FETCH_FUNC_ARG_SPEC_CV_UNUSED) - ZEND_FETCH_FUNC_ARG_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_UNSET_SPEC_CV_UNUSED): - VM_TRACE(ZEND_FETCH_UNSET_SPEC_CV_UNUSED) - ZEND_FETCH_UNSET_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_IS_SPEC_CV_UNUSED): - VM_TRACE(ZEND_FETCH_IS_SPEC_CV_UNUSED) - ZEND_FETCH_IS_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_W_SPEC_CV_UNUSED): - VM_TRACE(ZEND_FETCH_DIM_W_SPEC_CV_UNUSED) - ZEND_FETCH_DIM_W_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_RW_SPEC_CV_UNUSED): - VM_TRACE(ZEND_FETCH_DIM_RW_SPEC_CV_UNUSED) - ZEND_FETCH_DIM_RW_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_UNUSED): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_UNUSED) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CONST) - ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_TMP) - ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_VAR) - ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CV) - ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_VERIFY_RETURN_TYPE_SPEC_CV_UNUSED): - VM_TRACE(ZEND_VERIFY_RETURN_TYPE_SPEC_CV_UNUSED) - ZEND_VERIFY_RETURN_TYPE_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_UNUSED): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_UNUSED) - ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_CV_UNUSED): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_CV_UNUSED) - ZEND_INIT_ARRAY_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_CV_SPEC_CV_UNUSED): - VM_TRACE(ZEND_UNSET_CV_SPEC_CV_UNUSED) - ZEND_UNSET_CV_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_VAR_SPEC_CV_UNUSED): - VM_TRACE(ZEND_UNSET_VAR_SPEC_CV_UNUSED) - ZEND_UNSET_VAR_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_SET): - VM_TRACE(ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_SET) - ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_SET_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_EMPTY): - VM_TRACE(ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_EMPTY) - ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_EMPTY_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_UNUSED): - VM_TRACE(ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_UNUSED) - ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INSTANCEOF_SPEC_CV_UNUSED): - VM_TRACE(ZEND_INSTANCEOF_SPEC_CV_UNUSED) - ZEND_INSTANCEOF_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_CV_UNUSED): - VM_TRACE(ZEND_YIELD_SPEC_CV_UNUSED) - ZEND_YIELD_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BIND_STATIC_SPEC_CV_UNUSED): - VM_TRACE(ZEND_BIND_STATIC_SPEC_CV_UNUSED) - ZEND_BIND_STATIC_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CHECK_VAR_SPEC_CV_UNUSED): - VM_TRACE(ZEND_CHECK_VAR_SPEC_CV_UNUSED) - ZEND_CHECK_VAR_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_MAKE_REF_SPEC_CV_UNUSED): - VM_TRACE(ZEND_MAKE_REF_SPEC_CV_UNUSED) - ZEND_MAKE_REF_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_COUNT_SPEC_CV_UNUSED): - VM_TRACE(ZEND_COUNT_SPEC_CV_UNUSED) - ZEND_COUNT_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GET_CLASS_SPEC_CV_UNUSED): - VM_TRACE(ZEND_GET_CLASS_SPEC_CV_UNUSED) - ZEND_GET_CLASS_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_GET_TYPE_SPEC_CV_UNUSED): - VM_TRACE(ZEND_GET_TYPE_SPEC_CV_UNUSED) - ZEND_GET_TYPE_SPEC_CV_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_DIV_SPEC_CV_CV): - VM_TRACE(ZEND_DIV_SPEC_CV_CV) - ZEND_DIV_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POW_SPEC_CV_CV): - VM_TRACE(ZEND_POW_SPEC_CV_CV) - ZEND_POW_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_CONCAT_SPEC_CV_CV): - VM_TRACE(ZEND_CONCAT_SPEC_CV_CV) - ZEND_CONCAT_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_IDENTICAL_SPEC_CV_CV): - VM_TRACE(ZEND_IS_IDENTICAL_SPEC_CV_CV) - ZEND_IS_IDENTICAL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_IDENTICAL_SPEC_CV_CV): - VM_TRACE(ZEND_IS_NOT_IDENTICAL_SPEC_CV_CV) - ZEND_IS_NOT_IDENTICAL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_CV_CV): - VM_TRACE(ZEND_IS_EQUAL_SPEC_CV_CV) - ZEND_IS_EQUAL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_CV_CV_JMPZ): - VM_TRACE(ZEND_IS_EQUAL_SPEC_CV_CV_JMPZ) - ZEND_IS_EQUAL_SPEC_CV_CV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_EQUAL_SPEC_CV_CV_JMPNZ): - VM_TRACE(ZEND_IS_EQUAL_SPEC_CV_CV_JMPNZ) - ZEND_IS_EQUAL_SPEC_CV_CV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_CV_CV): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_CV_CV) - ZEND_IS_NOT_EQUAL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPZ) - ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPNZ): - VM_TRACE(ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPNZ) - ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPNZ_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_SPACESHIP_SPEC_CV_CV): - VM_TRACE(ZEND_SPACESHIP_SPEC_CV_CV) - ZEND_SPACESHIP_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_BOOL_XOR_SPEC_CV_CV): - VM_TRACE(ZEND_BOOL_XOR_SPEC_CV_CV) - ZEND_BOOL_XOR_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_OP_SPEC_CV_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_OP_SPEC_CV_CV) - ZEND_ASSIGN_OBJ_OP_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_OP_SPEC_CV_CV): - VM_TRACE(ZEND_ASSIGN_DIM_OP_SPEC_CV_CV) - ZEND_ASSIGN_DIM_OP_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OP_SPEC_CV_CV): - VM_TRACE(ZEND_ASSIGN_OP_SPEC_CV_CV) - ZEND_ASSIGN_OP_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_PRE_INC_OBJ_SPEC_CV_CV): - VM_TRACE(ZEND_PRE_INC_OBJ_SPEC_CV_CV) - ZEND_PRE_INC_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_POST_INC_OBJ_SPEC_CV_CV): - VM_TRACE(ZEND_POST_INC_OBJ_SPEC_CV_CV) - ZEND_POST_INC_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_R_SPEC_CV_CV): - VM_TRACE(ZEND_FETCH_DIM_R_SPEC_CV_CV) - ZEND_FETCH_DIM_R_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_W_SPEC_CV_CV): - VM_TRACE(ZEND_FETCH_DIM_W_SPEC_CV_CV) - ZEND_FETCH_DIM_W_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_RW_SPEC_CV_CV): - VM_TRACE(ZEND_FETCH_DIM_RW_SPEC_CV_CV) - ZEND_FETCH_DIM_RW_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_IS_SPEC_CV_CV): - VM_TRACE(ZEND_FETCH_DIM_IS_SPEC_CV_CV) - ZEND_FETCH_DIM_IS_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CV): - VM_TRACE(ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CV) - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_DIM_UNSET_SPEC_CV_CV): - VM_TRACE(ZEND_FETCH_DIM_UNSET_SPEC_CV_CV) - ZEND_FETCH_DIM_UNSET_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_R_SPEC_CV_CV): - VM_TRACE(ZEND_FETCH_OBJ_R_SPEC_CV_CV) - ZEND_FETCH_OBJ_R_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_W_SPEC_CV_CV): - VM_TRACE(ZEND_FETCH_OBJ_W_SPEC_CV_CV) - ZEND_FETCH_OBJ_W_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_RW_SPEC_CV_CV): - VM_TRACE(ZEND_FETCH_OBJ_RW_SPEC_CV_CV) - ZEND_FETCH_OBJ_RW_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_IS_SPEC_CV_CV): - VM_TRACE(ZEND_FETCH_OBJ_IS_SPEC_CV_CV) - ZEND_FETCH_OBJ_IS_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CV): - VM_TRACE(ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CV) - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FETCH_OBJ_UNSET_SPEC_CV_CV): - VM_TRACE(ZEND_FETCH_OBJ_UNSET_SPEC_CV_CV) - ZEND_FETCH_OBJ_UNSET_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CONST) - ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_TMP) - ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CV) - ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CONST): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CONST) - ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CONST_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_TMP): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_TMP) - ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_TMP_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_VAR) - ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CV) - ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_CV_CV_RETVAL_UNUSED): - VM_TRACE(ZEND_ASSIGN_SPEC_CV_CV_RETVAL_UNUSED) - ZEND_ASSIGN_SPEC_CV_CV_RETVAL_UNUSED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_SPEC_CV_CV_RETVAL_USED): - VM_TRACE(ZEND_ASSIGN_SPEC_CV_CV_RETVAL_USED) - ZEND_ASSIGN_SPEC_CV_CV_RETVAL_USED_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_REF_SPEC_CV_CV): - VM_TRACE(ZEND_ASSIGN_REF_SPEC_CV_CV) - ZEND_ASSIGN_REF_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_VAR): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_VAR) - ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_VAR_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_CV): - VM_TRACE(ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_CV) - ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_FAST_CONCAT_SPEC_CV_CV): - VM_TRACE(ZEND_FAST_CONCAT_SPEC_CV_CV) - ZEND_FAST_CONCAT_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_METHOD_CALL_SPEC_CV_CV): - VM_TRACE(ZEND_INIT_METHOD_CALL_SPEC_CV_CV) - ZEND_INIT_METHOD_CALL_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CV): - VM_TRACE(ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CV) - ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_INIT_ARRAY_SPEC_CV_CV): - VM_TRACE(ZEND_INIT_ARRAY_SPEC_CV_CV) - ZEND_INIT_ARRAY_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_DIM_SPEC_CV_CV): - VM_TRACE(ZEND_UNSET_DIM_SPEC_CV_CV) - ZEND_UNSET_DIM_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_UNSET_OBJ_SPEC_CV_CV): - VM_TRACE(ZEND_UNSET_OBJ_SPEC_CV_CV) - ZEND_UNSET_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CV): - VM_TRACE(ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CV) - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CV): - VM_TRACE(ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CV) - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CV): - VM_TRACE(ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CV) - ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(ZEND_YIELD_SPEC_CV_CV): - VM_TRACE(ZEND_YIELD_SPEC_CV_CV) - ZEND_YIELD_SPEC_CV_CV_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); - HYBRID_CASE(HYBRID_HALT): -#ifdef ZEND_VM_FP_GLOBAL_REG - execute_data = orig_execute_data; -#endif -#ifdef ZEND_VM_IP_GLOBAL_REG - opline = orig_opline; -#endif - return; - HYBRID_DEFAULT: - VM_TRACE(ZEND_NULL) - ZEND_NULL_HANDLER(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - HYBRID_BREAK(); /* Never reached */ -#else -#ifdef ZEND_VM_FP_GLOBAL_REG - execute_data = orig_execute_data; -# ifdef ZEND_VM_IP_GLOBAL_REG - opline = orig_opline; -# endif - return; -#else - if (EXPECTED(ret > 0)) { - execute_data = EG(current_execute_data); - ZEND_VM_LOOP_INTERRUPT_CHECK(); - } else { -# ifdef ZEND_VM_IP_GLOBAL_REG - opline = orig_opline; -# endif - return; - } -#endif -#endif - } - - } - zend_error_noreturn(E_CORE_ERROR, "Arrived at end of main loop which shouldn't happen"); -} -#if (ZEND_VM_KIND != ZEND_VM_KIND_CALL) && (ZEND_GCC_VERSION >= 4000) && !defined(__clang__) -# pragma GCC pop_options -#endif - -ZEND_API void zend_execute(zend_op_array *op_array, zval *return_value) -{ - zend_execute_data *execute_data; - void *object_or_called_scope; - uint32_t call_info; - - if (EG(exception) != NULL) { - return; - } - - object_or_called_scope = zend_get_this_object(EG(current_execute_data)); - if (EXPECTED(!object_or_called_scope)) { - object_or_called_scope = zend_get_called_scope(EG(current_execute_data)); - call_info = ZEND_CALL_TOP_CODE | ZEND_CALL_HAS_SYMBOL_TABLE; - } else { - call_info = ZEND_CALL_TOP_CODE | ZEND_CALL_HAS_SYMBOL_TABLE | ZEND_CALL_HAS_THIS; - } - execute_data = zend_vm_stack_push_call_frame(call_info, - (zend_function*)op_array, 0, object_or_called_scope); - if (EG(current_execute_data)) { - execute_data->symbol_table = zend_rebuild_symbol_table(); - } else { - execute_data->symbol_table = &EG(symbol_table); - } - EX(prev_execute_data) = EG(current_execute_data); - i_init_code_execute_data(execute_data, op_array, return_value); - zend_execute_ex(execute_data); - zend_vm_stack_free_call_frame(execute_data); -} - - -void zend_vm_init(void) -{ - static const void * const labels[] = { - ZEND_NOP_SPEC_HANDLER, - ZEND_ADD_SPEC_CONST_CONST_HANDLER, - ZEND_ADD_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_ADD_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_ADD_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_SPEC_CONST_CONST_HANDLER, - ZEND_SUB_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_SUB_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_SUB_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_SPEC_CONST_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_DIV_SPEC_CONST_CONST_HANDLER, - ZEND_DIV_SPEC_CONST_TMPVAR_HANDLER, - ZEND_DIV_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_DIV_SPEC_CONST_CV_HANDLER, - ZEND_DIV_SPEC_TMPVAR_CONST_HANDLER, - ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_DIV_SPEC_TMPVAR_CV_HANDLER, - ZEND_DIV_SPEC_TMPVAR_CONST_HANDLER, - ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_DIV_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_DIV_SPEC_TMPVAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_DIV_SPEC_CV_CONST_HANDLER, - ZEND_DIV_SPEC_CV_TMPVAR_HANDLER, - ZEND_DIV_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_DIV_SPEC_CV_CV_HANDLER, - ZEND_MOD_SPEC_CONST_CONST_HANDLER, - ZEND_MOD_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_MOD_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MOD_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_MOD_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MOD_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MOD_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MOD_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SL_SPEC_CONST_CONST_HANDLER, - ZEND_SL_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_SL_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SL_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_SL_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SL_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SL_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SR_SPEC_CONST_CONST_HANDLER, - ZEND_SR_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_SR_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SR_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_SR_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SR_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SR_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_CONCAT_SPEC_CONST_TMPVAR_HANDLER, - ZEND_CONCAT_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_CONCAT_SPEC_CONST_CV_HANDLER, - ZEND_CONCAT_SPEC_TMPVAR_CONST_HANDLER, - ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_CONCAT_SPEC_TMPVAR_CV_HANDLER, - ZEND_CONCAT_SPEC_TMPVAR_CONST_HANDLER, - ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_CONCAT_SPEC_TMPVAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_CONCAT_SPEC_CV_CONST_HANDLER, - ZEND_CONCAT_SPEC_CV_TMPVAR_HANDLER, - ZEND_CONCAT_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_CONCAT_SPEC_CV_CV_HANDLER, - ZEND_BW_OR_SPEC_CONST_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_OR_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_OR_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_OR_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_AND_SPEC_CONST_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_AND_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_AND_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_AND_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_XOR_SPEC_CONST_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_XOR_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_XOR_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_XOR_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_POW_SPEC_CONST_CONST_HANDLER, - ZEND_POW_SPEC_CONST_TMPVAR_HANDLER, - ZEND_POW_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_POW_SPEC_CONST_CV_HANDLER, - ZEND_POW_SPEC_TMPVAR_CONST_HANDLER, - ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_POW_SPEC_TMPVAR_CV_HANDLER, - ZEND_POW_SPEC_TMPVAR_CONST_HANDLER, - ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_POW_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_POW_SPEC_TMPVAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_POW_SPEC_CV_CONST_HANDLER, - ZEND_POW_SPEC_CV_TMPVAR_HANDLER, - ZEND_POW_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_POW_SPEC_CV_CV_HANDLER, - ZEND_BW_NOT_SPEC_CONST_HANDLER, - ZEND_BW_NOT_SPEC_TMPVAR_HANDLER, - ZEND_BW_NOT_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BW_NOT_SPEC_CV_HANDLER, - ZEND_BOOL_NOT_SPEC_CONST_HANDLER, - ZEND_BOOL_NOT_SPEC_TMPVAR_HANDLER, - ZEND_BOOL_NOT_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BOOL_NOT_SPEC_CV_HANDLER, - ZEND_BOOL_XOR_SPEC_CONST_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BOOL_XOR_SPEC_TMPVAR_CONST_HANDLER, - ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BOOL_XOR_SPEC_TMPVAR_CONST_HANDLER, - ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BOOL_XOR_SPEC_CV_CONST_HANDLER, - ZEND_BOOL_XOR_SPEC_CV_TMPVAR_HANDLER, - ZEND_BOOL_XOR_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BOOL_XOR_SPEC_CV_CV_HANDLER, - ZEND_IS_IDENTICAL_SPEC_CONST_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_IDENTICAL_SPEC_TMP_CONST_HANDLER, - ZEND_IS_IDENTICAL_SPEC_TMP_TMP_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_IDENTICAL_SPEC_VAR_CONST_HANDLER, - ZEND_IS_IDENTICAL_SPEC_VAR_TMP_HANDLER, - ZEND_IS_IDENTICAL_SPEC_VAR_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_IDENTICAL_SPEC_CV_CONST_HANDLER, - ZEND_IS_IDENTICAL_SPEC_CV_TMP_HANDLER, - ZEND_IS_IDENTICAL_SPEC_CV_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_IDENTICAL_SPEC_CV_CV_HANDLER, - ZEND_IS_NOT_IDENTICAL_SPEC_CONST_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_IDENTICAL_SPEC_TMP_CONST_HANDLER, - ZEND_IS_NOT_IDENTICAL_SPEC_TMP_TMP_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_IDENTICAL_SPEC_VAR_CONST_HANDLER, - ZEND_IS_NOT_IDENTICAL_SPEC_VAR_TMP_HANDLER, - ZEND_IS_NOT_IDENTICAL_SPEC_VAR_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_IDENTICAL_SPEC_CV_CONST_HANDLER, - ZEND_IS_NOT_IDENTICAL_SPEC_CV_TMP_HANDLER, - ZEND_IS_NOT_IDENTICAL_SPEC_CV_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_IDENTICAL_SPEC_CV_CV_HANDLER, - ZEND_IS_EQUAL_SPEC_CONST_CONST_HANDLER, - ZEND_IS_EQUAL_SPEC_CONST_CONST_HANDLER, - ZEND_IS_EQUAL_SPEC_CONST_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPZ_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPNZ_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPZ_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPNZ_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_HANDLER, - ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_SPEC_CV_CONST_HANDLER, - ZEND_IS_EQUAL_SPEC_CV_CONST_JMPZ_HANDLER, - ZEND_IS_EQUAL_SPEC_CV_CONST_JMPNZ_HANDLER, - ZEND_IS_EQUAL_SPEC_CV_TMPVAR_HANDLER, - ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPZ_HANDLER, - ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPNZ_HANDLER, - ZEND_IS_EQUAL_SPEC_CV_TMPVAR_HANDLER, - ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPZ_HANDLER, - ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_SPEC_CV_CV_HANDLER, - ZEND_IS_EQUAL_SPEC_CV_CV_JMPZ_HANDLER, - ZEND_IS_EQUAL_SPEC_CV_CV_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CV_CV_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_SPEC_CONST_CONST_HANDLER, - ZEND_IS_SMALLER_SPEC_CONST_CONST_HANDLER, - ZEND_IS_SMALLER_SPEC_CONST_CONST_HANDLER, - ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_UNUSED_HANDLER, - ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_USED_HANDLER, - ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_UNUSED_HANDLER, - ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_USED_HANDLER, - ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_UNUSED_HANDLER, - ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_USED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_UNUSED_HANDLER, - ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_USED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_UNUSED_HANDLER, - ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_USED_HANDLER, - ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_UNUSED_HANDLER, - ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_USED_HANDLER, - ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_UNUSED_HANDLER, - ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_USED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_SPEC_CV_CV_RETVAL_UNUSED_HANDLER, - ZEND_ASSIGN_SPEC_CV_CV_RETVAL_USED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CONST_HANDLER, - ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_TMP_HANDLER, - ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OP_SPEC_VAR_CONST_HANDLER, - ZEND_ASSIGN_OP_SPEC_VAR_TMPVAR_HANDLER, - ZEND_ASSIGN_OP_SPEC_VAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OP_SPEC_VAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OP_SPEC_CV_CONST_HANDLER, - ZEND_ASSIGN_OP_SPEC_CV_TMPVAR_HANDLER, - ZEND_ASSIGN_OP_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OP_SPEC_CV_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_OP_SPEC_VAR_CONST_HANDLER, - ZEND_ASSIGN_DIM_OP_SPEC_VAR_TMPVAR_HANDLER, - ZEND_ASSIGN_DIM_OP_SPEC_VAR_TMPVAR_HANDLER, - ZEND_ASSIGN_DIM_OP_SPEC_VAR_UNUSED_HANDLER, - ZEND_ASSIGN_DIM_OP_SPEC_VAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_DIM_OP_SPEC_CV_CONST_HANDLER, - ZEND_ASSIGN_DIM_OP_SPEC_CV_TMPVAR_HANDLER, - ZEND_ASSIGN_DIM_OP_SPEC_CV_TMPVAR_HANDLER, - ZEND_ASSIGN_DIM_OP_SPEC_CV_UNUSED_HANDLER, - ZEND_ASSIGN_DIM_OP_SPEC_CV_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CONST_HANDLER, - ZEND_ASSIGN_OBJ_OP_SPEC_VAR_TMPVAR_HANDLER, - ZEND_ASSIGN_OBJ_OP_SPEC_VAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CV_HANDLER, - ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CONST_HANDLER, - ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CV_HANDLER, - ZEND_ASSIGN_OBJ_OP_SPEC_CV_CONST_HANDLER, - ZEND_ASSIGN_OBJ_OP_SPEC_CV_TMPVAR_HANDLER, - ZEND_ASSIGN_OBJ_OP_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_OP_SPEC_CV_CV_HANDLER, - ZEND_ASSIGN_STATIC_PROP_OP_SPEC_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_REF_SPEC_VAR_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_REF_SPEC_VAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_REF_SPEC_CV_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_REF_SPEC_CV_CV_HANDLER, - ZEND_QM_ASSIGN_SPEC_CONST_HANDLER, - ZEND_QM_ASSIGN_SPEC_TMP_HANDLER, - ZEND_QM_ASSIGN_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_QM_ASSIGN_SPEC_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_CV_HANDLER, - ZEND_ASSIGN_STATIC_PROP_REF_SPEC_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_PRE_INC_SPEC_VAR_RETVAL_UNUSED_HANDLER, - ZEND_PRE_INC_SPEC_VAR_RETVAL_USED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_PRE_INC_SPEC_CV_RETVAL_UNUSED_HANDLER, - ZEND_PRE_INC_SPEC_CV_RETVAL_USED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_PRE_DEC_SPEC_VAR_RETVAL_UNUSED_HANDLER, - ZEND_PRE_DEC_SPEC_VAR_RETVAL_USED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_PRE_DEC_SPEC_CV_RETVAL_UNUSED_HANDLER, - ZEND_PRE_DEC_SPEC_CV_RETVAL_USED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_POST_INC_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_POST_INC_SPEC_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_POST_DEC_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_POST_DEC_SPEC_CV_HANDLER, - ZEND_PRE_INC_STATIC_PROP_SPEC_HANDLER, - ZEND_POST_INC_STATIC_PROP_SPEC_HANDLER, - ZEND_JMP_SPEC_HANDLER, - ZEND_JMPZ_SPEC_CONST_HANDLER, - ZEND_JMPZ_SPEC_TMPVAR_HANDLER, - ZEND_JMPZ_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_JMPZ_SPEC_CV_HANDLER, - ZEND_JMPNZ_SPEC_CONST_HANDLER, - ZEND_JMPNZ_SPEC_TMPVAR_HANDLER, - ZEND_JMPNZ_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_JMPNZ_SPEC_CV_HANDLER, - ZEND_JMPZNZ_SPEC_CONST_HANDLER, - ZEND_JMPZNZ_SPEC_TMPVAR_HANDLER, - ZEND_JMPZNZ_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_JMPZNZ_SPEC_CV_HANDLER, - ZEND_JMPZ_EX_SPEC_CONST_HANDLER, - ZEND_JMPZ_EX_SPEC_TMPVAR_HANDLER, - ZEND_JMPZ_EX_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_JMPZ_EX_SPEC_CV_HANDLER, - ZEND_JMPNZ_EX_SPEC_CONST_HANDLER, - ZEND_JMPNZ_EX_SPEC_TMPVAR_HANDLER, - ZEND_JMPNZ_EX_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_JMPNZ_EX_SPEC_CV_HANDLER, - ZEND_CASE_SPEC_TMPVAR_CONST_HANDLER, - ZEND_CASE_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_CASE_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_CASE_SPEC_TMPVAR_CV_HANDLER, - ZEND_CHECK_VAR_SPEC_CV_UNUSED_HANDLER, - ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR_HANDLER, - ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR_QUICK_HANDLER, - ZEND_CAST_SPEC_CONST_HANDLER, - ZEND_CAST_SPEC_TMP_HANDLER, - ZEND_CAST_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_CAST_SPEC_CV_HANDLER, - ZEND_BOOL_SPEC_CONST_HANDLER, - ZEND_BOOL_SPEC_TMPVAR_HANDLER, - ZEND_BOOL_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BOOL_SPEC_CV_HANDLER, - ZEND_FAST_CONCAT_SPEC_CONST_CONST_HANDLER, - ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR_HANDLER, - ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FAST_CONCAT_SPEC_CONST_CV_HANDLER, - ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST_HANDLER, - ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FAST_CONCAT_SPEC_TMPVAR_CV_HANDLER, - ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST_HANDLER, - ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FAST_CONCAT_SPEC_TMPVAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FAST_CONCAT_SPEC_CV_CONST_HANDLER, - ZEND_FAST_CONCAT_SPEC_CV_TMPVAR_HANDLER, - ZEND_FAST_CONCAT_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FAST_CONCAT_SPEC_CV_CV_HANDLER, - ZEND_ROPE_INIT_SPEC_UNUSED_CONST_HANDLER, - ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ROPE_INIT_SPEC_UNUSED_CV_HANDLER, - ZEND_ROPE_ADD_SPEC_TMP_CONST_HANDLER, - ZEND_ROPE_ADD_SPEC_TMP_TMPVAR_HANDLER, - ZEND_ROPE_ADD_SPEC_TMP_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ROPE_ADD_SPEC_TMP_CV_HANDLER, - ZEND_ROPE_END_SPEC_TMP_CONST_HANDLER, - ZEND_ROPE_END_SPEC_TMP_TMPVAR_HANDLER, - ZEND_ROPE_END_SPEC_TMP_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ROPE_END_SPEC_TMP_CV_HANDLER, - ZEND_BEGIN_SILENCE_SPEC_HANDLER, - ZEND_END_SILENCE_SPEC_TMP_HANDLER, - ZEND_INIT_FCALL_BY_NAME_SPEC_CONST_HANDLER, - ZEND_DO_FCALL_SPEC_RETVAL_UNUSED_HANDLER, - ZEND_DO_FCALL_SPEC_RETVAL_USED_HANDLER, - ZEND_INIT_FCALL_SPEC_CONST_HANDLER, - ZEND_RETURN_SPEC_CONST_HANDLER, - ZEND_RETURN_SPEC_TMP_HANDLER, - ZEND_RETURN_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_RETURN_SPEC_CV_HANDLER, - ZEND_RECV_SPEC_UNUSED_HANDLER, - ZEND_RECV_INIT_SPEC_CONST_HANDLER, - ZEND_SEND_VAL_SPEC_CONST_HANDLER, - ZEND_SEND_VAL_SPEC_TMPVAR_HANDLER, - ZEND_SEND_VAL_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SEND_VAR_EX_SPEC_VAR_HANDLER, - ZEND_SEND_VAR_EX_SPEC_VAR_QUICK_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SEND_VAR_EX_SPEC_CV_HANDLER, - ZEND_SEND_VAR_EX_SPEC_CV_QUICK_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SEND_REF_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SEND_REF_SPEC_CV_HANDLER, - ZEND_NEW_SPEC_CONST_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NEW_SPEC_VAR_UNUSED_HANDLER, - ZEND_NEW_SPEC_UNUSED_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INIT_NS_FCALL_BY_NAME_SPEC_CONST_HANDLER, - ZEND_FREE_SPEC_TMPVAR_HANDLER, - ZEND_INIT_ARRAY_SPEC_CONST_CONST_HANDLER, - ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR_HANDLER, - ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR_HANDLER, - ZEND_INIT_ARRAY_SPEC_CONST_UNUSED_HANDLER, - ZEND_INIT_ARRAY_SPEC_CONST_CV_HANDLER, - ZEND_INIT_ARRAY_SPEC_TMP_CONST_HANDLER, - ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR_HANDLER, - ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR_HANDLER, - ZEND_INIT_ARRAY_SPEC_TMP_UNUSED_HANDLER, - ZEND_INIT_ARRAY_SPEC_TMP_CV_HANDLER, - ZEND_INIT_ARRAY_SPEC_VAR_CONST_HANDLER, - ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR_HANDLER, - ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR_HANDLER, - ZEND_INIT_ARRAY_SPEC_VAR_UNUSED_HANDLER, - ZEND_INIT_ARRAY_SPEC_VAR_CV_HANDLER, - ZEND_INIT_ARRAY_SPEC_UNUSED_CONST_HANDLER, - ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_INIT_ARRAY_SPEC_UNUSED_UNUSED_HANDLER, - ZEND_INIT_ARRAY_SPEC_UNUSED_CV_HANDLER, - ZEND_INIT_ARRAY_SPEC_CV_CONST_HANDLER, - ZEND_INIT_ARRAY_SPEC_CV_TMPVAR_HANDLER, - ZEND_INIT_ARRAY_SPEC_CV_TMPVAR_HANDLER, - ZEND_INIT_ARRAY_SPEC_CV_UNUSED_HANDLER, - ZEND_INIT_ARRAY_SPEC_CV_CV_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CONST_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_UNUSED_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CV_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CONST_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_UNUSED_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CV_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CONST_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_UNUSED_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CONST_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_UNUSED_HANDLER, - ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CV_HANDLER, - ZEND_INCLUDE_OR_EVAL_SPEC_CONST_HANDLER, - ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_HANDLER, - ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INCLUDE_OR_EVAL_SPEC_CV_HANDLER, - ZEND_UNSET_VAR_SPEC_CONST_UNUSED_HANDLER, - ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_UNSET_VAR_SPEC_CV_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_UNSET_DIM_SPEC_VAR_CONST_HANDLER, - ZEND_UNSET_DIM_SPEC_VAR_TMPVAR_HANDLER, - ZEND_UNSET_DIM_SPEC_VAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_UNSET_DIM_SPEC_VAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_UNSET_DIM_SPEC_CV_CONST_HANDLER, - ZEND_UNSET_DIM_SPEC_CV_TMPVAR_HANDLER, - ZEND_UNSET_DIM_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_UNSET_DIM_SPEC_CV_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_UNSET_OBJ_SPEC_VAR_CONST_HANDLER, - ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR_HANDLER, - ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_UNSET_OBJ_SPEC_VAR_CV_HANDLER, - ZEND_UNSET_OBJ_SPEC_UNUSED_CONST_HANDLER, - ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_UNSET_OBJ_SPEC_UNUSED_CV_HANDLER, - ZEND_UNSET_OBJ_SPEC_CV_CONST_HANDLER, - ZEND_UNSET_OBJ_SPEC_CV_TMPVAR_HANDLER, - ZEND_UNSET_OBJ_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_UNSET_OBJ_SPEC_CV_CV_HANDLER, - ZEND_FE_RESET_R_SPEC_CONST_HANDLER, - ZEND_FE_RESET_R_SPEC_TMP_HANDLER, - ZEND_FE_RESET_R_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FE_RESET_R_SPEC_CV_HANDLER, - ZEND_FE_FETCH_R_SPEC_VAR_HANDLER, - ZEND_EXIT_SPEC_HANDLER, - ZEND_FETCH_R_SPEC_CONST_UNUSED_HANDLER, - ZEND_FETCH_R_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_FETCH_R_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_R_SPEC_CV_UNUSED_HANDLER, - ZEND_FETCH_DIM_R_SPEC_CONST_CONST_HANDLER, - ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR_HANDLER, - ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_R_SPEC_CONST_CV_HANDLER, - ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST_HANDLER, - ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV_HANDLER, - ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST_HANDLER, - ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_R_SPEC_CV_CONST_HANDLER, - ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_R_SPEC_CV_CV_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_CONST_CONST_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_CONST_CV_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CONST_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CV_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CONST_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CV_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_UNUSED_CONST_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_UNUSED_CV_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_CV_CONST_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_R_SPEC_CV_CV_HANDLER, - ZEND_FETCH_W_SPEC_CONST_UNUSED_HANDLER, - ZEND_FETCH_W_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_FETCH_W_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_W_SPEC_CV_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_W_SPEC_VAR_CONST_HANDLER, - ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR_HANDLER, - ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR_HANDLER, - ZEND_FETCH_DIM_W_SPEC_VAR_UNUSED_HANDLER, - ZEND_FETCH_DIM_W_SPEC_VAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_W_SPEC_CV_CONST_HANDLER, - ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_DIM_W_SPEC_CV_UNUSED_HANDLER, - ZEND_FETCH_DIM_W_SPEC_CV_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_W_SPEC_VAR_CONST_HANDLER, - ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_W_SPEC_VAR_CV_HANDLER, - ZEND_FETCH_OBJ_W_SPEC_UNUSED_CONST_HANDLER, - ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_W_SPEC_UNUSED_CV_HANDLER, - ZEND_FETCH_OBJ_W_SPEC_CV_CONST_HANDLER, - ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_W_SPEC_CV_CV_HANDLER, - ZEND_FETCH_RW_SPEC_CONST_UNUSED_HANDLER, - ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_RW_SPEC_CV_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_RW_SPEC_VAR_CONST_HANDLER, - ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR_HANDLER, - ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR_HANDLER, - ZEND_FETCH_DIM_RW_SPEC_VAR_UNUSED_HANDLER, - ZEND_FETCH_DIM_RW_SPEC_VAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_RW_SPEC_CV_CONST_HANDLER, - ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_DIM_RW_SPEC_CV_UNUSED_HANDLER, - ZEND_FETCH_DIM_RW_SPEC_CV_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_RW_SPEC_VAR_CONST_HANDLER, - ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_RW_SPEC_VAR_CV_HANDLER, - ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CONST_HANDLER, - ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CV_HANDLER, - ZEND_FETCH_OBJ_RW_SPEC_CV_CONST_HANDLER, - ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_RW_SPEC_CV_CV_HANDLER, - ZEND_FETCH_IS_SPEC_CONST_UNUSED_HANDLER, - ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_IS_SPEC_CV_UNUSED_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_CONST_CONST_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_CONST_CV_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_CV_CONST_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_IS_SPEC_CV_CV_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_CONST_CONST_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_CONST_CV_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CONST_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CV_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_CV_CONST_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_IS_SPEC_CV_CV_HANDLER, - ZEND_FETCH_FUNC_ARG_SPEC_CONST_UNUSED_HANDLER, - ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_FUNC_ARG_SPEC_CV_UNUSED_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CONST_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_UNUSED_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CV_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CONST_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_UNUSED_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CV_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CONST_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_UNUSED_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CONST_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_UNUSED_HANDLER, - ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CV_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CONST_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CV_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CONST_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CV_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CONST_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CV_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CONST_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CV_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CONST_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CV_HANDLER, - ZEND_FETCH_UNSET_SPEC_CONST_UNUSED_HANDLER, - ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_UNSET_SPEC_CV_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_UNSET_SPEC_VAR_CONST_HANDLER, - ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR_HANDLER, - ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_UNSET_SPEC_VAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_UNSET_SPEC_CV_CONST_HANDLER, - ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_UNSET_SPEC_CV_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CONST_HANDLER, - ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CV_HANDLER, - ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CONST_HANDLER, - ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CV_HANDLER, - ZEND_FETCH_OBJ_UNSET_SPEC_CV_CONST_HANDLER, - ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR_HANDLER, - ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_OBJ_UNSET_SPEC_CV_CV_HANDLER, - ZEND_FETCH_LIST_R_SPEC_CONST_CONST_HANDLER, - ZEND_FETCH_LIST_R_SPEC_CONST_TMPVAR_HANDLER, - ZEND_FETCH_LIST_R_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_LIST_R_SPEC_CONST_CV_HANDLER, - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_HANDLER, - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CV_HANDLER, - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_HANDLER, - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_HANDLER, - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CV_HANDLER, - ZEND_FETCH_CONSTANT_SPEC_UNUSED_CONST_HANDLER, - ZEND_CHECK_FUNC_ARG_SPEC_UNUSED_HANDLER, - ZEND_CHECK_FUNC_ARG_SPEC_UNUSED_QUICK_HANDLER, - ZEND_EXT_STMT_SPEC_HANDLER, - ZEND_EXT_FCALL_BEGIN_SPEC_HANDLER, - ZEND_EXT_FCALL_END_SPEC_HANDLER, - ZEND_EXT_NOP_SPEC_HANDLER, - ZEND_TICKS_SPEC_HANDLER, - ZEND_SEND_VAR_NO_REF_SPEC_VAR_HANDLER, - ZEND_CATCH_SPEC_CONST_HANDLER, - ZEND_THROW_SPEC_CONST_HANDLER, - ZEND_THROW_SPEC_TMP_HANDLER, - ZEND_THROW_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_THROW_SPEC_CV_HANDLER, - ZEND_FETCH_CLASS_SPEC_UNUSED_CONST_HANDLER, - ZEND_FETCH_CLASS_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_FETCH_CLASS_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_FETCH_CLASS_SPEC_UNUSED_UNUSED_HANDLER, - ZEND_FETCH_CLASS_SPEC_UNUSED_CV_HANDLER, - ZEND_CLONE_SPEC_CONST_HANDLER, - ZEND_CLONE_SPEC_TMPVAR_HANDLER, - ZEND_CLONE_SPEC_TMPVAR_HANDLER, - ZEND_CLONE_SPEC_UNUSED_HANDLER, - ZEND_CLONE_SPEC_CV_HANDLER, - ZEND_RETURN_BY_REF_SPEC_CONST_HANDLER, - ZEND_RETURN_BY_REF_SPEC_TMP_HANDLER, - ZEND_RETURN_BY_REF_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_RETURN_BY_REF_SPEC_CV_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_CONST_CONST_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_CONST_CV_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CONST_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CV_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_CV_CONST_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INIT_METHOD_CALL_SPEC_CV_CV_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CONST_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_UNUSED_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CONST_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_UNUSED_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CV_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CONST_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_UNUSED_HANDLER, - ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_UNUSED_HANDLER, - ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_UNUSED_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CONST_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CV_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CONST_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CV_HANDLER, - ZEND_SEND_VAL_EX_SPEC_CONST_HANDLER, - ZEND_SEND_VAL_EX_SPEC_CONST_QUICK_HANDLER, - ZEND_SEND_VAL_EX_SPEC_TMP_HANDLER, - ZEND_SEND_VAL_EX_SPEC_TMP_QUICK_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SEND_VAR_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SEND_VAR_SPEC_CV_HANDLER, - ZEND_INIT_USER_CALL_SPEC_CONST_CONST_HANDLER, - ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR_HANDLER, - ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INIT_USER_CALL_SPEC_CONST_CV_HANDLER, - ZEND_SEND_ARRAY_SPEC_HANDLER, - ZEND_SEND_USER_SPEC_CONST_HANDLER, - ZEND_SEND_USER_SPEC_TMP_HANDLER, - ZEND_SEND_USER_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SEND_USER_SPEC_CV_HANDLER, - ZEND_STRLEN_SPEC_CONST_HANDLER, - ZEND_STRLEN_SPEC_TMPVAR_HANDLER, - ZEND_STRLEN_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_STRLEN_SPEC_CV_HANDLER, - ZEND_DEFINED_SPEC_CONST_HANDLER, - ZEND_TYPE_CHECK_SPEC_CONST_HANDLER, - ZEND_TYPE_CHECK_SPEC_TMPVAR_HANDLER, - ZEND_TYPE_CHECK_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_TYPE_CHECK_SPEC_CV_HANDLER, - ZEND_VERIFY_RETURN_TYPE_SPEC_CONST_UNUSED_HANDLER, - ZEND_VERIFY_RETURN_TYPE_SPEC_TMP_UNUSED_HANDLER, - ZEND_VERIFY_RETURN_TYPE_SPEC_VAR_UNUSED_HANDLER, - ZEND_VERIFY_RETURN_TYPE_SPEC_UNUSED_UNUSED_HANDLER, - ZEND_VERIFY_RETURN_TYPE_SPEC_CV_UNUSED_HANDLER, - ZEND_FE_RESET_RW_SPEC_CONST_HANDLER, - ZEND_FE_RESET_RW_SPEC_TMP_HANDLER, - ZEND_FE_RESET_RW_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FE_RESET_RW_SPEC_CV_HANDLER, - ZEND_FE_FETCH_RW_SPEC_VAR_HANDLER, - ZEND_FE_FREE_SPEC_TMPVAR_HANDLER, - ZEND_INIT_DYNAMIC_CALL_SPEC_CONST_HANDLER, - ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR_HANDLER, - ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INIT_DYNAMIC_CALL_SPEC_CV_HANDLER, - ZEND_DO_ICALL_SPEC_RETVAL_UNUSED_HANDLER, - ZEND_DO_ICALL_SPEC_RETVAL_USED_HANDLER, - ZEND_DO_UCALL_SPEC_RETVAL_UNUSED_HANDLER, - ZEND_DO_UCALL_SPEC_RETVAL_USED_HANDLER, - ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_UNUSED_HANDLER, - ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_USED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_PRE_INC_OBJ_SPEC_VAR_CONST_HANDLER, - ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER, - ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_PRE_INC_OBJ_SPEC_VAR_CV_HANDLER, - ZEND_PRE_INC_OBJ_SPEC_UNUSED_CONST_HANDLER, - ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_PRE_INC_OBJ_SPEC_UNUSED_CV_HANDLER, - ZEND_PRE_INC_OBJ_SPEC_CV_CONST_HANDLER, - ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR_HANDLER, - ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_PRE_INC_OBJ_SPEC_CV_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_POST_INC_OBJ_SPEC_VAR_CONST_HANDLER, - ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER, - ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_POST_INC_OBJ_SPEC_VAR_CV_HANDLER, - ZEND_POST_INC_OBJ_SPEC_UNUSED_CONST_HANDLER, - ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_POST_INC_OBJ_SPEC_UNUSED_CV_HANDLER, - ZEND_POST_INC_OBJ_SPEC_CV_CONST_HANDLER, - ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR_HANDLER, - ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_POST_INC_OBJ_SPEC_CV_CV_HANDLER, - ZEND_ECHO_SPEC_CONST_HANDLER, - ZEND_ECHO_SPEC_TMPVAR_HANDLER, - ZEND_ECHO_SPEC_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ECHO_SPEC_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INSTANCEOF_SPEC_TMPVAR_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INSTANCEOF_SPEC_TMPVAR_VAR_HANDLER, - ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INSTANCEOF_SPEC_TMPVAR_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INSTANCEOF_SPEC_TMPVAR_VAR_HANDLER, - ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INSTANCEOF_SPEC_CV_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_INSTANCEOF_SPEC_CV_VAR_HANDLER, - ZEND_INSTANCEOF_SPEC_CV_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_GENERATOR_CREATE_SPEC_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MAKE_REF_SPEC_VAR_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MAKE_REF_SPEC_CV_UNUSED_HANDLER, - ZEND_DECLARE_FUNCTION_SPEC_HANDLER, - ZEND_DECLARE_LAMBDA_FUNCTION_SPEC_CONST_UNUSED_HANDLER, - ZEND_DECLARE_CONST_SPEC_CONST_CONST_HANDLER, - ZEND_DECLARE_CLASS_SPEC_CONST_HANDLER, - ZEND_DECLARE_CLASS_DELAYED_SPEC_CONST_CONST_HANDLER, - ZEND_DECLARE_ANON_CLASS_SPEC_HANDLER, - ZEND_ADD_ARRAY_UNPACK_SPEC_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CONST_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CV_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CONST_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CV_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CONST_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CV_HANDLER, - ZEND_HANDLE_EXCEPTION_SPEC_HANDLER, - ZEND_USER_OPCODE_SPEC_HANDLER, - ZEND_ASSERT_CHECK_SPEC_HANDLER, - ZEND_JMP_SET_SPEC_CONST_HANDLER, - ZEND_JMP_SET_SPEC_TMP_HANDLER, - ZEND_JMP_SET_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_JMP_SET_SPEC_CV_HANDLER, - ZEND_UNSET_CV_SPEC_CV_UNUSED_HANDLER, - ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_SET_HANDLER, - ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_EMPTY_HANDLER, - ZEND_FETCH_LIST_W_SPEC_VAR_CONST_HANDLER, - ZEND_FETCH_LIST_W_SPEC_VAR_TMPVAR_HANDLER, - ZEND_FETCH_LIST_W_SPEC_VAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_LIST_W_SPEC_VAR_CV_HANDLER, - ZEND_SEPARATE_SPEC_VAR_UNUSED_HANDLER, - ZEND_FETCH_CLASS_NAME_SPEC_UNUSED_HANDLER, - ZEND_CALL_TRAMPOLINE_SPEC_HANDLER, - ZEND_DISCARD_EXCEPTION_SPEC_HANDLER, - ZEND_YIELD_SPEC_CONST_CONST_HANDLER, - ZEND_YIELD_SPEC_CONST_TMP_HANDLER, - ZEND_YIELD_SPEC_CONST_VAR_HANDLER, - ZEND_YIELD_SPEC_CONST_UNUSED_HANDLER, - ZEND_YIELD_SPEC_CONST_CV_HANDLER, - ZEND_YIELD_SPEC_TMP_CONST_HANDLER, - ZEND_YIELD_SPEC_TMP_TMP_HANDLER, - ZEND_YIELD_SPEC_TMP_VAR_HANDLER, - ZEND_YIELD_SPEC_TMP_UNUSED_HANDLER, - ZEND_YIELD_SPEC_TMP_CV_HANDLER, - ZEND_YIELD_SPEC_VAR_CONST_HANDLER, - ZEND_YIELD_SPEC_VAR_TMP_HANDLER, - ZEND_YIELD_SPEC_VAR_VAR_HANDLER, - ZEND_YIELD_SPEC_VAR_UNUSED_HANDLER, - ZEND_YIELD_SPEC_VAR_CV_HANDLER, - ZEND_YIELD_SPEC_UNUSED_CONST_HANDLER, - ZEND_YIELD_SPEC_UNUSED_TMP_HANDLER, - ZEND_YIELD_SPEC_UNUSED_VAR_HANDLER, - ZEND_YIELD_SPEC_UNUSED_UNUSED_HANDLER, - ZEND_YIELD_SPEC_UNUSED_CV_HANDLER, - ZEND_YIELD_SPEC_CV_CONST_HANDLER, - ZEND_YIELD_SPEC_CV_TMP_HANDLER, - ZEND_YIELD_SPEC_CV_VAR_HANDLER, - ZEND_YIELD_SPEC_CV_UNUSED_HANDLER, - ZEND_YIELD_SPEC_CV_CV_HANDLER, - ZEND_GENERATOR_RETURN_SPEC_CONST_HANDLER, - ZEND_GENERATOR_RETURN_SPEC_TMP_HANDLER, - ZEND_GENERATOR_RETURN_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_GENERATOR_RETURN_SPEC_CV_HANDLER, - ZEND_FAST_CALL_SPEC_HANDLER, - ZEND_FAST_RET_SPEC_HANDLER, - ZEND_RECV_VARIADIC_SPEC_UNUSED_HANDLER, - ZEND_SEND_UNPACK_SPEC_HANDLER, - ZEND_YIELD_FROM_SPEC_CONST_HANDLER, - ZEND_YIELD_FROM_SPEC_TMP_HANDLER, - ZEND_YIELD_FROM_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_YIELD_FROM_SPEC_CV_HANDLER, - ZEND_COPY_TMP_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_BIND_GLOBAL_SPEC_CV_CONST_HANDLER, - ZEND_COALESCE_SPEC_CONST_HANDLER, - ZEND_COALESCE_SPEC_TMP_HANDLER, - ZEND_COALESCE_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_COALESCE_SPEC_CV_HANDLER, - ZEND_SPACESHIP_SPEC_CONST_CONST_HANDLER, - ZEND_SPACESHIP_SPEC_CONST_TMPVAR_HANDLER, - ZEND_SPACESHIP_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SPACESHIP_SPEC_CONST_CV_HANDLER, - ZEND_SPACESHIP_SPEC_TMPVAR_CONST_HANDLER, - ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SPACESHIP_SPEC_TMPVAR_CV_HANDLER, - ZEND_SPACESHIP_SPEC_TMPVAR_CONST_HANDLER, - ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SPACESHIP_SPEC_TMPVAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SPACESHIP_SPEC_CV_CONST_HANDLER, - ZEND_SPACESHIP_SPEC_CV_TMPVAR_HANDLER, - ZEND_SPACESHIP_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SPACESHIP_SPEC_CV_CV_HANDLER, - ZEND_FUNC_NUM_ARGS_SPEC_UNUSED_UNUSED_HANDLER, - ZEND_FUNC_GET_ARGS_SPEC_CONST_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FUNC_GET_ARGS_SPEC_UNUSED_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_STATIC_PROP_R_SPEC_HANDLER, - ZEND_FETCH_STATIC_PROP_W_SPEC_HANDLER, - ZEND_FETCH_STATIC_PROP_RW_SPEC_HANDLER, - ZEND_FETCH_STATIC_PROP_IS_SPEC_HANDLER, - ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC_HANDLER, - ZEND_FETCH_STATIC_PROP_UNSET_SPEC_HANDLER, - ZEND_UNSET_STATIC_PROP_SPEC_HANDLER, - ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC_HANDLER, - ZEND_FETCH_CLASS_CONSTANT_SPEC_CONST_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_CLASS_CONSTANT_SPEC_VAR_CONST_HANDLER, - ZEND_FETCH_CLASS_CONSTANT_SPEC_UNUSED_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_BIND_LEXICAL_SPEC_TMP_CV_HANDLER, - ZEND_BIND_STATIC_SPEC_CV_UNUSED_HANDLER, - ZEND_FETCH_THIS_SPEC_UNUSED_UNUSED_HANDLER, - ZEND_SEND_FUNC_ARG_SPEC_VAR_HANDLER, - ZEND_ISSET_ISEMPTY_THIS_SPEC_UNUSED_UNUSED_HANDLER, - ZEND_SWITCH_LONG_SPEC_CONST_CONST_HANDLER, - ZEND_SWITCH_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SWITCH_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SWITCH_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SWITCH_STRING_SPEC_CONST_CONST_HANDLER, - ZEND_SWITCH_STRING_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SWITCH_STRING_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SWITCH_STRING_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IN_ARRAY_SPEC_CONST_CONST_HANDLER, - ZEND_IN_ARRAY_SPEC_TMP_CONST_HANDLER, - ZEND_IN_ARRAY_SPEC_VAR_CONST_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IN_ARRAY_SPEC_CV_CONST_HANDLER, - ZEND_COUNT_SPEC_CONST_UNUSED_HANDLER, - ZEND_COUNT_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_COUNT_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_COUNT_SPEC_CV_UNUSED_HANDLER, - ZEND_GET_CLASS_SPEC_CONST_UNUSED_HANDLER, - ZEND_GET_CLASS_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_GET_CLASS_SPEC_TMPVAR_UNUSED_HANDLER, - ZEND_GET_CLASS_SPEC_UNUSED_UNUSED_HANDLER, - ZEND_GET_CLASS_SPEC_CV_UNUSED_HANDLER, - ZEND_GET_CALLED_CLASS_SPEC_UNUSED_UNUSED_HANDLER, - ZEND_GET_TYPE_SPEC_CONST_UNUSED_HANDLER, - ZEND_GET_TYPE_SPEC_TMP_UNUSED_HANDLER, - ZEND_GET_TYPE_SPEC_VAR_UNUSED_HANDLER, - ZEND_NULL_HANDLER, - ZEND_GET_TYPE_SPEC_CV_UNUSED_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CONST_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_TMPVAR_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CV_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CONST_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CV_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CONST_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CONST_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CV_HANDLER, - ZEND_JMP_FORWARD_SPEC_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_LONG_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_SUB_LONG_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_LONG_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_SUB_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ_HANDLER, - ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ_HANDLER, - ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED_HANDLER, - ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED_HANDLER, - ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_UNUSED_HANDLER, - ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_USED_HANDLER, - ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED_HANDLER, - ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED_HANDLER, - ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_UNUSED_HANDLER, - ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_USED_HANDLER, - ZEND_POST_INC_LONG_NO_OVERFLOW_SPEC_CV_HANDLER, - ZEND_POST_INC_LONG_SPEC_CV_HANDLER, - ZEND_POST_DEC_LONG_NO_OVERFLOW_SPEC_CV_HANDLER, - ZEND_POST_DEC_LONG_SPEC_CV_HANDLER, - ZEND_QM_ASSIGN_LONG_SPEC_CONST_HANDLER, - ZEND_QM_ASSIGN_LONG_SPEC_TMPVARCV_HANDLER, - ZEND_QM_ASSIGN_LONG_SPEC_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_QM_ASSIGN_LONG_SPEC_TMPVARCV_HANDLER, - ZEND_QM_ASSIGN_DOUBLE_SPEC_CONST_HANDLER, - ZEND_QM_ASSIGN_DOUBLE_SPEC_TMPVARCV_HANDLER, - ZEND_QM_ASSIGN_DOUBLE_SPEC_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_QM_ASSIGN_DOUBLE_SPEC_TMPVARCV_HANDLER, - ZEND_QM_ASSIGN_NOREF_SPEC_CONST_HANDLER, - ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV_HANDLER, - ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_CONST_TMPVARCV_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_CONST_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_CONST_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_CV_CONST_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_CV_TMPVARCV_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_CV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_FETCH_DIM_R_INDEX_SPEC_CV_TMPVARCV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SEND_VAR_SIMPLE_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SEND_VAR_SIMPLE_SPEC_CV_HANDLER, - ZEND_NULL_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SEND_VAR_EX_SIMPLE_SPEC_VAR_HANDLER, - ZEND_NULL_HANDLER, - ZEND_SEND_VAR_EX_SIMPLE_SPEC_CV_HANDLER, - ZEND_SEND_VAL_SIMPLE_SPEC_CONST_HANDLER, - ZEND_SEND_VAL_EX_SIMPLE_SPEC_CONST_HANDLER, - ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_UNUSED_HANDLER, - ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_USED_HANDLER, - ZEND_NULL_HANDLER - }; - static const uint32_t specs[] = { - 0, - 1 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 26 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 51 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_COMMUTATIVE, - 76 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 101 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 126 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 151 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 176 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 201 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_COMMUTATIVE, - 226 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_COMMUTATIVE, - 251 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_COMMUTATIVE, - 276 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 301 | SPEC_RULE_OP1, - 306 | SPEC_RULE_OP1, - 311 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_COMMUTATIVE, - 336 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_COMMUTATIVE, - 361 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_COMMUTATIVE, - 386 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH | SPEC_RULE_COMMUTATIVE, - 461 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH | SPEC_RULE_COMMUTATIVE, - 536 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH, - 611 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH, - 686 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_RETVAL, - 736 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_OP_DATA, - 861 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_OP_DATA, - 986 | SPEC_RULE_OP_DATA, - 991 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1016 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1041 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1066, - 1067 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1092 | SPEC_RULE_OP1, - 1097 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_OP_DATA, - 1222, - 1223 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL, - 1233 | SPEC_RULE_OP1 | SPEC_RULE_RETVAL, - 1243 | SPEC_RULE_OP1, - 1248 | SPEC_RULE_OP1, - 1253, - 1253, - 1254, - 1254, - 1255, - 1256 | SPEC_RULE_OP1, - 1261 | SPEC_RULE_OP1, - 1266 | SPEC_RULE_OP1, - 1271 | SPEC_RULE_OP1, - 1276 | SPEC_RULE_OP1, - 1281 | SPEC_RULE_OP2, - 1286, - 1287 | SPEC_RULE_QUICK_ARG, - 1289 | SPEC_RULE_OP1, - 1294 | SPEC_RULE_OP1, - 1299 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1324 | SPEC_RULE_OP2, - 1329 | SPEC_RULE_OP2, - 1334 | SPEC_RULE_OP2, - 1339, - 1340, - 1341, - 1342 | SPEC_RULE_RETVAL, - 1344, - 1345 | SPEC_RULE_OP1, - 1350, - 1351, - 1352 | SPEC_RULE_OP1, - 1357 | SPEC_RULE_OP1 | SPEC_RULE_QUICK_ARG, - 1367 | SPEC_RULE_OP1, - 1372 | SPEC_RULE_OP1, - 1377, - 1378, - 1379 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1404 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1429 | SPEC_RULE_OP1, - 1434 | SPEC_RULE_OP1, - 1439 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1464 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1489 | SPEC_RULE_OP1, - 1494, - 1495, - 1496 | SPEC_RULE_OP1, - 1501 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1526 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1551 | SPEC_RULE_OP1, - 1556 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1581 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1606 | SPEC_RULE_OP1, - 1611 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1636 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1661 | SPEC_RULE_OP1, - 1666 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1691 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1716 | SPEC_RULE_OP1, - 1721 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1746 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1771 | SPEC_RULE_OP1, - 1776 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1801 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1826 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1851, - 1852 | SPEC_RULE_QUICK_ARG, - 1854, - 1855, - 1856, - 1857, - 1858, - 1859, - 1860, - 1861 | SPEC_RULE_OP1, - 1866 | SPEC_RULE_OP2, - 1871 | SPEC_RULE_OP1, - 1876 | SPEC_RULE_OP1, - 1881 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1906 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1931 | SPEC_RULE_OP1, - 1936 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 1961 | SPEC_RULE_OP1 | SPEC_RULE_QUICK_ARG, - 1971 | SPEC_RULE_OP1, - 1976 | SPEC_RULE_OP2, - 1981, - 1982 | SPEC_RULE_OP1, - 1987 | SPEC_RULE_OP1, - 1992, - 1993 | SPEC_RULE_OP1, - 1998 | SPEC_RULE_OP1, - 2003 | SPEC_RULE_OP1, - 2008, - 2009, - 2010 | SPEC_RULE_OP2, - 2015 | SPEC_RULE_RETVAL, - 2017 | SPEC_RULE_RETVAL, - 2019 | SPEC_RULE_RETVAL, - 2021 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2021 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2046 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2046 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2071 | SPEC_RULE_OP1, - 2076, - 2077 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2102, - 2103 | SPEC_RULE_OP1, - 2108, - 2109, - 2110, - 2111, - 2112, - 2113, - 2114, - 2115 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2140, - 2141, - 2142, - 2143 | SPEC_RULE_OP1, - 2148, - 2149 | SPEC_RULE_ISSET, - 2151 | SPEC_RULE_OP2, - 2156, - 2157, - 2158, - 2159, - 2160 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2185 | SPEC_RULE_OP1, - 2190, - 2191, - 2192, - 2193, - 2194 | SPEC_RULE_OP1, - 2199, - 2200, - 2201 | SPEC_RULE_OP1, - 2206 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 2231, - 2232 | SPEC_RULE_OP1, - 2237, - 2238, - 2239, - 2240, - 2241, - 2242, - 2243, - 2244, - 2245 | SPEC_RULE_OP1, - 2250, - 2251, - 2252, - 2253, - 2254, - 2255 | SPEC_RULE_OP1, - 2260 | SPEC_RULE_OP1, - 2265 | SPEC_RULE_OP1, - 2270 | SPEC_RULE_OP1, - 2275 | SPEC_RULE_OP1, - 2280, - 2281 | SPEC_RULE_OP1, - 2286 | SPEC_RULE_OP1 | SPEC_RULE_OP2, - 3203 - }; -#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) - zend_opcode_handler_funcs = labels; - zend_spec_handlers = specs; - execute_ex(NULL); -#else - zend_opcode_handlers = labels; - zend_handlers_count = sizeof(labels) / sizeof(void*); - zend_spec_handlers = specs; -#endif - VM_TRACE_START(); -} - -static HashTable *zend_handlers_table = NULL; - -void zend_vm_dtor(void) -{ - VM_TRACE_END(); - if (zend_handlers_table) { - zend_hash_destroy(zend_handlers_table); - free(zend_handlers_table); - zend_handlers_table = NULL; - } -} - -static void init_opcode_serialiser(void) -{ - int i; - zval tmp; - - zend_handlers_table = malloc(sizeof(HashTable)); - zend_hash_init_ex(zend_handlers_table, zend_handlers_count, NULL, NULL, 1, 0); - zend_hash_real_init(zend_handlers_table, 0); - Z_TYPE_INFO(tmp) = IS_LONG; - for (i = 0; i < zend_handlers_count; i++) { - Z_LVAL(tmp) = i; - zend_hash_index_add(zend_handlers_table, (zend_long)(zend_uintptr_t)zend_opcode_handlers[i], &tmp); - } -} - -ZEND_API void ZEND_FASTCALL zend_serialize_opcode_handler(zend_op *op) -{ - zval *zv; - - if (!zend_handlers_table) { - init_opcode_serialiser(); - } - zv = zend_hash_index_find(zend_handlers_table, (zend_long)(zend_uintptr_t)op->handler); - ZEND_ASSERT(zv != NULL); - op->handler = (const void *)(zend_uintptr_t)Z_LVAL_P(zv); -} - -ZEND_API void ZEND_FASTCALL zend_deserialize_opcode_handler(zend_op *op) -{ - op->handler = zend_opcode_handlers[(zend_uintptr_t)op->handler]; -} - -ZEND_API const void* ZEND_FASTCALL zend_get_opcode_handler_func(const zend_op *op) -{ -#if ZEND_VM_KIND == ZEND_VM_KIND_CALL - return op->handler; -#elif ZEND_VM_KIND == ZEND_VM_KIND_HYBRID - zval *zv; - - if (!zend_handlers_table) { - init_opcode_serialiser(); - } - zv = zend_hash_index_find(zend_handlers_table, (zend_long)(zend_uintptr_t)op->handler); - ZEND_ASSERT(zv != NULL); - return zend_opcode_handler_funcs[Z_LVAL_P(zv)]; -#else - return NULL; -#endif -} - -ZEND_API const zend_op *zend_get_halt_op(void) -{ -#if ZEND_VM_KIND == ZEND_VM_KIND_HYBRID - return &hybrid_halt_op; -#else - return NULL; -#endif -} - -ZEND_API int zend_vm_kind(void) -{ - return ZEND_VM_KIND; -} - -static const void* ZEND_FASTCALL zend_vm_get_opcode_handler_ex(uint32_t spec, const zend_op* op) -{ - static const int zend_vm_decode[] = { - _UNUSED_CODE, /* 0 = IS_UNUSED */ - _CONST_CODE, /* 1 = IS_CONST */ - _TMP_CODE, /* 2 = IS_TMP_VAR */ - _UNUSED_CODE, /* 3 */ - _VAR_CODE, /* 4 = IS_VAR */ - _UNUSED_CODE, /* 5 */ - _UNUSED_CODE, /* 6 */ - _UNUSED_CODE, /* 7 */ - _CV_CODE /* 8 = IS_CV */ - }; - uint32_t offset = 0; - if (spec & SPEC_RULE_OP1) offset = offset * 5 + zend_vm_decode[op->op1_type]; - if (spec & SPEC_RULE_OP2) offset = offset * 5 + zend_vm_decode[op->op2_type]; - if (spec & SPEC_EXTRA_MASK) { - if (spec & SPEC_RULE_RETVAL) { - offset = offset * 2 + (op->result_type != IS_UNUSED); - } else if (spec & SPEC_RULE_QUICK_ARG) { - offset = offset * 2 + (op->op2.num <= MAX_ARG_FLAG_NUM); - } else if (spec & SPEC_RULE_OP_DATA) { - offset = offset * 5 + zend_vm_decode[(op + 1)->op1_type]; - } else if (spec & SPEC_RULE_ISSET) { - offset = offset * 2 + (op->extended_value & ZEND_ISEMPTY); - } else if (spec & SPEC_RULE_SMART_BRANCH) { - offset = offset * 3; - if ((op+1)->opcode == ZEND_JMPZ) { - offset += 1; - } else if ((op+1)->opcode == ZEND_JMPNZ) { - offset += 2; - } - } - } - return zend_opcode_handlers[(spec & SPEC_START_MASK) + offset]; -} - -#if (ZEND_VM_KIND != ZEND_VM_KIND_HYBRID) || !ZEND_VM_SPEC -static const void *zend_vm_get_opcode_handler(zend_uchar opcode, const zend_op* op) -{ - return zend_vm_get_opcode_handler_ex(zend_spec_handlers[opcode], op); -} -#endif - -#if ZEND_VM_KIND == ZEND_VM_KIND_HYBRID -static const void *zend_vm_get_opcode_handler_func(zend_uchar opcode, const zend_op* op) -{ - uint32_t spec = zend_spec_handlers[opcode]; - static const int zend_vm_decode[] = { - _UNUSED_CODE, /* 0 = IS_UNUSED */ - _CONST_CODE, /* 1 = IS_CONST */ - _TMP_CODE, /* 2 = IS_TMP_VAR */ - _UNUSED_CODE, /* 3 */ - _VAR_CODE, /* 4 = IS_VAR */ - _UNUSED_CODE, /* 5 */ - _UNUSED_CODE, /* 6 */ - _UNUSED_CODE, /* 7 */ - _CV_CODE /* 8 = IS_CV */ - }; - uint32_t offset = 0; - if (spec & SPEC_RULE_OP1) offset = offset * 5 + zend_vm_decode[op->op1_type]; - if (spec & SPEC_RULE_OP2) offset = offset * 5 + zend_vm_decode[op->op2_type]; - if (spec & SPEC_EXTRA_MASK) { - if (spec & SPEC_RULE_OP_DATA) offset = offset * 5 + zend_vm_decode[(op + 1)->op1_type]; - else if (spec & SPEC_RULE_RETVAL) offset = offset * 2 + (op->result_type != IS_UNUSED); - else if (spec & SPEC_RULE_QUICK_ARG) offset = offset * 2 + (op->op2.num <= MAX_ARG_FLAG_NUM); - else if (spec & SPEC_RULE_SMART_BRANCH) { - offset = offset * 3; - if ((op+1)->opcode == ZEND_JMPZ) { - offset += 1; - } else if ((op+1)->opcode == ZEND_JMPNZ) { - offset += 2; - } - } - else if (spec & SPEC_RULE_ISSET) offset = offset * 2 + (op->extended_value & ZEND_ISEMPTY); - } - return zend_opcode_handler_funcs[(spec & SPEC_START_MASK) + offset]; -} - -#endif - -ZEND_API void ZEND_FASTCALL zend_vm_set_opcode_handler(zend_op* op) -{ - zend_uchar opcode = zend_user_opcodes[op->opcode]; - - if (zend_spec_handlers[op->opcode] & SPEC_RULE_COMMUTATIVE) { - if (op->op1_type < op->op2_type) { - zend_swap_operands(op); - } - } - op->handler = zend_vm_get_opcode_handler_ex(zend_spec_handlers[opcode], op); -} - -ZEND_API void ZEND_FASTCALL zend_vm_set_opcode_handler_ex(zend_op* op, uint32_t op1_info, uint32_t op2_info, uint32_t res_info) -{ - zend_uchar opcode = zend_user_opcodes[op->opcode]; - uint32_t spec = zend_spec_handlers[opcode]; - switch (opcode) { - case ZEND_ADD: - if (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2312 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_COMMUTATIVE; - if (op->op1_type < op->op2_type) { - zend_swap_operands(op); - } - } else if (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2337 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_COMMUTATIVE; - if (op->op1_type < op->op2_type) { - zend_swap_operands(op); - } - } else if (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2362 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_COMMUTATIVE; - if (op->op1_type < op->op2_type) { - zend_swap_operands(op); - } - } - break; - case ZEND_SUB: - if (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2387 | SPEC_RULE_OP1 | SPEC_RULE_OP2; - } else if (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2412 | SPEC_RULE_OP1 | SPEC_RULE_OP2; - } else if (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2437 | SPEC_RULE_OP1 | SPEC_RULE_OP2; - } - break; - case ZEND_MUL: - if (op->op1_type < op->op2_type) { - zend_swap_operands(op); - } - if (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2462 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_COMMUTATIVE; - } else if (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2487 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_COMMUTATIVE; - } else if (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2512 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_COMMUTATIVE; - } - break; - case ZEND_IS_EQUAL: - if (op->op1_type < op->op2_type) { - zend_swap_operands(op); - } - if (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2537 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH | SPEC_RULE_COMMUTATIVE; - } else if (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2612 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH | SPEC_RULE_COMMUTATIVE; - } - break; - case ZEND_IS_NOT_EQUAL: - if (op->op1_type < op->op2_type) { - zend_swap_operands(op); - } - if (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2687 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH | SPEC_RULE_COMMUTATIVE; - } else if (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2762 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH | SPEC_RULE_COMMUTATIVE; - } - break; - case ZEND_IS_SMALLER: - if (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2837 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; - } else if (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2912 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; - } - break; - case ZEND_IS_SMALLER_OR_EQUAL: - if (op1_info == MAY_BE_LONG && op2_info == MAY_BE_LONG) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 2987 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; - } else if (op1_info == MAY_BE_DOUBLE && op2_info == MAY_BE_DOUBLE) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 3062 | SPEC_RULE_OP1 | SPEC_RULE_OP2 | SPEC_RULE_SMART_BRANCH; - } - break; - case ZEND_QM_ASSIGN: - if (op1_info == MAY_BE_LONG) { - spec = 3149 | SPEC_RULE_OP1; - } else if (op1_info == MAY_BE_DOUBLE) { - spec = 3154 | SPEC_RULE_OP1; - } else if ((op->op1_type == IS_CONST) ? !Z_REFCOUNTED_P(RT_CONSTANT(op, op->op1)) : (!(op1_info & ((MAY_BE_ANY|MAY_BE_UNDEF)-(MAY_BE_NULL|MAY_BE_FALSE|MAY_BE_TRUE|MAY_BE_LONG|MAY_BE_DOUBLE))))) { - spec = 3159 | SPEC_RULE_OP1; - } - break; - case ZEND_PRE_INC: - if (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG) { - spec = 3137 | SPEC_RULE_RETVAL; - } else if (op1_info == MAY_BE_LONG) { - spec = 3139 | SPEC_RULE_RETVAL; - } - break; - case ZEND_PRE_DEC: - if (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG) { - spec = 3141 | SPEC_RULE_RETVAL; - } else if (op1_info == MAY_BE_LONG) { - spec = 3143 | SPEC_RULE_RETVAL; - } - break; - case ZEND_POST_INC: - if (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG) { - spec = 3145; - } else if (op1_info == MAY_BE_LONG) { - spec = 3146; - } - break; - case ZEND_POST_DEC: - if (res_info == MAY_BE_LONG && op1_info == MAY_BE_LONG) { - spec = 3147; - } else if (op1_info == MAY_BE_LONG) { - spec = 3148; - } - break; - case ZEND_JMP: - if (OP_JMP_ADDR(op, op->op1) > op) { - spec = 2311; - } - break; - case ZEND_SEND_VAL: - if (op->op1_type == IS_CONST && !Z_REFCOUNTED_P(RT_CONSTANT(op, op->op1))) { - spec = 3199; - } - break; - case ZEND_SEND_VAR_EX: - if (op->op2.num <= MAX_ARG_FLAG_NUM && (op1_info & (MAY_BE_UNDEF|MAY_BE_REF)) == 0) { - spec = 3194 | SPEC_RULE_OP1; - } - break; - case ZEND_FE_FETCH_R: - if (op->op2_type == IS_CV && (op1_info & (MAY_BE_UNDEF|MAY_BE_ANY|MAY_BE_REF)) == MAY_BE_ARRAY) { - spec = 3201 | SPEC_RULE_RETVAL; - } - break; - case ZEND_FETCH_DIM_R: - if (!(op2_info & (MAY_BE_UNDEF|MAY_BE_NULL|MAY_BE_STRING|MAY_BE_ARRAY|MAY_BE_OBJECT|MAY_BE_RESOURCE|MAY_BE_REF))) { - if (op->op1_type == IS_CONST && op->op2_type == IS_CONST) { - break; - } - spec = 3164 | SPEC_RULE_OP1 | SPEC_RULE_OP2; - } - break; - case ZEND_SEND_VAL_EX: - if (op->op2.num <= MAX_ARG_FLAG_NUM && op->op1_type == IS_CONST && !Z_REFCOUNTED_P(RT_CONSTANT(op, op->op1))) { - spec = 3200; - } - break; - case ZEND_SEND_VAR: - if ((op1_info & (MAY_BE_UNDEF|MAY_BE_REF)) == 0) { - spec = 3189 | SPEC_RULE_OP1; - } - break; - case ZEND_BW_OR: - case ZEND_BW_AND: - case ZEND_BW_XOR: - case ZEND_BOOL_XOR: - case ZEND_IS_IDENTICAL: - case ZEND_IS_NOT_IDENTICAL: - if (op->op1_type < op->op2_type) { - zend_swap_operands(op); - } - break; - case ZEND_USER_OPCODE: - if (zend_spec_handlers[op->opcode] & SPEC_RULE_COMMUTATIVE) { - if (op->op1_type < op->op2_type) { - zend_swap_operands(op); - } - } - break; - default: - break; - } - op->handler = zend_vm_get_opcode_handler_ex(spec, op); -} - -ZEND_API int ZEND_FASTCALL zend_vm_call_opcode_handler(zend_execute_data* ex) -{ -#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) - opcode_handler_t handler; -#endif - int ret; -#ifdef ZEND_VM_IP_GLOBAL_REG - const zend_op *orig_opline = opline; -#endif -#ifdef ZEND_VM_FP_GLOBAL_REG - zend_execute_data *orig_execute_data = execute_data; - execute_data = ex; -#else - zend_execute_data *execute_data = ex; -#endif - - LOAD_OPLINE(); -#if defined(ZEND_VM_FP_GLOBAL_REG) && defined(ZEND_VM_IP_GLOBAL_REG) -#if (ZEND_VM_KIND == ZEND_VM_KIND_HYBRID) - handler = (opcode_handler_t)zend_vm_get_opcode_handler_func(zend_user_opcodes[opline->opcode], opline); - handler(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - if (EXPECTED(opline != &hybrid_halt_op)) { -#else - ((opcode_handler_t)OPLINE->handler)(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - if (EXPECTED(opline)) { -#endif - ret = execute_data != ex ? (int)(execute_data->prev_execute_data != ex) + 1 : 0; - SAVE_OPLINE(); - } else { - ret = -1; - } -#else - ret = ((opcode_handler_t)OPLINE->handler)(ZEND_OPCODE_HANDLER_ARGS_PASSTHRU); - SAVE_OPLINE(); -#endif -#ifdef ZEND_VM_FP_GLOBAL_REG - execute_data = orig_execute_data; -#endif -#ifdef ZEND_VM_IP_GLOBAL_REG - opline = orig_opline; -#endif - return ret; -} - diff --git a/7.4.27/mac/include/php/Zend/zend_vm_handlers.h b/7.4.27/mac/include/php/Zend/zend_vm_handlers.h deleted file mode 100644 index 7aa1a93..0000000 --- a/7.4.27/mac/include/php/Zend/zend_vm_handlers.h +++ /dev/null @@ -1,1776 +0,0 @@ -#define VM_HANDLERS(_) \ - _(0, ZEND_NOP_SPEC) \ - _(1, ZEND_ADD_SPEC_CONST_CONST) \ - _(2, ZEND_ADD_SPEC_CONST_TMPVARCV) \ - _(3, ZEND_ADD_SPEC_CONST_TMPVARCV) \ - _(5, ZEND_ADD_SPEC_CONST_TMPVARCV) \ - _(6, ZEND_ADD_SPEC_TMPVARCV_CONST) \ - _(7, ZEND_ADD_SPEC_TMPVARCV_TMPVARCV) \ - _(8, ZEND_ADD_SPEC_TMPVARCV_TMPVARCV) \ - _(10, ZEND_ADD_SPEC_TMPVARCV_TMPVARCV) \ - _(11, ZEND_ADD_SPEC_TMPVARCV_CONST) \ - _(12, ZEND_ADD_SPEC_TMPVARCV_TMPVARCV) \ - _(13, ZEND_ADD_SPEC_TMPVARCV_TMPVARCV) \ - _(15, ZEND_ADD_SPEC_TMPVARCV_TMPVARCV) \ - _(21, ZEND_ADD_SPEC_TMPVARCV_CONST) \ - _(22, ZEND_ADD_SPEC_TMPVARCV_TMPVARCV) \ - _(23, ZEND_ADD_SPEC_TMPVARCV_TMPVARCV) \ - _(25, ZEND_ADD_SPEC_TMPVARCV_TMPVARCV) \ - _(26, ZEND_SUB_SPEC_CONST_CONST) \ - _(27, ZEND_SUB_SPEC_CONST_TMPVARCV) \ - _(28, ZEND_SUB_SPEC_CONST_TMPVARCV) \ - _(30, ZEND_SUB_SPEC_CONST_TMPVARCV) \ - _(31, ZEND_SUB_SPEC_TMPVARCV_CONST) \ - _(32, ZEND_SUB_SPEC_TMPVARCV_TMPVARCV) \ - _(33, ZEND_SUB_SPEC_TMPVARCV_TMPVARCV) \ - _(35, ZEND_SUB_SPEC_TMPVARCV_TMPVARCV) \ - _(36, ZEND_SUB_SPEC_TMPVARCV_CONST) \ - _(37, ZEND_SUB_SPEC_TMPVARCV_TMPVARCV) \ - _(38, ZEND_SUB_SPEC_TMPVARCV_TMPVARCV) \ - _(40, ZEND_SUB_SPEC_TMPVARCV_TMPVARCV) \ - _(46, ZEND_SUB_SPEC_TMPVARCV_CONST) \ - _(47, ZEND_SUB_SPEC_TMPVARCV_TMPVARCV) \ - _(48, ZEND_SUB_SPEC_TMPVARCV_TMPVARCV) \ - _(50, ZEND_SUB_SPEC_TMPVARCV_TMPVARCV) \ - _(51, ZEND_MUL_SPEC_CONST_CONST) \ - _(56, ZEND_MUL_SPEC_TMPVARCV_CONST) \ - _(57, ZEND_MUL_SPEC_TMPVARCV_TMPVARCV) \ - _(58, ZEND_MUL_SPEC_TMPVARCV_TMPVARCV) \ - _(60, ZEND_MUL_SPEC_TMPVARCV_TMPVARCV) \ - _(61, ZEND_MUL_SPEC_TMPVARCV_CONST) \ - _(62, ZEND_MUL_SPEC_TMPVARCV_TMPVARCV) \ - _(63, ZEND_MUL_SPEC_TMPVARCV_TMPVARCV) \ - _(65, ZEND_MUL_SPEC_TMPVARCV_TMPVARCV) \ - _(71, ZEND_MUL_SPEC_TMPVARCV_CONST) \ - _(72, ZEND_MUL_SPEC_TMPVARCV_TMPVARCV) \ - _(73, ZEND_MUL_SPEC_TMPVARCV_TMPVARCV) \ - _(75, ZEND_MUL_SPEC_TMPVARCV_TMPVARCV) \ - _(76, ZEND_DIV_SPEC_CONST_CONST) \ - _(77, ZEND_DIV_SPEC_CONST_TMPVAR) \ - _(78, ZEND_DIV_SPEC_CONST_TMPVAR) \ - _(80, ZEND_DIV_SPEC_CONST_CV) \ - _(81, ZEND_DIV_SPEC_TMPVAR_CONST) \ - _(82, ZEND_DIV_SPEC_TMPVAR_TMPVAR) \ - _(83, ZEND_DIV_SPEC_TMPVAR_TMPVAR) \ - _(85, ZEND_DIV_SPEC_TMPVAR_CV) \ - _(86, ZEND_DIV_SPEC_TMPVAR_CONST) \ - _(87, ZEND_DIV_SPEC_TMPVAR_TMPVAR) \ - _(88, ZEND_DIV_SPEC_TMPVAR_TMPVAR) \ - _(90, ZEND_DIV_SPEC_TMPVAR_CV) \ - _(96, ZEND_DIV_SPEC_CV_CONST) \ - _(97, ZEND_DIV_SPEC_CV_TMPVAR) \ - _(98, ZEND_DIV_SPEC_CV_TMPVAR) \ - _(100, ZEND_DIV_SPEC_CV_CV) \ - _(101, ZEND_MOD_SPEC_CONST_CONST) \ - _(102, ZEND_MOD_SPEC_CONST_TMPVARCV) \ - _(103, ZEND_MOD_SPEC_CONST_TMPVARCV) \ - _(105, ZEND_MOD_SPEC_CONST_TMPVARCV) \ - _(106, ZEND_MOD_SPEC_TMPVARCV_CONST) \ - _(107, ZEND_MOD_SPEC_TMPVARCV_TMPVARCV) \ - _(108, ZEND_MOD_SPEC_TMPVARCV_TMPVARCV) \ - _(110, ZEND_MOD_SPEC_TMPVARCV_TMPVARCV) \ - _(111, ZEND_MOD_SPEC_TMPVARCV_CONST) \ - _(112, ZEND_MOD_SPEC_TMPVARCV_TMPVARCV) \ - _(113, ZEND_MOD_SPEC_TMPVARCV_TMPVARCV) \ - _(115, ZEND_MOD_SPEC_TMPVARCV_TMPVARCV) \ - _(121, ZEND_MOD_SPEC_TMPVARCV_CONST) \ - _(122, ZEND_MOD_SPEC_TMPVARCV_TMPVARCV) \ - _(123, ZEND_MOD_SPEC_TMPVARCV_TMPVARCV) \ - _(125, ZEND_MOD_SPEC_TMPVARCV_TMPVARCV) \ - _(126, ZEND_SL_SPEC_CONST_CONST) \ - _(127, ZEND_SL_SPEC_CONST_TMPVARCV) \ - _(128, ZEND_SL_SPEC_CONST_TMPVARCV) \ - _(130, ZEND_SL_SPEC_CONST_TMPVARCV) \ - _(131, ZEND_SL_SPEC_TMPVARCV_CONST) \ - _(132, ZEND_SL_SPEC_TMPVARCV_TMPVARCV) \ - _(133, ZEND_SL_SPEC_TMPVARCV_TMPVARCV) \ - _(135, ZEND_SL_SPEC_TMPVARCV_TMPVARCV) \ - _(136, ZEND_SL_SPEC_TMPVARCV_CONST) \ - _(137, ZEND_SL_SPEC_TMPVARCV_TMPVARCV) \ - _(138, ZEND_SL_SPEC_TMPVARCV_TMPVARCV) \ - _(140, ZEND_SL_SPEC_TMPVARCV_TMPVARCV) \ - _(146, ZEND_SL_SPEC_TMPVARCV_CONST) \ - _(147, ZEND_SL_SPEC_TMPVARCV_TMPVARCV) \ - _(148, ZEND_SL_SPEC_TMPVARCV_TMPVARCV) \ - _(150, ZEND_SL_SPEC_TMPVARCV_TMPVARCV) \ - _(151, ZEND_SR_SPEC_CONST_CONST) \ - _(152, ZEND_SR_SPEC_CONST_TMPVARCV) \ - _(153, ZEND_SR_SPEC_CONST_TMPVARCV) \ - _(155, ZEND_SR_SPEC_CONST_TMPVARCV) \ - _(156, ZEND_SR_SPEC_TMPVARCV_CONST) \ - _(157, ZEND_SR_SPEC_TMPVARCV_TMPVARCV) \ - _(158, ZEND_SR_SPEC_TMPVARCV_TMPVARCV) \ - _(160, ZEND_SR_SPEC_TMPVARCV_TMPVARCV) \ - _(161, ZEND_SR_SPEC_TMPVARCV_CONST) \ - _(162, ZEND_SR_SPEC_TMPVARCV_TMPVARCV) \ - _(163, ZEND_SR_SPEC_TMPVARCV_TMPVARCV) \ - _(165, ZEND_SR_SPEC_TMPVARCV_TMPVARCV) \ - _(171, ZEND_SR_SPEC_TMPVARCV_CONST) \ - _(172, ZEND_SR_SPEC_TMPVARCV_TMPVARCV) \ - _(173, ZEND_SR_SPEC_TMPVARCV_TMPVARCV) \ - _(175, ZEND_SR_SPEC_TMPVARCV_TMPVARCV) \ - _(177, ZEND_CONCAT_SPEC_CONST_TMPVAR) \ - _(178, ZEND_CONCAT_SPEC_CONST_TMPVAR) \ - _(180, ZEND_CONCAT_SPEC_CONST_CV) \ - _(181, ZEND_CONCAT_SPEC_TMPVAR_CONST) \ - _(182, ZEND_CONCAT_SPEC_TMPVAR_TMPVAR) \ - _(183, ZEND_CONCAT_SPEC_TMPVAR_TMPVAR) \ - _(185, ZEND_CONCAT_SPEC_TMPVAR_CV) \ - _(186, ZEND_CONCAT_SPEC_TMPVAR_CONST) \ - _(187, ZEND_CONCAT_SPEC_TMPVAR_TMPVAR) \ - _(188, ZEND_CONCAT_SPEC_TMPVAR_TMPVAR) \ - _(190, ZEND_CONCAT_SPEC_TMPVAR_CV) \ - _(196, ZEND_CONCAT_SPEC_CV_CONST) \ - _(197, ZEND_CONCAT_SPEC_CV_TMPVAR) \ - _(198, ZEND_CONCAT_SPEC_CV_TMPVAR) \ - _(200, ZEND_CONCAT_SPEC_CV_CV) \ - _(201, ZEND_BW_OR_SPEC_CONST_CONST) \ - _(206, ZEND_BW_OR_SPEC_TMPVARCV_CONST) \ - _(207, ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV) \ - _(208, ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV) \ - _(210, ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV) \ - _(211, ZEND_BW_OR_SPEC_TMPVARCV_CONST) \ - _(212, ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV) \ - _(213, ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV) \ - _(215, ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV) \ - _(221, ZEND_BW_OR_SPEC_TMPVARCV_CONST) \ - _(222, ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV) \ - _(223, ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV) \ - _(225, ZEND_BW_OR_SPEC_TMPVARCV_TMPVARCV) \ - _(226, ZEND_BW_AND_SPEC_CONST_CONST) \ - _(231, ZEND_BW_AND_SPEC_TMPVARCV_CONST) \ - _(232, ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV) \ - _(233, ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV) \ - _(235, ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV) \ - _(236, ZEND_BW_AND_SPEC_TMPVARCV_CONST) \ - _(237, ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV) \ - _(238, ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV) \ - _(240, ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV) \ - _(246, ZEND_BW_AND_SPEC_TMPVARCV_CONST) \ - _(247, ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV) \ - _(248, ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV) \ - _(250, ZEND_BW_AND_SPEC_TMPVARCV_TMPVARCV) \ - _(251, ZEND_BW_XOR_SPEC_CONST_CONST) \ - _(256, ZEND_BW_XOR_SPEC_TMPVARCV_CONST) \ - _(257, ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV) \ - _(258, ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV) \ - _(260, ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV) \ - _(261, ZEND_BW_XOR_SPEC_TMPVARCV_CONST) \ - _(262, ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV) \ - _(263, ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV) \ - _(265, ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV) \ - _(271, ZEND_BW_XOR_SPEC_TMPVARCV_CONST) \ - _(272, ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV) \ - _(273, ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV) \ - _(275, ZEND_BW_XOR_SPEC_TMPVARCV_TMPVARCV) \ - _(276, ZEND_POW_SPEC_CONST_CONST) \ - _(277, ZEND_POW_SPEC_CONST_TMPVAR) \ - _(278, ZEND_POW_SPEC_CONST_TMPVAR) \ - _(280, ZEND_POW_SPEC_CONST_CV) \ - _(281, ZEND_POW_SPEC_TMPVAR_CONST) \ - _(282, ZEND_POW_SPEC_TMPVAR_TMPVAR) \ - _(283, ZEND_POW_SPEC_TMPVAR_TMPVAR) \ - _(285, ZEND_POW_SPEC_TMPVAR_CV) \ - _(286, ZEND_POW_SPEC_TMPVAR_CONST) \ - _(287, ZEND_POW_SPEC_TMPVAR_TMPVAR) \ - _(288, ZEND_POW_SPEC_TMPVAR_TMPVAR) \ - _(290, ZEND_POW_SPEC_TMPVAR_CV) \ - _(296, ZEND_POW_SPEC_CV_CONST) \ - _(297, ZEND_POW_SPEC_CV_TMPVAR) \ - _(298, ZEND_POW_SPEC_CV_TMPVAR) \ - _(300, ZEND_POW_SPEC_CV_CV) \ - _(301, ZEND_BW_NOT_SPEC_CONST) \ - _(302, ZEND_BW_NOT_SPEC_TMPVAR) \ - _(303, ZEND_BW_NOT_SPEC_TMPVAR) \ - _(305, ZEND_BW_NOT_SPEC_CV) \ - _(306, ZEND_BOOL_NOT_SPEC_CONST) \ - _(307, ZEND_BOOL_NOT_SPEC_TMPVAR) \ - _(308, ZEND_BOOL_NOT_SPEC_TMPVAR) \ - _(310, ZEND_BOOL_NOT_SPEC_CV) \ - _(311, ZEND_BOOL_XOR_SPEC_CONST_CONST) \ - _(316, ZEND_BOOL_XOR_SPEC_TMPVAR_CONST) \ - _(317, ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR) \ - _(318, ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR) \ - _(321, ZEND_BOOL_XOR_SPEC_TMPVAR_CONST) \ - _(322, ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR) \ - _(323, ZEND_BOOL_XOR_SPEC_TMPVAR_TMPVAR) \ - _(331, ZEND_BOOL_XOR_SPEC_CV_CONST) \ - _(332, ZEND_BOOL_XOR_SPEC_CV_TMPVAR) \ - _(333, ZEND_BOOL_XOR_SPEC_CV_TMPVAR) \ - _(335, ZEND_BOOL_XOR_SPEC_CV_CV) \ - _(336, ZEND_IS_IDENTICAL_SPEC_CONST_CONST) \ - _(341, ZEND_IS_IDENTICAL_SPEC_TMP_CONST) \ - _(342, ZEND_IS_IDENTICAL_SPEC_TMP_TMP) \ - _(346, ZEND_IS_IDENTICAL_SPEC_VAR_CONST) \ - _(347, ZEND_IS_IDENTICAL_SPEC_VAR_TMP) \ - _(348, ZEND_IS_IDENTICAL_SPEC_VAR_VAR) \ - _(356, ZEND_IS_IDENTICAL_SPEC_CV_CONST) \ - _(357, ZEND_IS_IDENTICAL_SPEC_CV_TMP) \ - _(358, ZEND_IS_IDENTICAL_SPEC_CV_VAR) \ - _(360, ZEND_IS_IDENTICAL_SPEC_CV_CV) \ - _(361, ZEND_IS_NOT_IDENTICAL_SPEC_CONST_CONST) \ - _(366, ZEND_IS_NOT_IDENTICAL_SPEC_TMP_CONST) \ - _(367, ZEND_IS_NOT_IDENTICAL_SPEC_TMP_TMP) \ - _(371, ZEND_IS_NOT_IDENTICAL_SPEC_VAR_CONST) \ - _(372, ZEND_IS_NOT_IDENTICAL_SPEC_VAR_TMP) \ - _(373, ZEND_IS_NOT_IDENTICAL_SPEC_VAR_VAR) \ - _(381, ZEND_IS_NOT_IDENTICAL_SPEC_CV_CONST) \ - _(382, ZEND_IS_NOT_IDENTICAL_SPEC_CV_TMP) \ - _(383, ZEND_IS_NOT_IDENTICAL_SPEC_CV_VAR) \ - _(385, ZEND_IS_NOT_IDENTICAL_SPEC_CV_CV) \ - _(386, ZEND_IS_EQUAL_SPEC_CONST_CONST) \ - _(387, ZEND_IS_EQUAL_SPEC_CONST_CONST) \ - _(388, ZEND_IS_EQUAL_SPEC_CONST_CONST) \ - _(401, ZEND_IS_EQUAL_SPEC_TMPVAR_CONST) \ - _(402, ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPZ) \ - _(403, ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPNZ) \ - _(404, ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR) \ - _(405, ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ) \ - _(406, ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ) \ - _(407, ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR) \ - _(408, ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ) \ - _(409, ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ) \ - _(416, ZEND_IS_EQUAL_SPEC_TMPVAR_CONST) \ - _(417, ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPZ) \ - _(418, ZEND_IS_EQUAL_SPEC_TMPVAR_CONST_JMPNZ) \ - _(419, ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR) \ - _(420, ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ) \ - _(421, ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ) \ - _(422, ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR) \ - _(423, ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ) \ - _(424, ZEND_IS_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ) \ - _(446, ZEND_IS_EQUAL_SPEC_CV_CONST) \ - _(447, ZEND_IS_EQUAL_SPEC_CV_CONST_JMPZ) \ - _(448, ZEND_IS_EQUAL_SPEC_CV_CONST_JMPNZ) \ - _(449, ZEND_IS_EQUAL_SPEC_CV_TMPVAR) \ - _(450, ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPZ) \ - _(451, ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPNZ) \ - _(452, ZEND_IS_EQUAL_SPEC_CV_TMPVAR) \ - _(453, ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPZ) \ - _(454, ZEND_IS_EQUAL_SPEC_CV_TMPVAR_JMPNZ) \ - _(458, ZEND_IS_EQUAL_SPEC_CV_CV) \ - _(459, ZEND_IS_EQUAL_SPEC_CV_CV_JMPZ) \ - _(460, ZEND_IS_EQUAL_SPEC_CV_CV_JMPNZ) \ - _(461, ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST) \ - _(462, ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST) \ - _(463, ZEND_IS_NOT_EQUAL_SPEC_CONST_CONST) \ - _(476, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST) \ - _(477, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPZ) \ - _(478, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPNZ) \ - _(479, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR) \ - _(480, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ) \ - _(481, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ) \ - _(482, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR) \ - _(483, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ) \ - _(484, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ) \ - _(491, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST) \ - _(492, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPZ) \ - _(493, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_CONST_JMPNZ) \ - _(494, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR) \ - _(495, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ) \ - _(496, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ) \ - _(497, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR) \ - _(498, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPZ) \ - _(499, ZEND_IS_NOT_EQUAL_SPEC_TMPVAR_TMPVAR_JMPNZ) \ - _(521, ZEND_IS_NOT_EQUAL_SPEC_CV_CONST) \ - _(522, ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPZ) \ - _(523, ZEND_IS_NOT_EQUAL_SPEC_CV_CONST_JMPNZ) \ - _(524, ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR) \ - _(525, ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPZ) \ - _(526, ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPNZ) \ - _(527, ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR) \ - _(528, ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPZ) \ - _(529, ZEND_IS_NOT_EQUAL_SPEC_CV_TMPVAR_JMPNZ) \ - _(533, ZEND_IS_NOT_EQUAL_SPEC_CV_CV) \ - _(534, ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPZ) \ - _(535, ZEND_IS_NOT_EQUAL_SPEC_CV_CV_JMPNZ) \ - _(536, ZEND_IS_SMALLER_SPEC_CONST_CONST) \ - _(537, ZEND_IS_SMALLER_SPEC_CONST_CONST) \ - _(538, ZEND_IS_SMALLER_SPEC_CONST_CONST) \ - _(539, ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV) \ - _(540, ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPZ) \ - _(541, ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(542, ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV) \ - _(543, ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPZ) \ - _(544, ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(548, ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV) \ - _(549, ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPZ) \ - _(550, ZEND_IS_SMALLER_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(551, ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST) \ - _(552, ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPZ) \ - _(553, ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(554, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV) \ - _(555, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(556, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(557, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV) \ - _(558, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(559, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(563, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV) \ - _(564, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(565, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(566, ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST) \ - _(567, ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPZ) \ - _(568, ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(569, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV) \ - _(570, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(571, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(572, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV) \ - _(573, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(574, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(578, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV) \ - _(579, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(580, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(596, ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST) \ - _(597, ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPZ) \ - _(598, ZEND_IS_SMALLER_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(599, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV) \ - _(600, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(601, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(602, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV) \ - _(603, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(604, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(608, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV) \ - _(609, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(610, ZEND_IS_SMALLER_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(611, ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST) \ - _(612, ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST) \ - _(613, ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_CONST) \ - _(614, ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV) \ - _(615, ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPZ) \ - _(616, ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(617, ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV) \ - _(618, ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPZ) \ - _(619, ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(623, ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV) \ - _(624, ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPZ) \ - _(625, ZEND_IS_SMALLER_OR_EQUAL_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(626, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST) \ - _(627, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPZ) \ - _(628, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(629, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV) \ - _(630, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(631, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(632, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV) \ - _(633, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(634, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(638, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV) \ - _(639, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(640, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(641, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST) \ - _(642, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPZ) \ - _(643, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(644, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV) \ - _(645, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(646, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(647, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV) \ - _(648, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(649, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(653, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV) \ - _(654, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(655, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(671, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST) \ - _(672, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPZ) \ - _(673, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(674, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV) \ - _(675, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(676, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(677, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV) \ - _(678, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(679, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(683, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV) \ - _(684, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(685, ZEND_IS_SMALLER_OR_EQUAL_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(706, ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_UNUSED) \ - _(707, ZEND_ASSIGN_SPEC_VAR_CONST_RETVAL_USED) \ - _(708, ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_UNUSED) \ - _(709, ZEND_ASSIGN_SPEC_VAR_TMP_RETVAL_USED) \ - _(710, ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_UNUSED) \ - _(711, ZEND_ASSIGN_SPEC_VAR_VAR_RETVAL_USED) \ - _(714, ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_UNUSED) \ - _(715, ZEND_ASSIGN_SPEC_VAR_CV_RETVAL_USED) \ - _(726, ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_UNUSED) \ - _(727, ZEND_ASSIGN_SPEC_CV_CONST_RETVAL_USED) \ - _(728, ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_UNUSED) \ - _(729, ZEND_ASSIGN_SPEC_CV_TMP_RETVAL_USED) \ - _(730, ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_UNUSED) \ - _(731, ZEND_ASSIGN_SPEC_CV_VAR_RETVAL_USED) \ - _(734, ZEND_ASSIGN_SPEC_CV_CV_RETVAL_UNUSED) \ - _(735, ZEND_ASSIGN_SPEC_CV_CV_RETVAL_USED) \ - _(786, ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CONST) \ - _(787, ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_TMP) \ - _(788, ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_VAR) \ - _(790, ZEND_ASSIGN_DIM_SPEC_VAR_CONST_OP_DATA_CV) \ - _(791, ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST) \ - _(792, ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP) \ - _(793, ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR) \ - _(795, ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV) \ - _(796, ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CONST) \ - _(797, ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_TMP) \ - _(798, ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_VAR) \ - _(800, ZEND_ASSIGN_DIM_SPEC_VAR_TMPVAR_OP_DATA_CV) \ - _(801, ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CONST) \ - _(802, ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_TMP) \ - _(803, ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_VAR) \ - _(805, ZEND_ASSIGN_DIM_SPEC_VAR_UNUSED_OP_DATA_CV) \ - _(806, ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CONST) \ - _(807, ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_TMP) \ - _(808, ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_VAR) \ - _(810, ZEND_ASSIGN_DIM_SPEC_VAR_CV_OP_DATA_CV) \ - _(836, ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CONST) \ - _(837, ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_TMP) \ - _(838, ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_VAR) \ - _(840, ZEND_ASSIGN_DIM_SPEC_CV_CONST_OP_DATA_CV) \ - _(841, ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST) \ - _(842, ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP) \ - _(843, ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR) \ - _(845, ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV) \ - _(846, ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CONST) \ - _(847, ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_TMP) \ - _(848, ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_VAR) \ - _(850, ZEND_ASSIGN_DIM_SPEC_CV_TMPVAR_OP_DATA_CV) \ - _(851, ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CONST) \ - _(852, ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_TMP) \ - _(853, ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_VAR) \ - _(855, ZEND_ASSIGN_DIM_SPEC_CV_UNUSED_OP_DATA_CV) \ - _(856, ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CONST) \ - _(857, ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_TMP) \ - _(858, ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_VAR) \ - _(860, ZEND_ASSIGN_DIM_SPEC_CV_CV_OP_DATA_CV) \ - _(911, ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CONST) \ - _(912, ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_TMP) \ - _(913, ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_VAR) \ - _(915, ZEND_ASSIGN_OBJ_SPEC_VAR_CONST_OP_DATA_CV) \ - _(916, ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST) \ - _(917, ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP) \ - _(918, ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR) \ - _(920, ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV) \ - _(921, ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CONST) \ - _(922, ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_TMP) \ - _(923, ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_VAR) \ - _(925, ZEND_ASSIGN_OBJ_SPEC_VAR_TMPVAR_OP_DATA_CV) \ - _(931, ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CONST) \ - _(932, ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_TMP) \ - _(933, ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_VAR) \ - _(935, ZEND_ASSIGN_OBJ_SPEC_VAR_CV_OP_DATA_CV) \ - _(936, ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CONST) \ - _(937, ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_TMP) \ - _(938, ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_VAR) \ - _(940, ZEND_ASSIGN_OBJ_SPEC_UNUSED_CONST_OP_DATA_CV) \ - _(941, ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST) \ - _(942, ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP) \ - _(943, ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR) \ - _(945, ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV) \ - _(946, ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CONST) \ - _(947, ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_TMP) \ - _(948, ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_VAR) \ - _(950, ZEND_ASSIGN_OBJ_SPEC_UNUSED_TMPVAR_OP_DATA_CV) \ - _(956, ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CONST) \ - _(957, ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_TMP) \ - _(958, ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_VAR) \ - _(960, ZEND_ASSIGN_OBJ_SPEC_UNUSED_CV_OP_DATA_CV) \ - _(961, ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CONST) \ - _(962, ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_TMP) \ - _(963, ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_VAR) \ - _(965, ZEND_ASSIGN_OBJ_SPEC_CV_CONST_OP_DATA_CV) \ - _(966, ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST) \ - _(967, ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP) \ - _(968, ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR) \ - _(970, ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV) \ - _(971, ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CONST) \ - _(972, ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_TMP) \ - _(973, ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_VAR) \ - _(975, ZEND_ASSIGN_OBJ_SPEC_CV_TMPVAR_OP_DATA_CV) \ - _(981, ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CONST) \ - _(982, ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_TMP) \ - _(983, ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_VAR) \ - _(985, ZEND_ASSIGN_OBJ_SPEC_CV_CV_OP_DATA_CV) \ - _(986, ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CONST) \ - _(987, ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_TMP) \ - _(988, ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_VAR) \ - _(990, ZEND_ASSIGN_STATIC_PROP_SPEC_OP_DATA_CV) \ - _(1001, ZEND_ASSIGN_OP_SPEC_VAR_CONST) \ - _(1002, ZEND_ASSIGN_OP_SPEC_VAR_TMPVAR) \ - _(1003, ZEND_ASSIGN_OP_SPEC_VAR_TMPVAR) \ - _(1005, ZEND_ASSIGN_OP_SPEC_VAR_CV) \ - _(1011, ZEND_ASSIGN_OP_SPEC_CV_CONST) \ - _(1012, ZEND_ASSIGN_OP_SPEC_CV_TMPVAR) \ - _(1013, ZEND_ASSIGN_OP_SPEC_CV_TMPVAR) \ - _(1015, ZEND_ASSIGN_OP_SPEC_CV_CV) \ - _(1026, ZEND_ASSIGN_DIM_OP_SPEC_VAR_CONST) \ - _(1027, ZEND_ASSIGN_DIM_OP_SPEC_VAR_TMPVAR) \ - _(1028, ZEND_ASSIGN_DIM_OP_SPEC_VAR_TMPVAR) \ - _(1029, ZEND_ASSIGN_DIM_OP_SPEC_VAR_UNUSED) \ - _(1030, ZEND_ASSIGN_DIM_OP_SPEC_VAR_CV) \ - _(1036, ZEND_ASSIGN_DIM_OP_SPEC_CV_CONST) \ - _(1037, ZEND_ASSIGN_DIM_OP_SPEC_CV_TMPVAR) \ - _(1038, ZEND_ASSIGN_DIM_OP_SPEC_CV_TMPVAR) \ - _(1039, ZEND_ASSIGN_DIM_OP_SPEC_CV_UNUSED) \ - _(1040, ZEND_ASSIGN_DIM_OP_SPEC_CV_CV) \ - _(1051, ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CONST) \ - _(1052, ZEND_ASSIGN_OBJ_OP_SPEC_VAR_TMPVAR) \ - _(1053, ZEND_ASSIGN_OBJ_OP_SPEC_VAR_TMPVAR) \ - _(1055, ZEND_ASSIGN_OBJ_OP_SPEC_VAR_CV) \ - _(1056, ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CONST) \ - _(1057, ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_TMPVAR) \ - _(1058, ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_TMPVAR) \ - _(1060, ZEND_ASSIGN_OBJ_OP_SPEC_UNUSED_CV) \ - _(1061, ZEND_ASSIGN_OBJ_OP_SPEC_CV_CONST) \ - _(1062, ZEND_ASSIGN_OBJ_OP_SPEC_CV_TMPVAR) \ - _(1063, ZEND_ASSIGN_OBJ_OP_SPEC_CV_TMPVAR) \ - _(1065, ZEND_ASSIGN_OBJ_OP_SPEC_CV_CV) \ - _(1066, ZEND_ASSIGN_STATIC_PROP_OP_SPEC) \ - _(1079, ZEND_ASSIGN_REF_SPEC_VAR_VAR) \ - _(1081, ZEND_ASSIGN_REF_SPEC_VAR_CV) \ - _(1089, ZEND_ASSIGN_REF_SPEC_CV_VAR) \ - _(1091, ZEND_ASSIGN_REF_SPEC_CV_CV) \ - _(1092, ZEND_QM_ASSIGN_SPEC_CONST) \ - _(1093, ZEND_QM_ASSIGN_SPEC_TMP) \ - _(1094, ZEND_QM_ASSIGN_SPEC_VAR) \ - _(1096, ZEND_QM_ASSIGN_SPEC_CV) \ - _(1149, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_VAR) \ - _(1151, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CONST_OP_DATA_CV) \ - _(1154, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR) \ - _(1156, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV) \ - _(1159, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_VAR) \ - _(1161, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_TMPVAR_OP_DATA_CV) \ - _(1169, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_VAR) \ - _(1171, ZEND_ASSIGN_OBJ_REF_SPEC_VAR_CV_OP_DATA_CV) \ - _(1174, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_VAR) \ - _(1176, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CONST_OP_DATA_CV) \ - _(1179, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR) \ - _(1181, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV) \ - _(1184, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_VAR) \ - _(1186, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_TMPVAR_OP_DATA_CV) \ - _(1194, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_VAR) \ - _(1196, ZEND_ASSIGN_OBJ_REF_SPEC_UNUSED_CV_OP_DATA_CV) \ - _(1199, ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_VAR) \ - _(1201, ZEND_ASSIGN_OBJ_REF_SPEC_CV_CONST_OP_DATA_CV) \ - _(1204, ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR) \ - _(1206, ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV) \ - _(1209, ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_VAR) \ - _(1211, ZEND_ASSIGN_OBJ_REF_SPEC_CV_TMPVAR_OP_DATA_CV) \ - _(1219, ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_VAR) \ - _(1221, ZEND_ASSIGN_OBJ_REF_SPEC_CV_CV_OP_DATA_CV) \ - _(1222, ZEND_ASSIGN_STATIC_PROP_REF_SPEC) \ - _(1227, ZEND_PRE_INC_SPEC_VAR_RETVAL_UNUSED) \ - _(1228, ZEND_PRE_INC_SPEC_VAR_RETVAL_USED) \ - _(1231, ZEND_PRE_INC_SPEC_CV_RETVAL_UNUSED) \ - _(1232, ZEND_PRE_INC_SPEC_CV_RETVAL_USED) \ - _(1237, ZEND_PRE_DEC_SPEC_VAR_RETVAL_UNUSED) \ - _(1238, ZEND_PRE_DEC_SPEC_VAR_RETVAL_USED) \ - _(1241, ZEND_PRE_DEC_SPEC_CV_RETVAL_UNUSED) \ - _(1242, ZEND_PRE_DEC_SPEC_CV_RETVAL_USED) \ - _(1245, ZEND_POST_INC_SPEC_VAR) \ - _(1247, ZEND_POST_INC_SPEC_CV) \ - _(1250, ZEND_POST_DEC_SPEC_VAR) \ - _(1252, ZEND_POST_DEC_SPEC_CV) \ - _(1253, ZEND_PRE_INC_STATIC_PROP_SPEC) \ - _(1254, ZEND_POST_INC_STATIC_PROP_SPEC) \ - _(1255, ZEND_JMP_SPEC) \ - _(1256, ZEND_JMPZ_SPEC_CONST) \ - _(1257, ZEND_JMPZ_SPEC_TMPVAR) \ - _(1258, ZEND_JMPZ_SPEC_TMPVAR) \ - _(1260, ZEND_JMPZ_SPEC_CV) \ - _(1261, ZEND_JMPNZ_SPEC_CONST) \ - _(1262, ZEND_JMPNZ_SPEC_TMPVAR) \ - _(1263, ZEND_JMPNZ_SPEC_TMPVAR) \ - _(1265, ZEND_JMPNZ_SPEC_CV) \ - _(1266, ZEND_JMPZNZ_SPEC_CONST) \ - _(1267, ZEND_JMPZNZ_SPEC_TMPVAR) \ - _(1268, ZEND_JMPZNZ_SPEC_TMPVAR) \ - _(1270, ZEND_JMPZNZ_SPEC_CV) \ - _(1271, ZEND_JMPZ_EX_SPEC_CONST) \ - _(1272, ZEND_JMPZ_EX_SPEC_TMPVAR) \ - _(1273, ZEND_JMPZ_EX_SPEC_TMPVAR) \ - _(1275, ZEND_JMPZ_EX_SPEC_CV) \ - _(1276, ZEND_JMPNZ_EX_SPEC_CONST) \ - _(1277, ZEND_JMPNZ_EX_SPEC_TMPVAR) \ - _(1278, ZEND_JMPNZ_EX_SPEC_TMPVAR) \ - _(1280, ZEND_JMPNZ_EX_SPEC_CV) \ - _(1281, ZEND_CASE_SPEC_TMPVAR_CONST) \ - _(1282, ZEND_CASE_SPEC_TMPVAR_TMPVAR) \ - _(1283, ZEND_CASE_SPEC_TMPVAR_TMPVAR) \ - _(1285, ZEND_CASE_SPEC_TMPVAR_CV) \ - _(1286, ZEND_CHECK_VAR_SPEC_CV_UNUSED) \ - _(1287, ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR) \ - _(1288, ZEND_SEND_VAR_NO_REF_EX_SPEC_VAR_QUICK) \ - _(1289, ZEND_CAST_SPEC_CONST) \ - _(1290, ZEND_CAST_SPEC_TMP) \ - _(1291, ZEND_CAST_SPEC_VAR) \ - _(1293, ZEND_CAST_SPEC_CV) \ - _(1294, ZEND_BOOL_SPEC_CONST) \ - _(1295, ZEND_BOOL_SPEC_TMPVAR) \ - _(1296, ZEND_BOOL_SPEC_TMPVAR) \ - _(1298, ZEND_BOOL_SPEC_CV) \ - _(1299, ZEND_FAST_CONCAT_SPEC_CONST_CONST) \ - _(1300, ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR) \ - _(1301, ZEND_FAST_CONCAT_SPEC_CONST_TMPVAR) \ - _(1303, ZEND_FAST_CONCAT_SPEC_CONST_CV) \ - _(1304, ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST) \ - _(1305, ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR) \ - _(1306, ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR) \ - _(1308, ZEND_FAST_CONCAT_SPEC_TMPVAR_CV) \ - _(1309, ZEND_FAST_CONCAT_SPEC_TMPVAR_CONST) \ - _(1310, ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR) \ - _(1311, ZEND_FAST_CONCAT_SPEC_TMPVAR_TMPVAR) \ - _(1313, ZEND_FAST_CONCAT_SPEC_TMPVAR_CV) \ - _(1319, ZEND_FAST_CONCAT_SPEC_CV_CONST) \ - _(1320, ZEND_FAST_CONCAT_SPEC_CV_TMPVAR) \ - _(1321, ZEND_FAST_CONCAT_SPEC_CV_TMPVAR) \ - _(1323, ZEND_FAST_CONCAT_SPEC_CV_CV) \ - _(1324, ZEND_ROPE_INIT_SPEC_UNUSED_CONST) \ - _(1325, ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR) \ - _(1326, ZEND_ROPE_INIT_SPEC_UNUSED_TMPVAR) \ - _(1328, ZEND_ROPE_INIT_SPEC_UNUSED_CV) \ - _(1329, ZEND_ROPE_ADD_SPEC_TMP_CONST) \ - _(1330, ZEND_ROPE_ADD_SPEC_TMP_TMPVAR) \ - _(1331, ZEND_ROPE_ADD_SPEC_TMP_TMPVAR) \ - _(1333, ZEND_ROPE_ADD_SPEC_TMP_CV) \ - _(1334, ZEND_ROPE_END_SPEC_TMP_CONST) \ - _(1335, ZEND_ROPE_END_SPEC_TMP_TMPVAR) \ - _(1336, ZEND_ROPE_END_SPEC_TMP_TMPVAR) \ - _(1338, ZEND_ROPE_END_SPEC_TMP_CV) \ - _(1339, ZEND_BEGIN_SILENCE_SPEC) \ - _(1340, ZEND_END_SILENCE_SPEC_TMP) \ - _(1341, ZEND_INIT_FCALL_BY_NAME_SPEC_CONST) \ - _(1342, ZEND_DO_FCALL_SPEC_RETVAL_UNUSED) \ - _(1343, ZEND_DO_FCALL_SPEC_RETVAL_USED) \ - _(1344, ZEND_INIT_FCALL_SPEC_CONST) \ - _(1345, ZEND_RETURN_SPEC_CONST) \ - _(1346, ZEND_RETURN_SPEC_TMP) \ - _(1347, ZEND_RETURN_SPEC_VAR) \ - _(1349, ZEND_RETURN_SPEC_CV) \ - _(1350, ZEND_RECV_SPEC_UNUSED) \ - _(1351, ZEND_RECV_INIT_SPEC_CONST) \ - _(1352, ZEND_SEND_VAL_SPEC_CONST) \ - _(1353, ZEND_SEND_VAL_SPEC_TMPVAR) \ - _(1354, ZEND_SEND_VAL_SPEC_TMPVAR) \ - _(1361, ZEND_SEND_VAR_EX_SPEC_VAR) \ - _(1362, ZEND_SEND_VAR_EX_SPEC_VAR_QUICK) \ - _(1365, ZEND_SEND_VAR_EX_SPEC_CV) \ - _(1366, ZEND_SEND_VAR_EX_SPEC_CV_QUICK) \ - _(1369, ZEND_SEND_REF_SPEC_VAR) \ - _(1371, ZEND_SEND_REF_SPEC_CV) \ - _(1372, ZEND_NEW_SPEC_CONST_UNUSED) \ - _(1374, ZEND_NEW_SPEC_VAR_UNUSED) \ - _(1375, ZEND_NEW_SPEC_UNUSED_UNUSED) \ - _(1377, ZEND_INIT_NS_FCALL_BY_NAME_SPEC_CONST) \ - _(1378, ZEND_FREE_SPEC_TMPVAR) \ - _(1379, ZEND_INIT_ARRAY_SPEC_CONST_CONST) \ - _(1380, ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR) \ - _(1381, ZEND_INIT_ARRAY_SPEC_CONST_TMPVAR) \ - _(1382, ZEND_INIT_ARRAY_SPEC_CONST_UNUSED) \ - _(1383, ZEND_INIT_ARRAY_SPEC_CONST_CV) \ - _(1384, ZEND_INIT_ARRAY_SPEC_TMP_CONST) \ - _(1385, ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR) \ - _(1386, ZEND_INIT_ARRAY_SPEC_TMP_TMPVAR) \ - _(1387, ZEND_INIT_ARRAY_SPEC_TMP_UNUSED) \ - _(1388, ZEND_INIT_ARRAY_SPEC_TMP_CV) \ - _(1389, ZEND_INIT_ARRAY_SPEC_VAR_CONST) \ - _(1390, ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR) \ - _(1391, ZEND_INIT_ARRAY_SPEC_VAR_TMPVAR) \ - _(1392, ZEND_INIT_ARRAY_SPEC_VAR_UNUSED) \ - _(1393, ZEND_INIT_ARRAY_SPEC_VAR_CV) \ - _(1394, ZEND_INIT_ARRAY_SPEC_UNUSED_CONST) \ - _(1395, ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR) \ - _(1396, ZEND_INIT_ARRAY_SPEC_UNUSED_TMPVAR) \ - _(1397, ZEND_INIT_ARRAY_SPEC_UNUSED_UNUSED) \ - _(1398, ZEND_INIT_ARRAY_SPEC_UNUSED_CV) \ - _(1399, ZEND_INIT_ARRAY_SPEC_CV_CONST) \ - _(1400, ZEND_INIT_ARRAY_SPEC_CV_TMPVAR) \ - _(1401, ZEND_INIT_ARRAY_SPEC_CV_TMPVAR) \ - _(1402, ZEND_INIT_ARRAY_SPEC_CV_UNUSED) \ - _(1403, ZEND_INIT_ARRAY_SPEC_CV_CV) \ - _(1404, ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CONST) \ - _(1405, ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR) \ - _(1406, ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_TMPVAR) \ - _(1407, ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_UNUSED) \ - _(1408, ZEND_ADD_ARRAY_ELEMENT_SPEC_CONST_CV) \ - _(1409, ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CONST) \ - _(1410, ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR) \ - _(1411, ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_TMPVAR) \ - _(1412, ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_UNUSED) \ - _(1413, ZEND_ADD_ARRAY_ELEMENT_SPEC_TMP_CV) \ - _(1414, ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CONST) \ - _(1415, ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR) \ - _(1416, ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_TMPVAR) \ - _(1417, ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_UNUSED) \ - _(1418, ZEND_ADD_ARRAY_ELEMENT_SPEC_VAR_CV) \ - _(1424, ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CONST) \ - _(1425, ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR) \ - _(1426, ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_TMPVAR) \ - _(1427, ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_UNUSED) \ - _(1428, ZEND_ADD_ARRAY_ELEMENT_SPEC_CV_CV) \ - _(1429, ZEND_INCLUDE_OR_EVAL_SPEC_CONST) \ - _(1430, ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR) \ - _(1431, ZEND_INCLUDE_OR_EVAL_SPEC_TMPVAR) \ - _(1433, ZEND_INCLUDE_OR_EVAL_SPEC_CV) \ - _(1434, ZEND_UNSET_VAR_SPEC_CONST_UNUSED) \ - _(1435, ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED) \ - _(1436, ZEND_UNSET_VAR_SPEC_TMPVAR_UNUSED) \ - _(1438, ZEND_UNSET_VAR_SPEC_CV_UNUSED) \ - _(1449, ZEND_UNSET_DIM_SPEC_VAR_CONST) \ - _(1450, ZEND_UNSET_DIM_SPEC_VAR_TMPVAR) \ - _(1451, ZEND_UNSET_DIM_SPEC_VAR_TMPVAR) \ - _(1453, ZEND_UNSET_DIM_SPEC_VAR_CV) \ - _(1459, ZEND_UNSET_DIM_SPEC_CV_CONST) \ - _(1460, ZEND_UNSET_DIM_SPEC_CV_TMPVAR) \ - _(1461, ZEND_UNSET_DIM_SPEC_CV_TMPVAR) \ - _(1463, ZEND_UNSET_DIM_SPEC_CV_CV) \ - _(1474, ZEND_UNSET_OBJ_SPEC_VAR_CONST) \ - _(1475, ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR) \ - _(1476, ZEND_UNSET_OBJ_SPEC_VAR_TMPVAR) \ - _(1478, ZEND_UNSET_OBJ_SPEC_VAR_CV) \ - _(1479, ZEND_UNSET_OBJ_SPEC_UNUSED_CONST) \ - _(1480, ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR) \ - _(1481, ZEND_UNSET_OBJ_SPEC_UNUSED_TMPVAR) \ - _(1483, ZEND_UNSET_OBJ_SPEC_UNUSED_CV) \ - _(1484, ZEND_UNSET_OBJ_SPEC_CV_CONST) \ - _(1485, ZEND_UNSET_OBJ_SPEC_CV_TMPVAR) \ - _(1486, ZEND_UNSET_OBJ_SPEC_CV_TMPVAR) \ - _(1488, ZEND_UNSET_OBJ_SPEC_CV_CV) \ - _(1489, ZEND_FE_RESET_R_SPEC_CONST) \ - _(1490, ZEND_FE_RESET_R_SPEC_TMP) \ - _(1491, ZEND_FE_RESET_R_SPEC_VAR) \ - _(1493, ZEND_FE_RESET_R_SPEC_CV) \ - _(1494, ZEND_FE_FETCH_R_SPEC_VAR) \ - _(1495, ZEND_EXIT_SPEC) \ - _(1496, ZEND_FETCH_R_SPEC_CONST_UNUSED) \ - _(1497, ZEND_FETCH_R_SPEC_TMPVAR_UNUSED) \ - _(1498, ZEND_FETCH_R_SPEC_TMPVAR_UNUSED) \ - _(1500, ZEND_FETCH_R_SPEC_CV_UNUSED) \ - _(1501, ZEND_FETCH_DIM_R_SPEC_CONST_CONST) \ - _(1502, ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR) \ - _(1503, ZEND_FETCH_DIM_R_SPEC_CONST_TMPVAR) \ - _(1505, ZEND_FETCH_DIM_R_SPEC_CONST_CV) \ - _(1506, ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST) \ - _(1507, ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR) \ - _(1508, ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR) \ - _(1510, ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV) \ - _(1511, ZEND_FETCH_DIM_R_SPEC_TMPVAR_CONST) \ - _(1512, ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR) \ - _(1513, ZEND_FETCH_DIM_R_SPEC_TMPVAR_TMPVAR) \ - _(1515, ZEND_FETCH_DIM_R_SPEC_TMPVAR_CV) \ - _(1521, ZEND_FETCH_DIM_R_SPEC_CV_CONST) \ - _(1522, ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR) \ - _(1523, ZEND_FETCH_DIM_R_SPEC_CV_TMPVAR) \ - _(1525, ZEND_FETCH_DIM_R_SPEC_CV_CV) \ - _(1526, ZEND_FETCH_OBJ_R_SPEC_CONST_CONST) \ - _(1527, ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR) \ - _(1528, ZEND_FETCH_OBJ_R_SPEC_CONST_TMPVAR) \ - _(1530, ZEND_FETCH_OBJ_R_SPEC_CONST_CV) \ - _(1531, ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CONST) \ - _(1532, ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR) \ - _(1533, ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR) \ - _(1535, ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CV) \ - _(1536, ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CONST) \ - _(1537, ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR) \ - _(1538, ZEND_FETCH_OBJ_R_SPEC_TMPVAR_TMPVAR) \ - _(1540, ZEND_FETCH_OBJ_R_SPEC_TMPVAR_CV) \ - _(1541, ZEND_FETCH_OBJ_R_SPEC_UNUSED_CONST) \ - _(1542, ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR) \ - _(1543, ZEND_FETCH_OBJ_R_SPEC_UNUSED_TMPVAR) \ - _(1545, ZEND_FETCH_OBJ_R_SPEC_UNUSED_CV) \ - _(1546, ZEND_FETCH_OBJ_R_SPEC_CV_CONST) \ - _(1547, ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR) \ - _(1548, ZEND_FETCH_OBJ_R_SPEC_CV_TMPVAR) \ - _(1550, ZEND_FETCH_OBJ_R_SPEC_CV_CV) \ - _(1551, ZEND_FETCH_W_SPEC_CONST_UNUSED) \ - _(1552, ZEND_FETCH_W_SPEC_TMPVAR_UNUSED) \ - _(1553, ZEND_FETCH_W_SPEC_TMPVAR_UNUSED) \ - _(1555, ZEND_FETCH_W_SPEC_CV_UNUSED) \ - _(1566, ZEND_FETCH_DIM_W_SPEC_VAR_CONST) \ - _(1567, ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR) \ - _(1568, ZEND_FETCH_DIM_W_SPEC_VAR_TMPVAR) \ - _(1569, ZEND_FETCH_DIM_W_SPEC_VAR_UNUSED) \ - _(1570, ZEND_FETCH_DIM_W_SPEC_VAR_CV) \ - _(1576, ZEND_FETCH_DIM_W_SPEC_CV_CONST) \ - _(1577, ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR) \ - _(1578, ZEND_FETCH_DIM_W_SPEC_CV_TMPVAR) \ - _(1579, ZEND_FETCH_DIM_W_SPEC_CV_UNUSED) \ - _(1580, ZEND_FETCH_DIM_W_SPEC_CV_CV) \ - _(1591, ZEND_FETCH_OBJ_W_SPEC_VAR_CONST) \ - _(1592, ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR) \ - _(1593, ZEND_FETCH_OBJ_W_SPEC_VAR_TMPVAR) \ - _(1595, ZEND_FETCH_OBJ_W_SPEC_VAR_CV) \ - _(1596, ZEND_FETCH_OBJ_W_SPEC_UNUSED_CONST) \ - _(1597, ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR) \ - _(1598, ZEND_FETCH_OBJ_W_SPEC_UNUSED_TMPVAR) \ - _(1600, ZEND_FETCH_OBJ_W_SPEC_UNUSED_CV) \ - _(1601, ZEND_FETCH_OBJ_W_SPEC_CV_CONST) \ - _(1602, ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR) \ - _(1603, ZEND_FETCH_OBJ_W_SPEC_CV_TMPVAR) \ - _(1605, ZEND_FETCH_OBJ_W_SPEC_CV_CV) \ - _(1606, ZEND_FETCH_RW_SPEC_CONST_UNUSED) \ - _(1607, ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED) \ - _(1608, ZEND_FETCH_RW_SPEC_TMPVAR_UNUSED) \ - _(1610, ZEND_FETCH_RW_SPEC_CV_UNUSED) \ - _(1621, ZEND_FETCH_DIM_RW_SPEC_VAR_CONST) \ - _(1622, ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR) \ - _(1623, ZEND_FETCH_DIM_RW_SPEC_VAR_TMPVAR) \ - _(1624, ZEND_FETCH_DIM_RW_SPEC_VAR_UNUSED) \ - _(1625, ZEND_FETCH_DIM_RW_SPEC_VAR_CV) \ - _(1631, ZEND_FETCH_DIM_RW_SPEC_CV_CONST) \ - _(1632, ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR) \ - _(1633, ZEND_FETCH_DIM_RW_SPEC_CV_TMPVAR) \ - _(1634, ZEND_FETCH_DIM_RW_SPEC_CV_UNUSED) \ - _(1635, ZEND_FETCH_DIM_RW_SPEC_CV_CV) \ - _(1646, ZEND_FETCH_OBJ_RW_SPEC_VAR_CONST) \ - _(1647, ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR) \ - _(1648, ZEND_FETCH_OBJ_RW_SPEC_VAR_TMPVAR) \ - _(1650, ZEND_FETCH_OBJ_RW_SPEC_VAR_CV) \ - _(1651, ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CONST) \ - _(1652, ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR) \ - _(1653, ZEND_FETCH_OBJ_RW_SPEC_UNUSED_TMPVAR) \ - _(1655, ZEND_FETCH_OBJ_RW_SPEC_UNUSED_CV) \ - _(1656, ZEND_FETCH_OBJ_RW_SPEC_CV_CONST) \ - _(1657, ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR) \ - _(1658, ZEND_FETCH_OBJ_RW_SPEC_CV_TMPVAR) \ - _(1660, ZEND_FETCH_OBJ_RW_SPEC_CV_CV) \ - _(1661, ZEND_FETCH_IS_SPEC_CONST_UNUSED) \ - _(1662, ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED) \ - _(1663, ZEND_FETCH_IS_SPEC_TMPVAR_UNUSED) \ - _(1665, ZEND_FETCH_IS_SPEC_CV_UNUSED) \ - _(1666, ZEND_FETCH_DIM_IS_SPEC_CONST_CONST) \ - _(1667, ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR) \ - _(1668, ZEND_FETCH_DIM_IS_SPEC_CONST_TMPVAR) \ - _(1670, ZEND_FETCH_DIM_IS_SPEC_CONST_CV) \ - _(1671, ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST) \ - _(1672, ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR) \ - _(1673, ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR) \ - _(1675, ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV) \ - _(1676, ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CONST) \ - _(1677, ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR) \ - _(1678, ZEND_FETCH_DIM_IS_SPEC_TMPVAR_TMPVAR) \ - _(1680, ZEND_FETCH_DIM_IS_SPEC_TMPVAR_CV) \ - _(1686, ZEND_FETCH_DIM_IS_SPEC_CV_CONST) \ - _(1687, ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR) \ - _(1688, ZEND_FETCH_DIM_IS_SPEC_CV_TMPVAR) \ - _(1690, ZEND_FETCH_DIM_IS_SPEC_CV_CV) \ - _(1691, ZEND_FETCH_OBJ_IS_SPEC_CONST_CONST) \ - _(1692, ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR) \ - _(1693, ZEND_FETCH_OBJ_IS_SPEC_CONST_TMPVAR) \ - _(1695, ZEND_FETCH_OBJ_IS_SPEC_CONST_CV) \ - _(1696, ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST) \ - _(1697, ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR) \ - _(1698, ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR) \ - _(1700, ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV) \ - _(1701, ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CONST) \ - _(1702, ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR) \ - _(1703, ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_TMPVAR) \ - _(1705, ZEND_FETCH_OBJ_IS_SPEC_TMPVAR_CV) \ - _(1706, ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CONST) \ - _(1707, ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR) \ - _(1708, ZEND_FETCH_OBJ_IS_SPEC_UNUSED_TMPVAR) \ - _(1710, ZEND_FETCH_OBJ_IS_SPEC_UNUSED_CV) \ - _(1711, ZEND_FETCH_OBJ_IS_SPEC_CV_CONST) \ - _(1712, ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR) \ - _(1713, ZEND_FETCH_OBJ_IS_SPEC_CV_TMPVAR) \ - _(1715, ZEND_FETCH_OBJ_IS_SPEC_CV_CV) \ - _(1716, ZEND_FETCH_FUNC_ARG_SPEC_CONST_UNUSED) \ - _(1717, ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED) \ - _(1718, ZEND_FETCH_FUNC_ARG_SPEC_TMPVAR_UNUSED) \ - _(1720, ZEND_FETCH_FUNC_ARG_SPEC_CV_UNUSED) \ - _(1721, ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CONST) \ - _(1722, ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR) \ - _(1723, ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_TMPVAR) \ - _(1724, ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_UNUSED) \ - _(1725, ZEND_FETCH_DIM_FUNC_ARG_SPEC_CONST_CV) \ - _(1726, ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CONST) \ - _(1727, ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR) \ - _(1728, ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_TMPVAR) \ - _(1729, ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_UNUSED) \ - _(1730, ZEND_FETCH_DIM_FUNC_ARG_SPEC_TMP_CV) \ - _(1731, ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CONST) \ - _(1732, ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR) \ - _(1733, ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_TMPVAR) \ - _(1734, ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_UNUSED) \ - _(1735, ZEND_FETCH_DIM_FUNC_ARG_SPEC_VAR_CV) \ - _(1741, ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CONST) \ - _(1742, ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR) \ - _(1743, ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_TMPVAR) \ - _(1744, ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_UNUSED) \ - _(1745, ZEND_FETCH_DIM_FUNC_ARG_SPEC_CV_CV) \ - _(1746, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CONST) \ - _(1747, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR) \ - _(1748, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_TMPVAR) \ - _(1750, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CONST_CV) \ - _(1751, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CONST) \ - _(1752, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR) \ - _(1753, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_TMPVAR) \ - _(1755, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_TMP_CV) \ - _(1756, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CONST) \ - _(1757, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR) \ - _(1758, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_TMPVAR) \ - _(1760, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_VAR_CV) \ - _(1761, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CONST) \ - _(1762, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR) \ - _(1763, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_TMPVAR) \ - _(1765, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_UNUSED_CV) \ - _(1766, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CONST) \ - _(1767, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR) \ - _(1768, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_TMPVAR) \ - _(1770, ZEND_FETCH_OBJ_FUNC_ARG_SPEC_CV_CV) \ - _(1771, ZEND_FETCH_UNSET_SPEC_CONST_UNUSED) \ - _(1772, ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED) \ - _(1773, ZEND_FETCH_UNSET_SPEC_TMPVAR_UNUSED) \ - _(1775, ZEND_FETCH_UNSET_SPEC_CV_UNUSED) \ - _(1786, ZEND_FETCH_DIM_UNSET_SPEC_VAR_CONST) \ - _(1787, ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR) \ - _(1788, ZEND_FETCH_DIM_UNSET_SPEC_VAR_TMPVAR) \ - _(1790, ZEND_FETCH_DIM_UNSET_SPEC_VAR_CV) \ - _(1796, ZEND_FETCH_DIM_UNSET_SPEC_CV_CONST) \ - _(1797, ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR) \ - _(1798, ZEND_FETCH_DIM_UNSET_SPEC_CV_TMPVAR) \ - _(1800, ZEND_FETCH_DIM_UNSET_SPEC_CV_CV) \ - _(1811, ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CONST) \ - _(1812, ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR) \ - _(1813, ZEND_FETCH_OBJ_UNSET_SPEC_VAR_TMPVAR) \ - _(1815, ZEND_FETCH_OBJ_UNSET_SPEC_VAR_CV) \ - _(1816, ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CONST) \ - _(1817, ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR) \ - _(1818, ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_TMPVAR) \ - _(1820, ZEND_FETCH_OBJ_UNSET_SPEC_UNUSED_CV) \ - _(1821, ZEND_FETCH_OBJ_UNSET_SPEC_CV_CONST) \ - _(1822, ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR) \ - _(1823, ZEND_FETCH_OBJ_UNSET_SPEC_CV_TMPVAR) \ - _(1825, ZEND_FETCH_OBJ_UNSET_SPEC_CV_CV) \ - _(1826, ZEND_FETCH_LIST_R_SPEC_CONST_CONST) \ - _(1827, ZEND_FETCH_LIST_R_SPEC_CONST_TMPVAR) \ - _(1828, ZEND_FETCH_LIST_R_SPEC_CONST_TMPVAR) \ - _(1830, ZEND_FETCH_LIST_R_SPEC_CONST_CV) \ - _(1831, ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CONST) \ - _(1832, ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR) \ - _(1833, ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR) \ - _(1835, ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CV) \ - _(1836, ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CONST) \ - _(1837, ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR) \ - _(1838, ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR) \ - _(1840, ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CV) \ - _(1846, ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CONST) \ - _(1847, ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR) \ - _(1848, ZEND_FETCH_LIST_R_SPEC_TMPVARCV_TMPVAR) \ - _(1850, ZEND_FETCH_LIST_R_SPEC_TMPVARCV_CV) \ - _(1851, ZEND_FETCH_CONSTANT_SPEC_UNUSED_CONST) \ - _(1852, ZEND_CHECK_FUNC_ARG_SPEC_UNUSED) \ - _(1853, ZEND_CHECK_FUNC_ARG_SPEC_UNUSED_QUICK) \ - _(1854, ZEND_EXT_STMT_SPEC) \ - _(1855, ZEND_EXT_FCALL_BEGIN_SPEC) \ - _(1856, ZEND_EXT_FCALL_END_SPEC) \ - _(1857, ZEND_EXT_NOP_SPEC) \ - _(1858, ZEND_TICKS_SPEC) \ - _(1859, ZEND_SEND_VAR_NO_REF_SPEC_VAR) \ - _(1860, ZEND_CATCH_SPEC_CONST) \ - _(1861, ZEND_THROW_SPEC_CONST) \ - _(1862, ZEND_THROW_SPEC_TMP) \ - _(1863, ZEND_THROW_SPEC_VAR) \ - _(1865, ZEND_THROW_SPEC_CV) \ - _(1866, ZEND_FETCH_CLASS_SPEC_UNUSED_CONST) \ - _(1867, ZEND_FETCH_CLASS_SPEC_UNUSED_TMPVAR) \ - _(1868, ZEND_FETCH_CLASS_SPEC_UNUSED_TMPVAR) \ - _(1869, ZEND_FETCH_CLASS_SPEC_UNUSED_UNUSED) \ - _(1870, ZEND_FETCH_CLASS_SPEC_UNUSED_CV) \ - _(1871, ZEND_CLONE_SPEC_CONST) \ - _(1872, ZEND_CLONE_SPEC_TMPVAR) \ - _(1873, ZEND_CLONE_SPEC_TMPVAR) \ - _(1874, ZEND_CLONE_SPEC_UNUSED) \ - _(1875, ZEND_CLONE_SPEC_CV) \ - _(1876, ZEND_RETURN_BY_REF_SPEC_CONST) \ - _(1877, ZEND_RETURN_BY_REF_SPEC_TMP) \ - _(1878, ZEND_RETURN_BY_REF_SPEC_VAR) \ - _(1880, ZEND_RETURN_BY_REF_SPEC_CV) \ - _(1881, ZEND_INIT_METHOD_CALL_SPEC_CONST_CONST) \ - _(1882, ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR) \ - _(1883, ZEND_INIT_METHOD_CALL_SPEC_CONST_TMPVAR) \ - _(1885, ZEND_INIT_METHOD_CALL_SPEC_CONST_CV) \ - _(1886, ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST) \ - _(1887, ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR) \ - _(1888, ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR) \ - _(1890, ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV) \ - _(1891, ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CONST) \ - _(1892, ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR) \ - _(1893, ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_TMPVAR) \ - _(1895, ZEND_INIT_METHOD_CALL_SPEC_TMPVAR_CV) \ - _(1896, ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CONST) \ - _(1897, ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR) \ - _(1898, ZEND_INIT_METHOD_CALL_SPEC_UNUSED_TMPVAR) \ - _(1900, ZEND_INIT_METHOD_CALL_SPEC_UNUSED_CV) \ - _(1901, ZEND_INIT_METHOD_CALL_SPEC_CV_CONST) \ - _(1902, ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR) \ - _(1903, ZEND_INIT_METHOD_CALL_SPEC_CV_TMPVAR) \ - _(1905, ZEND_INIT_METHOD_CALL_SPEC_CV_CV) \ - _(1906, ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CONST) \ - _(1907, ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR) \ - _(1908, ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_TMPVAR) \ - _(1909, ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_UNUSED) \ - _(1910, ZEND_INIT_STATIC_METHOD_CALL_SPEC_CONST_CV) \ - _(1916, ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CONST) \ - _(1917, ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR) \ - _(1918, ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_TMPVAR) \ - _(1919, ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_UNUSED) \ - _(1920, ZEND_INIT_STATIC_METHOD_CALL_SPEC_VAR_CV) \ - _(1921, ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CONST) \ - _(1922, ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR) \ - _(1923, ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_TMPVAR) \ - _(1924, ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_UNUSED) \ - _(1925, ZEND_INIT_STATIC_METHOD_CALL_SPEC_UNUSED_CV) \ - _(1931, ZEND_ISSET_ISEMPTY_VAR_SPEC_CONST_UNUSED) \ - _(1932, ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED) \ - _(1933, ZEND_ISSET_ISEMPTY_VAR_SPEC_TMPVAR_UNUSED) \ - _(1935, ZEND_ISSET_ISEMPTY_VAR_SPEC_CV_UNUSED) \ - _(1936, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CONST) \ - _(1937, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR) \ - _(1938, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_TMPVAR) \ - _(1940, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CONST_CV) \ - _(1941, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST) \ - _(1942, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR) \ - _(1943, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR) \ - _(1945, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV) \ - _(1946, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CONST) \ - _(1947, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR) \ - _(1948, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_TMPVAR) \ - _(1950, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_TMPVAR_CV) \ - _(1956, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CONST) \ - _(1957, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR) \ - _(1958, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_TMPVAR) \ - _(1960, ZEND_ISSET_ISEMPTY_DIM_OBJ_SPEC_CV_CV) \ - _(1961, ZEND_SEND_VAL_EX_SPEC_CONST) \ - _(1962, ZEND_SEND_VAL_EX_SPEC_CONST_QUICK) \ - _(1963, ZEND_SEND_VAL_EX_SPEC_TMP) \ - _(1964, ZEND_SEND_VAL_EX_SPEC_TMP_QUICK) \ - _(1973, ZEND_SEND_VAR_SPEC_VAR) \ - _(1975, ZEND_SEND_VAR_SPEC_CV) \ - _(1976, ZEND_INIT_USER_CALL_SPEC_CONST_CONST) \ - _(1977, ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR) \ - _(1978, ZEND_INIT_USER_CALL_SPEC_CONST_TMPVAR) \ - _(1980, ZEND_INIT_USER_CALL_SPEC_CONST_CV) \ - _(1981, ZEND_SEND_ARRAY_SPEC) \ - _(1982, ZEND_SEND_USER_SPEC_CONST) \ - _(1983, ZEND_SEND_USER_SPEC_TMP) \ - _(1984, ZEND_SEND_USER_SPEC_VAR) \ - _(1986, ZEND_SEND_USER_SPEC_CV) \ - _(1987, ZEND_STRLEN_SPEC_CONST) \ - _(1988, ZEND_STRLEN_SPEC_TMPVAR) \ - _(1989, ZEND_STRLEN_SPEC_TMPVAR) \ - _(1991, ZEND_STRLEN_SPEC_CV) \ - _(1992, ZEND_DEFINED_SPEC_CONST) \ - _(1993, ZEND_TYPE_CHECK_SPEC_CONST) \ - _(1994, ZEND_TYPE_CHECK_SPEC_TMPVAR) \ - _(1995, ZEND_TYPE_CHECK_SPEC_TMPVAR) \ - _(1997, ZEND_TYPE_CHECK_SPEC_CV) \ - _(1998, ZEND_VERIFY_RETURN_TYPE_SPEC_CONST_UNUSED) \ - _(1999, ZEND_VERIFY_RETURN_TYPE_SPEC_TMP_UNUSED) \ - _(2000, ZEND_VERIFY_RETURN_TYPE_SPEC_VAR_UNUSED) \ - _(2001, ZEND_VERIFY_RETURN_TYPE_SPEC_UNUSED_UNUSED) \ - _(2002, ZEND_VERIFY_RETURN_TYPE_SPEC_CV_UNUSED) \ - _(2003, ZEND_FE_RESET_RW_SPEC_CONST) \ - _(2004, ZEND_FE_RESET_RW_SPEC_TMP) \ - _(2005, ZEND_FE_RESET_RW_SPEC_VAR) \ - _(2007, ZEND_FE_RESET_RW_SPEC_CV) \ - _(2008, ZEND_FE_FETCH_RW_SPEC_VAR) \ - _(2009, ZEND_FE_FREE_SPEC_TMPVAR) \ - _(2010, ZEND_INIT_DYNAMIC_CALL_SPEC_CONST) \ - _(2011, ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR) \ - _(2012, ZEND_INIT_DYNAMIC_CALL_SPEC_TMPVAR) \ - _(2014, ZEND_INIT_DYNAMIC_CALL_SPEC_CV) \ - _(2015, ZEND_DO_ICALL_SPEC_RETVAL_UNUSED) \ - _(2016, ZEND_DO_ICALL_SPEC_RETVAL_USED) \ - _(2017, ZEND_DO_UCALL_SPEC_RETVAL_UNUSED) \ - _(2018, ZEND_DO_UCALL_SPEC_RETVAL_USED) \ - _(2019, ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_UNUSED) \ - _(2020, ZEND_DO_FCALL_BY_NAME_SPEC_RETVAL_USED) \ - _(2031, ZEND_PRE_INC_OBJ_SPEC_VAR_CONST) \ - _(2032, ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR) \ - _(2033, ZEND_PRE_INC_OBJ_SPEC_VAR_TMPVAR) \ - _(2035, ZEND_PRE_INC_OBJ_SPEC_VAR_CV) \ - _(2036, ZEND_PRE_INC_OBJ_SPEC_UNUSED_CONST) \ - _(2037, ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR) \ - _(2038, ZEND_PRE_INC_OBJ_SPEC_UNUSED_TMPVAR) \ - _(2040, ZEND_PRE_INC_OBJ_SPEC_UNUSED_CV) \ - _(2041, ZEND_PRE_INC_OBJ_SPEC_CV_CONST) \ - _(2042, ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR) \ - _(2043, ZEND_PRE_INC_OBJ_SPEC_CV_TMPVAR) \ - _(2045, ZEND_PRE_INC_OBJ_SPEC_CV_CV) \ - _(2056, ZEND_POST_INC_OBJ_SPEC_VAR_CONST) \ - _(2057, ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR) \ - _(2058, ZEND_POST_INC_OBJ_SPEC_VAR_TMPVAR) \ - _(2060, ZEND_POST_INC_OBJ_SPEC_VAR_CV) \ - _(2061, ZEND_POST_INC_OBJ_SPEC_UNUSED_CONST) \ - _(2062, ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR) \ - _(2063, ZEND_POST_INC_OBJ_SPEC_UNUSED_TMPVAR) \ - _(2065, ZEND_POST_INC_OBJ_SPEC_UNUSED_CV) \ - _(2066, ZEND_POST_INC_OBJ_SPEC_CV_CONST) \ - _(2067, ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR) \ - _(2068, ZEND_POST_INC_OBJ_SPEC_CV_TMPVAR) \ - _(2070, ZEND_POST_INC_OBJ_SPEC_CV_CV) \ - _(2071, ZEND_ECHO_SPEC_CONST) \ - _(2072, ZEND_ECHO_SPEC_TMPVAR) \ - _(2073, ZEND_ECHO_SPEC_TMPVAR) \ - _(2075, ZEND_ECHO_SPEC_CV) \ - _(2082, ZEND_INSTANCEOF_SPEC_TMPVAR_CONST) \ - _(2084, ZEND_INSTANCEOF_SPEC_TMPVAR_VAR) \ - _(2085, ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED) \ - _(2087, ZEND_INSTANCEOF_SPEC_TMPVAR_CONST) \ - _(2089, ZEND_INSTANCEOF_SPEC_TMPVAR_VAR) \ - _(2090, ZEND_INSTANCEOF_SPEC_TMPVAR_UNUSED) \ - _(2097, ZEND_INSTANCEOF_SPEC_CV_CONST) \ - _(2099, ZEND_INSTANCEOF_SPEC_CV_VAR) \ - _(2100, ZEND_INSTANCEOF_SPEC_CV_UNUSED) \ - _(2102, ZEND_GENERATOR_CREATE_SPEC) \ - _(2105, ZEND_MAKE_REF_SPEC_VAR_UNUSED) \ - _(2107, ZEND_MAKE_REF_SPEC_CV_UNUSED) \ - _(2108, ZEND_DECLARE_FUNCTION_SPEC) \ - _(2109, ZEND_DECLARE_LAMBDA_FUNCTION_SPEC_CONST_UNUSED) \ - _(2110, ZEND_DECLARE_CONST_SPEC_CONST_CONST) \ - _(2111, ZEND_DECLARE_CLASS_SPEC_CONST) \ - _(2112, ZEND_DECLARE_CLASS_DELAYED_SPEC_CONST_CONST) \ - _(2113, ZEND_DECLARE_ANON_CLASS_SPEC) \ - _(2114, ZEND_ADD_ARRAY_UNPACK_SPEC) \ - _(2115, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CONST) \ - _(2116, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR) \ - _(2117, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_TMPVAR) \ - _(2119, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CONST_CV) \ - _(2120, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST) \ - _(2121, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR) \ - _(2122, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR) \ - _(2124, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV) \ - _(2125, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CONST) \ - _(2126, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR) \ - _(2127, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_TMPVAR) \ - _(2129, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_TMPVAR_CV) \ - _(2130, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CONST) \ - _(2131, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR) \ - _(2132, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_TMPVAR) \ - _(2134, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_UNUSED_CV) \ - _(2135, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CONST) \ - _(2136, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR) \ - _(2137, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_TMPVAR) \ - _(2139, ZEND_ISSET_ISEMPTY_PROP_OBJ_SPEC_CV_CV) \ - _(2140, ZEND_HANDLE_EXCEPTION_SPEC) \ - _(2141, ZEND_USER_OPCODE_SPEC) \ - _(2142, ZEND_ASSERT_CHECK_SPEC) \ - _(2143, ZEND_JMP_SET_SPEC_CONST) \ - _(2144, ZEND_JMP_SET_SPEC_TMP) \ - _(2145, ZEND_JMP_SET_SPEC_VAR) \ - _(2147, ZEND_JMP_SET_SPEC_CV) \ - _(2148, ZEND_UNSET_CV_SPEC_CV_UNUSED) \ - _(2149, ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_SET) \ - _(2150, ZEND_ISSET_ISEMPTY_CV_SPEC_CV_UNUSED_EMPTY) \ - _(2151, ZEND_FETCH_LIST_W_SPEC_VAR_CONST) \ - _(2152, ZEND_FETCH_LIST_W_SPEC_VAR_TMPVAR) \ - _(2153, ZEND_FETCH_LIST_W_SPEC_VAR_TMPVAR) \ - _(2155, ZEND_FETCH_LIST_W_SPEC_VAR_CV) \ - _(2156, ZEND_SEPARATE_SPEC_VAR_UNUSED) \ - _(2157, ZEND_FETCH_CLASS_NAME_SPEC_UNUSED) \ - _(2158, ZEND_CALL_TRAMPOLINE_SPEC) \ - _(2159, ZEND_DISCARD_EXCEPTION_SPEC) \ - _(2160, ZEND_YIELD_SPEC_CONST_CONST) \ - _(2161, ZEND_YIELD_SPEC_CONST_TMP) \ - _(2162, ZEND_YIELD_SPEC_CONST_VAR) \ - _(2163, ZEND_YIELD_SPEC_CONST_UNUSED) \ - _(2164, ZEND_YIELD_SPEC_CONST_CV) \ - _(2165, ZEND_YIELD_SPEC_TMP_CONST) \ - _(2166, ZEND_YIELD_SPEC_TMP_TMP) \ - _(2167, ZEND_YIELD_SPEC_TMP_VAR) \ - _(2168, ZEND_YIELD_SPEC_TMP_UNUSED) \ - _(2169, ZEND_YIELD_SPEC_TMP_CV) \ - _(2170, ZEND_YIELD_SPEC_VAR_CONST) \ - _(2171, ZEND_YIELD_SPEC_VAR_TMP) \ - _(2172, ZEND_YIELD_SPEC_VAR_VAR) \ - _(2173, ZEND_YIELD_SPEC_VAR_UNUSED) \ - _(2174, ZEND_YIELD_SPEC_VAR_CV) \ - _(2175, ZEND_YIELD_SPEC_UNUSED_CONST) \ - _(2176, ZEND_YIELD_SPEC_UNUSED_TMP) \ - _(2177, ZEND_YIELD_SPEC_UNUSED_VAR) \ - _(2178, ZEND_YIELD_SPEC_UNUSED_UNUSED) \ - _(2179, ZEND_YIELD_SPEC_UNUSED_CV) \ - _(2180, ZEND_YIELD_SPEC_CV_CONST) \ - _(2181, ZEND_YIELD_SPEC_CV_TMP) \ - _(2182, ZEND_YIELD_SPEC_CV_VAR) \ - _(2183, ZEND_YIELD_SPEC_CV_UNUSED) \ - _(2184, ZEND_YIELD_SPEC_CV_CV) \ - _(2185, ZEND_GENERATOR_RETURN_SPEC_CONST) \ - _(2186, ZEND_GENERATOR_RETURN_SPEC_TMP) \ - _(2187, ZEND_GENERATOR_RETURN_SPEC_VAR) \ - _(2189, ZEND_GENERATOR_RETURN_SPEC_CV) \ - _(2190, ZEND_FAST_CALL_SPEC) \ - _(2191, ZEND_FAST_RET_SPEC) \ - _(2192, ZEND_RECV_VARIADIC_SPEC_UNUSED) \ - _(2193, ZEND_SEND_UNPACK_SPEC) \ - _(2194, ZEND_YIELD_FROM_SPEC_CONST) \ - _(2195, ZEND_YIELD_FROM_SPEC_TMP) \ - _(2196, ZEND_YIELD_FROM_SPEC_VAR) \ - _(2198, ZEND_YIELD_FROM_SPEC_CV) \ - _(2199, ZEND_COPY_TMP_SPEC_TMPVAR_UNUSED) \ - _(2200, ZEND_BIND_GLOBAL_SPEC_CV_CONST) \ - _(2201, ZEND_COALESCE_SPEC_CONST) \ - _(2202, ZEND_COALESCE_SPEC_TMP) \ - _(2203, ZEND_COALESCE_SPEC_VAR) \ - _(2205, ZEND_COALESCE_SPEC_CV) \ - _(2206, ZEND_SPACESHIP_SPEC_CONST_CONST) \ - _(2207, ZEND_SPACESHIP_SPEC_CONST_TMPVAR) \ - _(2208, ZEND_SPACESHIP_SPEC_CONST_TMPVAR) \ - _(2210, ZEND_SPACESHIP_SPEC_CONST_CV) \ - _(2211, ZEND_SPACESHIP_SPEC_TMPVAR_CONST) \ - _(2212, ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR) \ - _(2213, ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR) \ - _(2215, ZEND_SPACESHIP_SPEC_TMPVAR_CV) \ - _(2216, ZEND_SPACESHIP_SPEC_TMPVAR_CONST) \ - _(2217, ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR) \ - _(2218, ZEND_SPACESHIP_SPEC_TMPVAR_TMPVAR) \ - _(2220, ZEND_SPACESHIP_SPEC_TMPVAR_CV) \ - _(2226, ZEND_SPACESHIP_SPEC_CV_CONST) \ - _(2227, ZEND_SPACESHIP_SPEC_CV_TMPVAR) \ - _(2228, ZEND_SPACESHIP_SPEC_CV_TMPVAR) \ - _(2230, ZEND_SPACESHIP_SPEC_CV_CV) \ - _(2231, ZEND_FUNC_NUM_ARGS_SPEC_UNUSED_UNUSED) \ - _(2232, ZEND_FUNC_GET_ARGS_SPEC_CONST_UNUSED) \ - _(2235, ZEND_FUNC_GET_ARGS_SPEC_UNUSED_UNUSED) \ - _(2237, ZEND_FETCH_STATIC_PROP_R_SPEC) \ - _(2238, ZEND_FETCH_STATIC_PROP_W_SPEC) \ - _(2239, ZEND_FETCH_STATIC_PROP_RW_SPEC) \ - _(2240, ZEND_FETCH_STATIC_PROP_IS_SPEC) \ - _(2241, ZEND_FETCH_STATIC_PROP_FUNC_ARG_SPEC) \ - _(2242, ZEND_FETCH_STATIC_PROP_UNSET_SPEC) \ - _(2243, ZEND_UNSET_STATIC_PROP_SPEC) \ - _(2244, ZEND_ISSET_ISEMPTY_STATIC_PROP_SPEC) \ - _(2245, ZEND_FETCH_CLASS_CONSTANT_SPEC_CONST_CONST) \ - _(2247, ZEND_FETCH_CLASS_CONSTANT_SPEC_VAR_CONST) \ - _(2248, ZEND_FETCH_CLASS_CONSTANT_SPEC_UNUSED_CONST) \ - _(2250, ZEND_BIND_LEXICAL_SPEC_TMP_CV) \ - _(2251, ZEND_BIND_STATIC_SPEC_CV_UNUSED) \ - _(2252, ZEND_FETCH_THIS_SPEC_UNUSED_UNUSED) \ - _(2253, ZEND_SEND_FUNC_ARG_SPEC_VAR) \ - _(2254, ZEND_ISSET_ISEMPTY_THIS_SPEC_UNUSED_UNUSED) \ - _(2255, ZEND_SWITCH_LONG_SPEC_CONST_CONST) \ - _(2256, ZEND_SWITCH_LONG_SPEC_TMPVARCV_CONST) \ - _(2257, ZEND_SWITCH_LONG_SPEC_TMPVARCV_CONST) \ - _(2259, ZEND_SWITCH_LONG_SPEC_TMPVARCV_CONST) \ - _(2260, ZEND_SWITCH_STRING_SPEC_CONST_CONST) \ - _(2261, ZEND_SWITCH_STRING_SPEC_TMPVARCV_CONST) \ - _(2262, ZEND_SWITCH_STRING_SPEC_TMPVARCV_CONST) \ - _(2264, ZEND_SWITCH_STRING_SPEC_TMPVARCV_CONST) \ - _(2265, ZEND_IN_ARRAY_SPEC_CONST_CONST) \ - _(2266, ZEND_IN_ARRAY_SPEC_TMP_CONST) \ - _(2267, ZEND_IN_ARRAY_SPEC_VAR_CONST) \ - _(2269, ZEND_IN_ARRAY_SPEC_CV_CONST) \ - _(2270, ZEND_COUNT_SPEC_CONST_UNUSED) \ - _(2271, ZEND_COUNT_SPEC_TMPVAR_UNUSED) \ - _(2272, ZEND_COUNT_SPEC_TMPVAR_UNUSED) \ - _(2274, ZEND_COUNT_SPEC_CV_UNUSED) \ - _(2275, ZEND_GET_CLASS_SPEC_CONST_UNUSED) \ - _(2276, ZEND_GET_CLASS_SPEC_TMPVAR_UNUSED) \ - _(2277, ZEND_GET_CLASS_SPEC_TMPVAR_UNUSED) \ - _(2278, ZEND_GET_CLASS_SPEC_UNUSED_UNUSED) \ - _(2279, ZEND_GET_CLASS_SPEC_CV_UNUSED) \ - _(2280, ZEND_GET_CALLED_CLASS_SPEC_UNUSED_UNUSED) \ - _(2281, ZEND_GET_TYPE_SPEC_CONST_UNUSED) \ - _(2282, ZEND_GET_TYPE_SPEC_TMP_UNUSED) \ - _(2283, ZEND_GET_TYPE_SPEC_VAR_UNUSED) \ - _(2285, ZEND_GET_TYPE_SPEC_CV_UNUSED) \ - _(2286, ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CONST) \ - _(2287, ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_TMPVAR) \ - _(2288, ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_TMPVAR) \ - _(2290, ZEND_ARRAY_KEY_EXISTS_SPEC_CONST_CV) \ - _(2291, ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CONST) \ - _(2292, ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR) \ - _(2293, ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR) \ - _(2295, ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CV) \ - _(2296, ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CONST) \ - _(2297, ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR) \ - _(2298, ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_TMPVAR) \ - _(2300, ZEND_ARRAY_KEY_EXISTS_SPEC_TMPVAR_CV) \ - _(2306, ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CONST) \ - _(2307, ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR) \ - _(2308, ZEND_ARRAY_KEY_EXISTS_SPEC_CV_TMPVAR) \ - _(2310, ZEND_ARRAY_KEY_EXISTS_SPEC_CV_CV) \ - _(2311, ZEND_JMP_FORWARD_SPEC) \ - _(2317, ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST) \ - _(2318, ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2319, ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2321, ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2322, ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST) \ - _(2323, ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2324, ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2326, ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2332, ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST) \ - _(2333, ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2334, ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2336, ZEND_ADD_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2342, ZEND_ADD_LONG_SPEC_TMPVARCV_CONST) \ - _(2343, ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2344, ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2346, ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2347, ZEND_ADD_LONG_SPEC_TMPVARCV_CONST) \ - _(2348, ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2349, ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2351, ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2357, ZEND_ADD_LONG_SPEC_TMPVARCV_CONST) \ - _(2358, ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2359, ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2361, ZEND_ADD_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2367, ZEND_ADD_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2368, ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2369, ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2371, ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2372, ZEND_ADD_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2373, ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2374, ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2376, ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2382, ZEND_ADD_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2383, ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2384, ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2386, ZEND_ADD_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2388, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV) \ - _(2389, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV) \ - _(2391, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_CONST_TMPVARCV) \ - _(2392, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST) \ - _(2393, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2394, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2396, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2397, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST) \ - _(2398, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2399, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2401, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2407, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST) \ - _(2408, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2409, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2411, ZEND_SUB_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2413, ZEND_SUB_LONG_SPEC_CONST_TMPVARCV) \ - _(2414, ZEND_SUB_LONG_SPEC_CONST_TMPVARCV) \ - _(2416, ZEND_SUB_LONG_SPEC_CONST_TMPVARCV) \ - _(2417, ZEND_SUB_LONG_SPEC_TMPVARCV_CONST) \ - _(2418, ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2419, ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2421, ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2422, ZEND_SUB_LONG_SPEC_TMPVARCV_CONST) \ - _(2423, ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2424, ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2426, ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2432, ZEND_SUB_LONG_SPEC_TMPVARCV_CONST) \ - _(2433, ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2434, ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2436, ZEND_SUB_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2438, ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV) \ - _(2439, ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV) \ - _(2441, ZEND_SUB_DOUBLE_SPEC_CONST_TMPVARCV) \ - _(2442, ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2443, ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2444, ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2446, ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2447, ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2448, ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2449, ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2451, ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2457, ZEND_SUB_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2458, ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2459, ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2461, ZEND_SUB_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2467, ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST) \ - _(2468, ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2469, ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2471, ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2472, ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST) \ - _(2473, ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2474, ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2476, ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2482, ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_CONST) \ - _(2483, ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2484, ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2486, ZEND_MUL_LONG_NO_OVERFLOW_SPEC_TMPVARCV_TMPVARCV) \ - _(2492, ZEND_MUL_LONG_SPEC_TMPVARCV_CONST) \ - _(2493, ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2494, ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2496, ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2497, ZEND_MUL_LONG_SPEC_TMPVARCV_CONST) \ - _(2498, ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2499, ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2501, ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2507, ZEND_MUL_LONG_SPEC_TMPVARCV_CONST) \ - _(2508, ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2509, ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2511, ZEND_MUL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2517, ZEND_MUL_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2518, ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2519, ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2521, ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2522, ZEND_MUL_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2523, ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2524, ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2526, ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2532, ZEND_MUL_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2533, ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2534, ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2536, ZEND_MUL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2552, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST) \ - _(2553, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2554, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2555, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2556, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2557, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2558, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2559, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2560, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2564, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2565, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2566, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2567, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST) \ - _(2568, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2569, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2570, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2571, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2572, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2573, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2574, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2575, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2579, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2580, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2581, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2597, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST) \ - _(2598, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2599, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2600, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2601, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2602, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2603, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2604, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2605, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2609, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2610, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2611, ZEND_IS_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2627, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2628, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2629, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2630, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2631, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2632, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2633, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2634, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2635, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2639, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2640, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2641, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2642, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2643, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2644, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2645, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2646, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2647, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2648, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2649, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2650, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2654, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2655, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2656, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2672, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2673, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2674, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2675, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2676, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2677, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2678, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2679, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2680, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2684, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2685, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2686, ZEND_IS_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2702, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST) \ - _(2703, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2704, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2705, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2706, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2707, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2708, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2709, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2710, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2714, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2715, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2716, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2717, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST) \ - _(2718, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2719, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2720, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2721, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2722, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2723, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2724, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2725, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2729, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2730, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2731, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2747, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST) \ - _(2748, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2749, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2750, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2751, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2752, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2753, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2754, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2755, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2759, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2760, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2761, ZEND_IS_NOT_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2777, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2778, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2779, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2780, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2781, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2782, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2783, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2784, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2785, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2789, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2790, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2791, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2792, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2793, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2794, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2795, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2796, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2797, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2798, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2799, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2800, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2804, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2805, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2806, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2822, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2823, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2824, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2825, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2826, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2827, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2828, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2829, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2830, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2834, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2835, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2836, ZEND_IS_NOT_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2840, ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV) \ - _(2841, ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ) \ - _(2842, ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(2843, ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV) \ - _(2844, ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ) \ - _(2845, ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(2849, ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV) \ - _(2850, ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPZ) \ - _(2851, ZEND_IS_SMALLER_LONG_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(2852, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST) \ - _(2853, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2854, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2855, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2856, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2857, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2858, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2859, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2860, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2864, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2865, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2866, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2867, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST) \ - _(2868, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2869, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2870, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2871, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2872, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2873, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2874, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2875, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2879, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2880, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2881, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2897, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST) \ - _(2898, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2899, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2900, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2901, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2902, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2903, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2904, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2905, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2909, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(2910, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2911, ZEND_IS_SMALLER_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2915, ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV) \ - _(2916, ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ) \ - _(2917, ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(2918, ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV) \ - _(2919, ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ) \ - _(2920, ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(2924, ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV) \ - _(2925, ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ) \ - _(2926, ZEND_IS_SMALLER_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(2927, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2928, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2929, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2930, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2931, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2932, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2933, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2934, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2935, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2939, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2940, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2941, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2942, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2943, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2944, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2945, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2946, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2947, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2948, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2949, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2950, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2954, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2955, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2956, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2972, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(2973, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) \ - _(2974, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(2975, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2976, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2977, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2978, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2979, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2980, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2984, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(2985, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(2986, ZEND_IS_SMALLER_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(2990, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV) \ - _(2991, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ) \ - _(2992, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(2993, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV) \ - _(2994, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ) \ - _(2995, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(2999, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV) \ - _(3000, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPZ) \ - _(3001, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(3002, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST) \ - _(3003, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ) \ - _(3004, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(3005, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(3006, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3007, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3008, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(3009, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3010, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3014, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(3015, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3016, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3017, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST) \ - _(3018, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ) \ - _(3019, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(3020, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(3021, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3022, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3023, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(3024, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3025, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3029, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(3030, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3031, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3047, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST) \ - _(3048, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPZ) \ - _(3049, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(3050, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(3051, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3052, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3053, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(3054, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3055, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3059, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV) \ - _(3060, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3061, ZEND_IS_SMALLER_OR_EQUAL_LONG_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3065, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV) \ - _(3066, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ) \ - _(3067, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(3068, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV) \ - _(3069, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ) \ - _(3070, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(3074, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV) \ - _(3075, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPZ) \ - _(3076, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_CONST_TMPVARCV_JMPNZ) \ - _(3077, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(3078, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) \ - _(3079, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(3080, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(3081, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3082, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3083, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(3084, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3085, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3089, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(3090, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3091, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3092, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(3093, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) \ - _(3094, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(3095, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(3096, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3097, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3098, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(3099, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3100, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3104, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(3105, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3106, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3122, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST) \ - _(3123, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPZ) \ - _(3124, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_CONST_JMPNZ) \ - _(3125, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(3126, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3127, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3128, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(3129, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3130, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3134, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV) \ - _(3135, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPZ) \ - _(3136, ZEND_IS_SMALLER_OR_EQUAL_DOUBLE_SPEC_TMPVARCV_TMPVARCV_JMPNZ) \ - _(3137, ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED) \ - _(3138, ZEND_PRE_INC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED) \ - _(3139, ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_UNUSED) \ - _(3140, ZEND_PRE_INC_LONG_SPEC_CV_RETVAL_USED) \ - _(3141, ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_UNUSED) \ - _(3142, ZEND_PRE_DEC_LONG_NO_OVERFLOW_SPEC_CV_RETVAL_USED) \ - _(3143, ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_UNUSED) \ - _(3144, ZEND_PRE_DEC_LONG_SPEC_CV_RETVAL_USED) \ - _(3145, ZEND_POST_INC_LONG_NO_OVERFLOW_SPEC_CV) \ - _(3146, ZEND_POST_INC_LONG_SPEC_CV) \ - _(3147, ZEND_POST_DEC_LONG_NO_OVERFLOW_SPEC_CV) \ - _(3148, ZEND_POST_DEC_LONG_SPEC_CV) \ - _(3149, ZEND_QM_ASSIGN_LONG_SPEC_CONST) \ - _(3150, ZEND_QM_ASSIGN_LONG_SPEC_TMPVARCV) \ - _(3151, ZEND_QM_ASSIGN_LONG_SPEC_TMPVARCV) \ - _(3153, ZEND_QM_ASSIGN_LONG_SPEC_TMPVARCV) \ - _(3154, ZEND_QM_ASSIGN_DOUBLE_SPEC_CONST) \ - _(3155, ZEND_QM_ASSIGN_DOUBLE_SPEC_TMPVARCV) \ - _(3156, ZEND_QM_ASSIGN_DOUBLE_SPEC_TMPVARCV) \ - _(3158, ZEND_QM_ASSIGN_DOUBLE_SPEC_TMPVARCV) \ - _(3159, ZEND_QM_ASSIGN_NOREF_SPEC_CONST) \ - _(3160, ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV) \ - _(3161, ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV) \ - _(3163, ZEND_QM_ASSIGN_NOREF_SPEC_TMPVARCV) \ - _(3165, ZEND_FETCH_DIM_R_INDEX_SPEC_CONST_TMPVARCV) \ - _(3166, ZEND_FETCH_DIM_R_INDEX_SPEC_CONST_TMPVARCV) \ - _(3168, ZEND_FETCH_DIM_R_INDEX_SPEC_CONST_TMPVARCV) \ - _(3169, ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_CONST) \ - _(3170, ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV) \ - _(3171, ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV) \ - _(3173, ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV) \ - _(3174, ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_CONST) \ - _(3175, ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV) \ - _(3176, ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV) \ - _(3178, ZEND_FETCH_DIM_R_INDEX_SPEC_TMPVAR_TMPVARCV) \ - _(3184, ZEND_FETCH_DIM_R_INDEX_SPEC_CV_CONST) \ - _(3185, ZEND_FETCH_DIM_R_INDEX_SPEC_CV_TMPVARCV) \ - _(3186, ZEND_FETCH_DIM_R_INDEX_SPEC_CV_TMPVARCV) \ - _(3188, ZEND_FETCH_DIM_R_INDEX_SPEC_CV_TMPVARCV) \ - _(3191, ZEND_SEND_VAR_SIMPLE_SPEC_VAR) \ - _(3193, ZEND_SEND_VAR_SIMPLE_SPEC_CV) \ - _(3196, ZEND_SEND_VAR_EX_SIMPLE_SPEC_VAR) \ - _(3198, ZEND_SEND_VAR_EX_SIMPLE_SPEC_CV) \ - _(3199, ZEND_SEND_VAL_SIMPLE_SPEC_CONST) \ - _(3200, ZEND_SEND_VAL_EX_SIMPLE_SPEC_CONST) \ - _(3201, ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_UNUSED) \ - _(3202, ZEND_FE_FETCH_R_SIMPLE_SPEC_VAR_CV_RETVAL_USED) \ - _(3202+1, ZEND_NULL) diff --git a/7.4.27/mac/include/php/Zend/zend_vm_opcodes.h b/7.4.27/mac/include/php/Zend/zend_vm_opcodes.h deleted file mode 100644 index d06f44e..0000000 --- a/7.4.27/mac/include/php/Zend/zend_vm_opcodes.h +++ /dev/null @@ -1,277 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - | Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_VM_OPCODES_H -#define ZEND_VM_OPCODES_H - -#define ZEND_VM_SPEC 1 -#define ZEND_VM_LINES 0 -#define ZEND_VM_KIND_CALL 1 -#define ZEND_VM_KIND_SWITCH 2 -#define ZEND_VM_KIND_GOTO 3 -#define ZEND_VM_KIND_HYBRID 4 -/* HYBRID requires support for computed GOTO and global register variables*/ -#if (defined(__GNUC__) && defined(HAVE_GCC_GLOBAL_REGS)) -# define ZEND_VM_KIND ZEND_VM_KIND_HYBRID -#else -# define ZEND_VM_KIND ZEND_VM_KIND_CALL -#endif - -#define ZEND_VM_OP_SPEC 0x00000001 -#define ZEND_VM_OP_CONST 0x00000002 -#define ZEND_VM_OP_TMPVAR 0x00000004 -#define ZEND_VM_OP_TMPVARCV 0x00000008 -#define ZEND_VM_OP_MASK 0x000000f0 -#define ZEND_VM_OP_NUM 0x00000010 -#define ZEND_VM_OP_JMP_ADDR 0x00000020 -#define ZEND_VM_OP_TRY_CATCH 0x00000030 -#define ZEND_VM_OP_THIS 0x00000050 -#define ZEND_VM_OP_NEXT 0x00000060 -#define ZEND_VM_OP_CLASS_FETCH 0x00000070 -#define ZEND_VM_OP_CONSTRUCTOR 0x00000080 -#define ZEND_VM_OP_CONST_FETCH 0x00000090 -#define ZEND_VM_OP_CACHE_SLOT 0x000000a0 -#define ZEND_VM_EXT_VAR_FETCH 0x00010000 -#define ZEND_VM_EXT_ISSET 0x00020000 -#define ZEND_VM_EXT_CACHE_SLOT 0x00040000 -#define ZEND_VM_EXT_ARRAY_INIT 0x00080000 -#define ZEND_VM_EXT_REF 0x00100000 -#define ZEND_VM_EXT_FETCH_REF 0x00200000 -#define ZEND_VM_EXT_DIM_OBJ_WRITE 0x00400000 -#define ZEND_VM_EXT_MASK 0x0f000000 -#define ZEND_VM_EXT_NUM 0x01000000 -#define ZEND_VM_EXT_LAST_CATCH 0x02000000 -#define ZEND_VM_EXT_JMP_ADDR 0x03000000 -#define ZEND_VM_EXT_OP 0x04000000 -#define ZEND_VM_EXT_TYPE 0x07000000 -#define ZEND_VM_EXT_EVAL 0x08000000 -#define ZEND_VM_EXT_TYPE_MASK 0x09000000 -#define ZEND_VM_EXT_SRC 0x0b000000 -#define ZEND_VM_NO_CONST_CONST 0x40000000 -#define ZEND_VM_COMMUTATIVE 0x80000000 -#define ZEND_VM_OP1_FLAGS(flags) (flags & 0xff) -#define ZEND_VM_OP2_FLAGS(flags) ((flags >> 8) & 0xff) - -BEGIN_EXTERN_C() - -ZEND_API const char* ZEND_FASTCALL zend_get_opcode_name(zend_uchar opcode); -ZEND_API uint32_t ZEND_FASTCALL zend_get_opcode_flags(zend_uchar opcode); - -END_EXTERN_C() - -#define ZEND_NOP 0 -#define ZEND_ADD 1 -#define ZEND_SUB 2 -#define ZEND_MUL 3 -#define ZEND_DIV 4 -#define ZEND_MOD 5 -#define ZEND_SL 6 -#define ZEND_SR 7 -#define ZEND_CONCAT 8 -#define ZEND_BW_OR 9 -#define ZEND_BW_AND 10 -#define ZEND_BW_XOR 11 -#define ZEND_POW 12 -#define ZEND_BW_NOT 13 -#define ZEND_BOOL_NOT 14 -#define ZEND_BOOL_XOR 15 -#define ZEND_IS_IDENTICAL 16 -#define ZEND_IS_NOT_IDENTICAL 17 -#define ZEND_IS_EQUAL 18 -#define ZEND_IS_NOT_EQUAL 19 -#define ZEND_IS_SMALLER 20 -#define ZEND_IS_SMALLER_OR_EQUAL 21 -#define ZEND_ASSIGN 22 -#define ZEND_ASSIGN_DIM 23 -#define ZEND_ASSIGN_OBJ 24 -#define ZEND_ASSIGN_STATIC_PROP 25 -#define ZEND_ASSIGN_OP 26 -#define ZEND_ASSIGN_DIM_OP 27 -#define ZEND_ASSIGN_OBJ_OP 28 -#define ZEND_ASSIGN_STATIC_PROP_OP 29 -#define ZEND_ASSIGN_REF 30 -#define ZEND_QM_ASSIGN 31 -#define ZEND_ASSIGN_OBJ_REF 32 -#define ZEND_ASSIGN_STATIC_PROP_REF 33 -#define ZEND_PRE_INC 34 -#define ZEND_PRE_DEC 35 -#define ZEND_POST_INC 36 -#define ZEND_POST_DEC 37 -#define ZEND_PRE_INC_STATIC_PROP 38 -#define ZEND_PRE_DEC_STATIC_PROP 39 -#define ZEND_POST_INC_STATIC_PROP 40 -#define ZEND_POST_DEC_STATIC_PROP 41 -#define ZEND_JMP 42 -#define ZEND_JMPZ 43 -#define ZEND_JMPNZ 44 -#define ZEND_JMPZNZ 45 -#define ZEND_JMPZ_EX 46 -#define ZEND_JMPNZ_EX 47 -#define ZEND_CASE 48 -#define ZEND_CHECK_VAR 49 -#define ZEND_SEND_VAR_NO_REF_EX 50 -#define ZEND_CAST 51 -#define ZEND_BOOL 52 -#define ZEND_FAST_CONCAT 53 -#define ZEND_ROPE_INIT 54 -#define ZEND_ROPE_ADD 55 -#define ZEND_ROPE_END 56 -#define ZEND_BEGIN_SILENCE 57 -#define ZEND_END_SILENCE 58 -#define ZEND_INIT_FCALL_BY_NAME 59 -#define ZEND_DO_FCALL 60 -#define ZEND_INIT_FCALL 61 -#define ZEND_RETURN 62 -#define ZEND_RECV 63 -#define ZEND_RECV_INIT 64 -#define ZEND_SEND_VAL 65 -#define ZEND_SEND_VAR_EX 66 -#define ZEND_SEND_REF 67 -#define ZEND_NEW 68 -#define ZEND_INIT_NS_FCALL_BY_NAME 69 -#define ZEND_FREE 70 -#define ZEND_INIT_ARRAY 71 -#define ZEND_ADD_ARRAY_ELEMENT 72 -#define ZEND_INCLUDE_OR_EVAL 73 -#define ZEND_UNSET_VAR 74 -#define ZEND_UNSET_DIM 75 -#define ZEND_UNSET_OBJ 76 -#define ZEND_FE_RESET_R 77 -#define ZEND_FE_FETCH_R 78 -#define ZEND_EXIT 79 -#define ZEND_FETCH_R 80 -#define ZEND_FETCH_DIM_R 81 -#define ZEND_FETCH_OBJ_R 82 -#define ZEND_FETCH_W 83 -#define ZEND_FETCH_DIM_W 84 -#define ZEND_FETCH_OBJ_W 85 -#define ZEND_FETCH_RW 86 -#define ZEND_FETCH_DIM_RW 87 -#define ZEND_FETCH_OBJ_RW 88 -#define ZEND_FETCH_IS 89 -#define ZEND_FETCH_DIM_IS 90 -#define ZEND_FETCH_OBJ_IS 91 -#define ZEND_FETCH_FUNC_ARG 92 -#define ZEND_FETCH_DIM_FUNC_ARG 93 -#define ZEND_FETCH_OBJ_FUNC_ARG 94 -#define ZEND_FETCH_UNSET 95 -#define ZEND_FETCH_DIM_UNSET 96 -#define ZEND_FETCH_OBJ_UNSET 97 -#define ZEND_FETCH_LIST_R 98 -#define ZEND_FETCH_CONSTANT 99 -#define ZEND_CHECK_FUNC_ARG 100 -#define ZEND_EXT_STMT 101 -#define ZEND_EXT_FCALL_BEGIN 102 -#define ZEND_EXT_FCALL_END 103 -#define ZEND_EXT_NOP 104 -#define ZEND_TICKS 105 -#define ZEND_SEND_VAR_NO_REF 106 -#define ZEND_CATCH 107 -#define ZEND_THROW 108 -#define ZEND_FETCH_CLASS 109 -#define ZEND_CLONE 110 -#define ZEND_RETURN_BY_REF 111 -#define ZEND_INIT_METHOD_CALL 112 -#define ZEND_INIT_STATIC_METHOD_CALL 113 -#define ZEND_ISSET_ISEMPTY_VAR 114 -#define ZEND_ISSET_ISEMPTY_DIM_OBJ 115 -#define ZEND_SEND_VAL_EX 116 -#define ZEND_SEND_VAR 117 -#define ZEND_INIT_USER_CALL 118 -#define ZEND_SEND_ARRAY 119 -#define ZEND_SEND_USER 120 -#define ZEND_STRLEN 121 -#define ZEND_DEFINED 122 -#define ZEND_TYPE_CHECK 123 -#define ZEND_VERIFY_RETURN_TYPE 124 -#define ZEND_FE_RESET_RW 125 -#define ZEND_FE_FETCH_RW 126 -#define ZEND_FE_FREE 127 -#define ZEND_INIT_DYNAMIC_CALL 128 -#define ZEND_DO_ICALL 129 -#define ZEND_DO_UCALL 130 -#define ZEND_DO_FCALL_BY_NAME 131 -#define ZEND_PRE_INC_OBJ 132 -#define ZEND_PRE_DEC_OBJ 133 -#define ZEND_POST_INC_OBJ 134 -#define ZEND_POST_DEC_OBJ 135 -#define ZEND_ECHO 136 -#define ZEND_OP_DATA 137 -#define ZEND_INSTANCEOF 138 -#define ZEND_GENERATOR_CREATE 139 -#define ZEND_MAKE_REF 140 -#define ZEND_DECLARE_FUNCTION 141 -#define ZEND_DECLARE_LAMBDA_FUNCTION 142 -#define ZEND_DECLARE_CONST 143 -#define ZEND_DECLARE_CLASS 144 -#define ZEND_DECLARE_CLASS_DELAYED 145 -#define ZEND_DECLARE_ANON_CLASS 146 -#define ZEND_ADD_ARRAY_UNPACK 147 -#define ZEND_ISSET_ISEMPTY_PROP_OBJ 148 -#define ZEND_HANDLE_EXCEPTION 149 -#define ZEND_USER_OPCODE 150 -#define ZEND_ASSERT_CHECK 151 -#define ZEND_JMP_SET 152 -#define ZEND_UNSET_CV 153 -#define ZEND_ISSET_ISEMPTY_CV 154 -#define ZEND_FETCH_LIST_W 155 -#define ZEND_SEPARATE 156 -#define ZEND_FETCH_CLASS_NAME 157 -#define ZEND_CALL_TRAMPOLINE 158 -#define ZEND_DISCARD_EXCEPTION 159 -#define ZEND_YIELD 160 -#define ZEND_GENERATOR_RETURN 161 -#define ZEND_FAST_CALL 162 -#define ZEND_FAST_RET 163 -#define ZEND_RECV_VARIADIC 164 -#define ZEND_SEND_UNPACK 165 -#define ZEND_YIELD_FROM 166 -#define ZEND_COPY_TMP 167 -#define ZEND_BIND_GLOBAL 168 -#define ZEND_COALESCE 169 -#define ZEND_SPACESHIP 170 -#define ZEND_FUNC_NUM_ARGS 171 -#define ZEND_FUNC_GET_ARGS 172 -#define ZEND_FETCH_STATIC_PROP_R 173 -#define ZEND_FETCH_STATIC_PROP_W 174 -#define ZEND_FETCH_STATIC_PROP_RW 175 -#define ZEND_FETCH_STATIC_PROP_IS 176 -#define ZEND_FETCH_STATIC_PROP_FUNC_ARG 177 -#define ZEND_FETCH_STATIC_PROP_UNSET 178 -#define ZEND_UNSET_STATIC_PROP 179 -#define ZEND_ISSET_ISEMPTY_STATIC_PROP 180 -#define ZEND_FETCH_CLASS_CONSTANT 181 -#define ZEND_BIND_LEXICAL 182 -#define ZEND_BIND_STATIC 183 -#define ZEND_FETCH_THIS 184 -#define ZEND_SEND_FUNC_ARG 185 -#define ZEND_ISSET_ISEMPTY_THIS 186 -#define ZEND_SWITCH_LONG 187 -#define ZEND_SWITCH_STRING 188 -#define ZEND_IN_ARRAY 189 -#define ZEND_COUNT 190 -#define ZEND_GET_CLASS 191 -#define ZEND_GET_CALLED_CLASS 192 -#define ZEND_GET_TYPE 193 -#define ZEND_ARRAY_KEY_EXISTS 194 - -#define ZEND_VM_LAST_OPCODE 194 - -#endif diff --git a/7.4.27/mac/include/php/Zend/zend_vm_trace_handlers.h b/7.4.27/mac/include/php/Zend/zend_vm_trace_handlers.h deleted file mode 100644 index 414d4d5..0000000 --- a/7.4.27/mac/include/php/Zend/zend_vm_trace_handlers.h +++ /dev/null @@ -1,112 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#include "zend_sort.h" - -#define VM_TRACE(op) zend_vm_trace(#op, sizeof(#op)-1); -#define VM_TRACE_START() zend_vm_trace_init(); -#define VM_TRACE_END() zend_vm_trace_finish(); - -static HashTable vm_trace_ht; - -static void zend_vm_trace(const char *op, size_t op_len) -{ - static const char *last = NULL; - static size_t last_len = 0; - char buf[256]; - size_t len; - zval tmp, *zv; - - if (EXPECTED(last)) { - len = last_len + 1 + op_len; - memcpy(buf, last, last_len); - buf[last_len] = ' '; - memcpy(buf + last_len + 1, op, op_len + 1); - zv = zend_hash_str_find(&vm_trace_ht, buf, len); - if (EXPECTED(zv)) { - if (EXPECTED(Z_LVAL_P(zv) < ZEND_LONG_MAX)) { - Z_LVAL_P(zv)++; - } - } else { - ZVAL_LONG(&tmp, 1); - zend_hash_str_add_new(&vm_trace_ht, buf, len, &tmp); - } - } - last = op; - last_len = op_len; -} - -static int zend_vm_trace_compare(const Bucket *p1, const Bucket *p2) -{ - if (Z_LVAL(p1->val) < Z_LVAL(p2->val)) { - return 1; - } else if (Z_LVAL(p1->val) > Z_LVAL(p2->val)) { - return -1; - } else { - return 0; - } -} - -static void zend_vm_trace_finish(void) -{ - zend_string *key; - zval *val; - FILE *f; - - f = fopen("zend_vm_trace.log", "w+"); - if (f) { - zend_hash_sort(&vm_trace_ht, (compare_func_t)zend_vm_trace_compare, 0); - ZEND_HASH_FOREACH_STR_KEY_VAL(&vm_trace_ht, key, val) { - fprintf(f, "%s "ZEND_LONG_FMT"\n", ZSTR_VAL(key), Z_LVAL_P(val)); - } ZEND_HASH_FOREACH_END(); - fclose(f); - } - zend_hash_destroy(&vm_trace_ht); -} - -static void zend_vm_trace_init(void) -{ - FILE *f; - - zend_hash_init(&vm_trace_ht, 0, NULL, NULL, 1); - f = fopen("zend_vm_trace.log", "r"); - if (f) { - char buf[256]; - size_t len; - zval tmp; - - while (!feof(f)) { - if (fgets(buf, sizeof(buf)-1, f)) { - len = strlen(buf); - while (len > 0 && buf[len-1] <= ' ') { - len--; - buf[len] = 0; - } - while (len > 0 && buf[len-1] >= '0' && buf[len-1] <= '9') { - len--; - } - if (len > 1) { - buf[len-1] = 0; - ZVAL_LONG(&tmp, ZEND_STRTOL(buf + len, NULL, 10)); - zend_hash_str_add(&vm_trace_ht, buf, len - 1, &tmp); - } - } - } - fclose(f); - } -} diff --git a/7.4.27/mac/include/php/Zend/zend_vm_trace_map.h b/7.4.27/mac/include/php/Zend/zend_vm_trace_map.h deleted file mode 100644 index 4a46a30..0000000 --- a/7.4.27/mac/include/php/Zend/zend_vm_trace_map.h +++ /dev/null @@ -1,81 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | Zend Engine | - +----------------------------------------------------------------------+ - | Copyright (c) Zend Technologies Ltd. (http://www.zend.com) | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -#include "zend_vm_handlers.h" -#include "zend_sort.h" - -#define GEN_MAP(n, name) do { \ - ZVAL_LONG(&tmp, (zend_long)(uintptr_t)zend_opcode_handlers[n]); \ - zend_hash_str_add(&vm_trace_ht, #name, sizeof(#name) - 1, &tmp); \ - } while (0); - -#define VM_TRACE_START() do { \ - zval tmp; \ - zend_hash_init(&vm_trace_ht, 0, NULL, NULL, 1); \ - VM_HANDLERS(GEN_MAP) \ - zend_vm_trace_init(); \ - } while (0) - -#ifdef _WIN64 -# define ADDR_FMT "%016I64x" -#elif SIZEOF_SIZE_T == 4 -# define ADDR_FMT "%08zx" -#elif SIZEOF_SIZE_T == 8 -# define ADDR_FMT "%016zx" -#else -# error "Unknown SIZEOF_SIZE_T" -#endif - -static HashTable vm_trace_ht; - -static int zend_vm_trace_compare(const Bucket *p1, const Bucket *p2) -{ - if (Z_LVAL(p1->val) > Z_LVAL(p2->val)) { - return 1; - } else if (Z_LVAL(p1->val) < Z_LVAL(p2->val)) { - return -1; - } else { - return 0; - } -} - -static void zend_vm_trace_init(void) -{ - FILE *f; - zend_string *key, *prev_key; - zval *val; - zend_long prev_addr; - - f = fopen("zend_vm.map", "w+"); - if (f) { - zend_hash_sort(&vm_trace_ht, (compare_func_t)zend_vm_trace_compare, 0); - prev_key = NULL; - ZEND_HASH_FOREACH_STR_KEY_VAL(&vm_trace_ht, key, val) { - if (prev_key) { - fprintf(f, ADDR_FMT" "ADDR_FMT" t %s\n", prev_addr, Z_LVAL_P(val) - prev_addr, ZSTR_VAL(prev_key)); - } - prev_key = key; - prev_addr = Z_LVAL_P(val); - } ZEND_HASH_FOREACH_END(); - if (prev_key) { - fprintf(f, ADDR_FMT" "ADDR_FMT" t %s\n", prev_addr, 0, ZSTR_VAL(prev_key)); - } - fclose(f); - } - zend_hash_destroy(&vm_trace_ht); -} diff --git a/7.4.27/mac/include/php/Zend/zend_weakrefs.h b/7.4.27/mac/include/php/Zend/zend_weakrefs.h deleted file mode 100644 index c8a65e2..0000000 --- a/7.4.27/mac/include/php/Zend/zend_weakrefs.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 2.00 of the Zend license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.zend.com/license/2_00.txt. | - | If you did not receive a copy of the Zend license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@zend.com so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: krakjoe@php.net | - +----------------------------------------------------------------------+ -*/ - -#ifndef ZEND_WEAKREFS_H -#define ZEND_WEAKREFS_H - -BEGIN_EXTERN_C() - -extern ZEND_API zend_class_entry *zend_ce_weakref; - -void zend_register_weakref_ce(void); - -void zend_weakrefs_init(); -void zend_weakrefs_shutdown(); - -ZEND_API void zend_weakrefs_notify(zend_object *object); - -END_EXTERN_C() - -#endif - diff --git a/7.4.27/mac/include/php/ext/date/lib/timelib.h b/7.4.27/mac/include/php/ext/date/lib/timelib.h deleted file mode 100644 index 29e95e5..0000000 --- a/7.4.27/mac/include/php/ext/date/lib/timelib.h +++ /dev/null @@ -1,967 +0,0 @@ -/* - * The MIT License (MIT) - * - * Copyright (c) 2015-2019 Derick Rethans - * Copyright (c) 2018 MongoDB, Inc. - * - * Permission is hereby granted, free of charge, to any person obtaining a copy - * of this software and associated documentation files (the "Software"), to deal - * in the Software without restriction, including without limitation the rights - * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell - * copies of the Software, and to permit persons to whom the Software is - * furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice shall be included in - * all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE - * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN - * THE SOFTWARE. - */ - -#ifndef __TIMELIB_H__ -#define __TIMELIB_H__ - -#ifdef HAVE_TIMELIB_CONFIG_H -# include "timelib_config.h" -#endif - -#include -#include -#include -#include - -# ifndef HAVE_INT32_T -# if SIZEOF_INT == 4 -typedef int int32_t; -# elif SIZEOF_LONG == 4 -typedef long int int32_t; -# endif -# endif - -# ifndef HAVE_UINT32_T -# if SIZEOF_INT == 4 -typedef unsigned int uint32_t; -# elif SIZEOF_LONG == 4 -typedef unsigned long int uint32_t; -# endif -# endif - -#ifdef _WIN32 -# if _MSC_VER >= 1600 -# include -# endif -# ifndef SIZEOF_INT -# define SIZEOF_INT 4 -# endif -# ifndef SIZEOF_LONG -# define SIZEOF_LONG 4 -# endif -# ifndef int32_t -typedef __int32 int32_t; -# endif -# ifndef uint32_t -typedef unsigned __int32 uint32_t; -# endif -# ifndef int64_t -typedef __int64 int64_t; -# endif -# ifndef uint64_t -typedef unsigned __int64 uint64_t; -# endif -# ifndef PRId32 -# define PRId32 "I32d" -# endif -# ifndef PRIu32 -# define PRIu32 "I32u" -# endif -# ifndef PRId64 -# define PRId64 "I64d" -# endif -# ifndef PRIu64 -# define PRIu64 "I64u" -# endif -# ifndef INT32_MAX -#define INT32_MAX _I32_MAX -# endif -# ifndef INT32_MIN -#define INT32_MIN ((int32_t)_I32_MIN) -# endif -# ifndef UINT32_MAX -#define UINT32_MAX _UI32_MAX -# endif -# ifndef INT64_MIN -#define INT64_MIN ((int64_t)_I64_MIN) -# endif -# ifndef INT64_MAX -#define INT64_MAX _I64_MAX -# endif -# ifndef UINT64_MAX -#define UINT64_MAX _UI64_MAX -# endif -#endif - -#if (defined(__x86_64__) || defined(__LP64__) || defined(_LP64) || defined(_WIN64)) && !defined(TIMELIB_FORCE_LONG32) -typedef int64_t timelib_long; -typedef uint64_t timelib_ulong; -# define TIMELIB_LONG_MAX INT64_MAX -# define TIMELIB_LONG_MIN INT64_MIN -# define TIMELIB_ULONG_MAX UINT64_MAX -# define TIMELIB_LONG_FMT "%" PRId64 -# define TIMELIB_ULONG_FMT "%" PRIu64 -#else -typedef int32_t timelib_long; -typedef uint32_t timelib_ulong; -# define TIMELIB_LONG_MAX INT32_MAX -# define TIMELIB_LONG_MIN INT32_MIN -# define TIMELIB_ULONG_MAX UINT32_MAX -# define TIMELIB_LONG_FMT "%" PRId32 -# define TIMELIB_ULONG_FMT "%" PRIu32 -#endif - -#if defined(_MSC_VER) -typedef uint64_t timelib_ull; -typedef int64_t timelib_sll; -# define TIMELIB_LL_CONST(n) n ## i64 -#else -typedef unsigned long long timelib_ull; -typedef signed long long timelib_sll; -# define TIMELIB_LL_CONST(n) n ## ll -#endif - -typedef struct _ttinfo ttinfo; -typedef struct _tlinfo tlinfo; - -typedef struct _tlocinfo -{ - char country_code[3]; - double latitude; - double longitude; - char *comments; -} tlocinfo; - -typedef struct _timelib_tzinfo -{ - char *name; - struct { - uint32_t ttisgmtcnt; - uint32_t ttisstdcnt; - uint32_t leapcnt; - uint32_t timecnt; - uint32_t typecnt; - uint32_t charcnt; - } _bit32; - struct { - uint64_t ttisgmtcnt; - uint64_t ttisstdcnt; - uint64_t leapcnt; - uint64_t timecnt; - uint64_t typecnt; - uint64_t charcnt; - } bit64; - - int64_t *trans; - unsigned char *trans_idx; - - ttinfo *type; - char *timezone_abbr; - - tlinfo *leap_times; - unsigned char bc; - tlocinfo location; -} timelib_tzinfo; - -typedef struct _timelib_rel_time { - timelib_sll y, m, d; /* Years, Months and Days */ - timelib_sll h, i, s; /* Hours, mInutes and Seconds */ - timelib_sll us; /* Microseconds */ - - int weekday; /* Stores the day in 'next monday' */ - int weekday_behavior; /* 0: the current day should *not* be counted when advancing forwards; 1: the current day *should* be counted */ - - int first_last_day_of; - int invert; /* Whether the difference should be inverted */ - timelib_sll days; /* Contains the number of *days*, instead of Y-M-D differences */ - - struct { - unsigned int type; - timelib_sll amount; - } special; - - unsigned int have_weekday_relative, have_special_relative; -} timelib_rel_time; - -typedef struct _timelib_time_offset { - int32_t offset; - unsigned int leap_secs; - unsigned int is_dst; - char *abbr; - timelib_sll transition_time; -} timelib_time_offset; - -typedef struct _timelib_time { - timelib_sll y, m, d; /* Year, Month, Day */ - timelib_sll h, i, s; /* Hour, mInute, Second */ - timelib_sll us; /* Microseconds */ - int z; /* UTC offset in seconds */ - char *tz_abbr; /* Timezone abbreviation (display only) */ - timelib_tzinfo *tz_info; /* Timezone structure */ - signed int dst; /* Flag if we were parsing a DST zone */ - timelib_rel_time relative; - - timelib_sll sse; /* Seconds since epoch */ - - unsigned int have_time, have_date, have_zone, have_relative, have_weeknr_day; - - unsigned int sse_uptodate; /* !0 if the sse member is up to date with the date/time members */ - unsigned int tim_uptodate; /* !0 if the date/time members are up to date with the sse member */ - unsigned int is_localtime; /* 1 if the current struct represents localtime, 0 if it is in GMT */ - unsigned int zone_type; /* 1 time offset, - * 3 TimeZone identifier, - * 2 TimeZone abbreviation */ -} timelib_time; - -typedef struct _timelib_abbr_info { - timelib_sll utc_offset; - char *abbr; - int dst; -} timelib_abbr_info; - -#define TIMELIB_WARN_MASK 0x1ff -#define TIMELIB_ERR_MASK 0x2ff - -#define TIMELIB_WARN_DOUBLE_TZ 0x101 -#define TIMELIB_WARN_INVALID_TIME 0x102 -#define TIMELIB_WARN_INVALID_DATE 0x103 -#define TIMELIB_WARN_TRAILING_DATA 0x11a - -#define TIMELIB_ERR_DOUBLE_TZ 0x201 -#define TIMELIB_ERR_TZID_NOT_FOUND 0x202 -#define TIMELIB_ERR_DOUBLE_TIME 0x203 -#define TIMELIB_ERR_DOUBLE_DATE 0x204 -#define TIMELIB_ERR_UNEXPECTED_CHARACTER 0x205 -#define TIMELIB_ERR_EMPTY_STRING 0x206 -#define TIMELIB_ERR_UNEXPECTED_DATA 0x207 -#define TIMELIB_ERR_NO_TEXTUAL_DAY 0x208 -#define TIMELIB_ERR_NO_TWO_DIGIT_DAY 0x209 -#define TIMELIB_ERR_NO_THREE_DIGIT_DAY_OF_YEAR 0x20a -#define TIMELIB_ERR_NO_TWO_DIGIT_MONTH 0x20b -#define TIMELIB_ERR_NO_TEXTUAL_MONTH 0x20c -#define TIMELIB_ERR_NO_TWO_DIGIT_YEAR 0x20d -#define TIMELIB_ERR_NO_FOUR_DIGIT_YEAR 0x20e -#define TIMELIB_ERR_NO_TWO_DIGIT_HOUR 0x20f -#define TIMELIB_ERR_HOUR_LARGER_THAN_12 0x210 -#define TIMELIB_ERR_MERIDIAN_BEFORE_HOUR 0x211 -#define TIMELIB_ERR_NO_MERIDIAN 0x212 -#define TIMELIB_ERR_NO_TWO_DIGIT_MINUTE 0x213 -#define TIMELIB_ERR_NO_TWO_DIGIT_SECOND 0x214 -#define TIMELIB_ERR_NO_SIX_DIGIT_MICROSECOND 0x215 -#define TIMELIB_ERR_NO_SEP_SYMBOL 0x216 -#define TIMELIB_ERR_EXPECTED_ESCAPE_CHAR 0x217 -#define TIMELIB_ERR_NO_ESCAPED_CHAR 0x218 -#define TIMELIB_ERR_WRONG_FORMAT_SEP 0x219 -#define TIMELIB_ERR_TRAILING_DATA 0x21a -#define TIMELIB_ERR_DATA_MISSING 0x21b -#define TIMELIB_ERR_NO_THREE_DIGIT_MILLISECOND 0x21c -#define TIMELIB_ERR_NO_FOUR_DIGIT_YEAR_ISO 0x21d -#define TIMELIB_ERR_NO_TWO_DIGIT_WEEK 0x21e -#define TIMELIB_ERR_INVALID_WEEK 0x21f -#define TIMELIB_ERR_NO_DAY_OF_WEEK 0x220 -#define TIMELIB_ERR_INVALID_DAY_OF_WEEK 0x221 -#define TIMELIB_ERR_INVALID_SPECIFIER 0x222 -#define TIMELIB_ERR_INVALID_TZ_OFFSET 0x223 -#define TIMELIB_ERR_FORMAT_LITERAL_MISMATCH 0x224 -#define TIMELIB_ERR_MIX_ISO_WITH_NATURAL 0x225 - -#define TIMELIB_ZONETYPE_OFFSET 1 -#define TIMELIB_ZONETYPE_ABBR 2 -#define TIMELIB_ZONETYPE_ID 3 - -typedef struct _timelib_error_message { - int error_code; - int position; - char character; - char *message; -} timelib_error_message; - -typedef struct _timelib_error_container { - timelib_error_message *error_messages; - timelib_error_message *warning_messages; - int error_count; - int warning_count; -} timelib_error_container; - -typedef struct _timelib_tz_lookup_table { - char *name; - int type; - float gmtoffset; - char *full_tz_name; -} timelib_tz_lookup_table; - -typedef struct _timelib_tzdb_index_entry { - char *id; - unsigned int pos; -} timelib_tzdb_index_entry; - -typedef struct _timelib_tzdb { - char *version; - int index_size; - const timelib_tzdb_index_entry *index; - const unsigned char *data; -} timelib_tzdb; - -#ifndef timelib_malloc -# define timelib_malloc malloc -# define timelib_realloc realloc -# define timelib_calloc calloc -# define timelib_strdup strdup -# define timelib_free free -#endif - -#define TIMELIB_VERSION 201804 -#define TIMELIB_EXTENDED_VERSION 20180401 -#define TIMELIB_ASCII_VERSION "2018.04" - -#define TIMELIB_NONE 0x00 -#define TIMELIB_OVERRIDE_TIME 0x01 -#define TIMELIB_NO_CLONE 0x02 - -#define TIMELIB_UNSET -99999 - -/* An entry for each of these error codes is also in the - * timelib_error_messages array in timelib.c */ -#define TIMELIB_ERROR_NO_ERROR 0x00 -#define TIMELIB_ERROR_CANNOT_ALLOCATE 0x01 -#define TIMELIB_ERROR_CORRUPT_TRANSITIONS_DONT_INCREASE 0x02 -#define TIMELIB_ERROR_CORRUPT_NO_64BIT_PREAMBLE 0x03 -#define TIMELIB_ERROR_CORRUPT_NO_ABBREVIATION 0x04 -#define TIMELIB_ERROR_UNSUPPORTED_VERSION 0x05 -#define TIMELIB_ERROR_NO_SUCH_TIMEZONE 0x06 - -#ifdef __cplusplus -extern "C" { -#endif - -typedef enum _timelib_format_specifier_code { - TIMELIB_FORMAT_ALLOW_EXTRA_CHARACTERS = 0, - TIMELIB_FORMAT_ANY_SEPARATOR, - TIMELIB_FORMAT_DAY_TWO_DIGIT, - TIMELIB_FORMAT_DAY_TWO_DIGIT_PADDED, - TIMELIB_FORMAT_DAY_OF_WEEK_ISO, - TIMELIB_FORMAT_DAY_OF_WEEK, - TIMELIB_FORMAT_DAY_OF_YEAR, - TIMELIB_FORMAT_DAY_SUFFIX, - TIMELIB_FORMAT_END, - TIMELIB_FORMAT_EPOCH_SECONDS, - TIMELIB_FORMAT_ESCAPE, - TIMELIB_FORMAT_HOUR_TWO_DIGIT_12_MAX, - TIMELIB_FORMAT_HOUR_TWO_DIGIT_12_MAX_PADDED, - TIMELIB_FORMAT_HOUR_TWO_DIGIT_24_MAX, - TIMELIB_FORMAT_HOUR_TWO_DIGIT_24_MAX_PADDED, - TIMELIB_FORMAT_LITERAL, - TIMELIB_FORMAT_MERIDIAN, - TIMELIB_FORMAT_MICROSECOND_SIX_DIGIT, - TIMELIB_FORMAT_MILLISECOND_THREE_DIGIT, - TIMELIB_FORMAT_MINUTE_TWO_DIGIT, - TIMELIB_FORMAT_MONTH_TWO_DIGIT, - TIMELIB_FORMAT_MONTH_TWO_DIGIT_PADDED, - TIMELIB_FORMAT_RANDOM_CHAR, - TIMELIB_FORMAT_RESET_ALL, - TIMELIB_FORMAT_RESET_ALL_WHEN_NOT_SET, - TIMELIB_FORMAT_SECOND_TWO_DIGIT, - TIMELIB_FORMAT_SEPARATOR, - TIMELIB_FORMAT_SKIP_TO_SEPARATOR, - TIMELIB_FORMAT_TEXTUAL_DAY_3_LETTER, - TIMELIB_FORMAT_TEXTUAL_DAY_FULL, - TIMELIB_FORMAT_TEXTUAL_MONTH_3_LETTER, - TIMELIB_FORMAT_TEXTUAL_MONTH_FULL, - TIMELIB_FORMAT_TIMEZONE_OFFSET, - TIMELIB_FORMAT_TIMEZONE_OFFSET_MINUTES, - TIMELIB_FORMAT_WEEK_OF_YEAR_ISO, - TIMELIB_FORMAT_WEEK_OF_YEAR, - TIMELIB_FORMAT_WHITESPACE, - TIMELIB_FORMAT_YEAR_TWO_DIGIT, - TIMELIB_FORMAT_YEAR_FOUR_DIGIT, - TIMELIB_FORMAT_YEAR_ISO -} timelib_format_specifier_code; - -typedef struct _timelib_format_specifier { - char specifier; - timelib_format_specifier_code code; -} timelib_format_specifier; - -typedef struct _timelib_format_config { - const timelib_format_specifier *format_map; - /* Format speciifiers must be preceded by 'prefix_char' if not '\0'. */ - char prefix_char; -} timelib_format_config; - -/* Function pointers */ -typedef timelib_tzinfo* (*timelib_tz_get_wrapper)(char *tzname, const timelib_tzdb *tzdb, int *error_code); - -/* From dow.c */ -/* Calculates the day of the week from y, m, and d. 0=Sunday..6=Saturday */ -timelib_sll timelib_day_of_week(timelib_sll y, timelib_sll m, timelib_sll d); - -/* Calculates the day of the ISO week from y, m, and d. 1=Monday, 7=Sunday */ -timelib_sll timelib_iso_day_of_week(timelib_sll y, timelib_sll m, timelib_sll d); - -/* Calculates the day of the year according to y-m-d. 0=Jan 1st..364/365=Dec - * 31st */ -timelib_sll timelib_day_of_year(timelib_sll y, timelib_sll m, timelib_sll d); - -/* Calculates the day of the year according to y-w-dow. 0..364/365 */ -timelib_sll timelib_daynr_from_weeknr(timelib_sll iy, timelib_sll iw, timelib_sll id); - -/* Calculates the number of days in month m for year y. 28..31 */ -timelib_sll timelib_days_in_month(timelib_sll y, timelib_sll m); - -/* Calculates the ISO year and week from y, m, and d, into iw and iy */ -void timelib_isoweek_from_date(timelib_sll y, timelib_sll m, timelib_sll d, timelib_sll *iw, timelib_sll *iy); - -/* Calculates the ISO year, week, and day of week from y, m, and d, into iy, - * iw, and id */ -void timelib_isodate_from_date(timelib_sll y, timelib_sll m, timelib_sll d, timelib_sll *iy, timelib_sll *iw, timelib_sll *id); - -/* Calculates the year, month, and day from iy, iw, and iw, into y, m, and d */ -void timelib_date_from_isodate(timelib_sll iy, timelib_sll iw, timelib_sll id, timelib_sll *y, timelib_sll *m, timelib_sll *d); - -/* Returns true if h, i and s fit in the range 00:00:00..23:59:59, false - * otherwise */ -int timelib_valid_time(timelib_sll h, timelib_sll i, timelib_sll s); - -/* Returns true if m fits in the range 1..12, and d fits in the range - * 1.. for year y */ -int timelib_valid_date(timelib_sll y, timelib_sll m, timelib_sll d); - -/* From parse_date.re */ - -/* Parses the date/time string in 's' with length 'len' into the constituent - * parts of timelib_time*. - * - * Depending on the contents of the string 's', not all elements might be - * filled. You can check whether a specific element has been parsed by - * comparing with the TIMELIB_UNSET define. - * - * If errors occur, this function keeps already parsed elements in the - * returned timelib_time* value. - * - * If the **errors points to a timelib_error_container variable, warnings - * and errors will be recorded. You are responsible for freeing the stored - * information with timelib_error_container_dtor(). To see whether errors have - * occurred, inspect errors->errors_count. To see whether warnings have occurred, - * inspect errors->warnings_count. - * - * The returned timelib_time* value is dynamically allocated and should be - * freed with timelib_time_dtor(). - */ -timelib_time *timelib_strtotime(char *s, size_t len, timelib_error_container **errors, const timelib_tzdb *tzdb, timelib_tz_get_wrapper tz_get_wrapper); - -/* Parses the date/time string in 's' with length 'len' into the constituent - * parts of timelib_time* according to the format in 'format'. - * - * Depending on the contents of the string 's', not all elements might be - * filled. You can check whether a specific element has been parsed by - * comparing with the TIMELIB_UNSET define. - * - * If errors occur, this function keeps already parsed elements in the - * returned timelib_time* value. - * - * If the **errors points to a timelib_error_container variable, warnings - * and errors will be recorded. You are responsible for freeing the stored - * information with timelib_error_container_dtor(). To see whether errors have - * occurred, inspect errors->errors_count. To see whether warnings have occurred, - * inspect errors->warnings_count. - * - * The returned timelib_time* value is dynamically allocated and should be - * freed with timelib_time_dtor(). - */ -timelib_time *timelib_parse_from_format(char *format, char *s, size_t len, timelib_error_container **errors, const timelib_tzdb *tzdb, timelib_tz_get_wrapper tz_get_wrapper); - -/* Parses the date/time string in 's' with length 'len' into the constituent - * parts of timelib_time* according to the format in 'format' with format - * specifier configuration 'format_config'. - * - * 'format_map' is an array of pairs, with the first element being the format - * specifier as a character and the second element corresponds to the - * representation of the specifier from the enum list - * 'timelib_format_specifier_code'. - * - * Note: 'format_map' must be terminated with specifier '\0' to indicate to the - * parser that there are no more format specifiers in the list. - */ -timelib_time *timelib_parse_from_format_with_map(char *format, char *s, size_t len, timelib_error_container **errors, const timelib_tzdb *tzdb, timelib_tz_get_wrapper tz_get_wrapper, const timelib_format_config* format_config); - -/* Fills the gaps in the parsed timelib_time with information from the reference date/time in 'now' - * - * If any of the 'parsed' y, m, d, h, i or s parameters is unset (TIMELIB_UNSET): - * - if microtime (us) is unset, then the us of the parsed time is set to 0. - * - else if microtime (us) is unset and 'now'->'us' is set, use it, otherwise use 0. - * - * For either of the 'parsed' y, m, d, h, i, s, z (utc offset in seconds) or - * dst is unset, set it to the corresponding value in 'now' if set, otherwise - * set it to 0. - * - * It duplicates tz_abbr if unset in 'parsed' but set in 'now'. - * - * It duplicates tz_info if unset in 'parsed', but set in 'now' unless - * TIMELIB_NO_CLONE is passed, in which case only the pointer in 'parsed' is - * set to 'now'. - * - * If the option TIMELIB_OVERRIDE_TIME is passed and the parsed date/time has - * no time portion, the function will ignore the time aspect in 'now' and - * instead fill it with zeros. - */ -void timelib_fill_holes(timelib_time *parsed, timelib_time *now, int options); - -/* Tries to convert a time zone abbreviation, gmtoffset and/or isdst flag - * combination to a time zone identifier. - * - * If 'abbr' is either 'utc' or 'gmt' (case insensitve) then "UTC" is - * returned. - * - * It first uses the data in the timezonemap.h file to find a matching - * abbreviation/GMT offset combination. If not found, it uses the data in - * fallbackmap.h to match only the GMT offset/isdst flag to try to find a - * match. If nothing is found, NULL is returned. - * - * The returned char* is not duplicated, and should not be freed. - */ -char *timelib_timezone_id_from_abbr(const char *abbr, timelib_long gmtoffset, int isdst); - -/* Returns an array of known time zone abbreviations - * - * This file is generated from the time zone database through the - * gettzmapping.php scripts, which requires that an up-to-date time zone - * database is used with the PHP binary that runs the script. - * - * Each item in the returned list contains the abbreviation, a flag whether - * it's an abbreviation used with DST, the UTC offset in seconds, and the name - * of the time zone identifier that this abbreviation belongs to. - * - * The order for each specific abbreviation is controlled through the - * preference list in the gettzmapping.php script. Time zones that match the - * pattern ±\d{2,4} are excluded - */ -const timelib_tz_lookup_table *timelib_timezone_abbreviations_list(void); - -/** - * DEPRECATED, but still used by PHP. - */ -timelib_long timelib_parse_zone(char **ptr, int *dst, timelib_time *t, int *tz_not_found, const timelib_tzdb *tzdb, timelib_tz_get_wrapper tz_wrapper); - -/* From parse_iso_intervals.re */ - -/** - * Parses a subset of an ISO 8601 intervals specification string into its - * constituent parts. - * - * If the **errors points to a timelib_error_container variable, warnings - * and errors will be recorded. You are responsible for freeing the stored - * information with timelib_error_container_dtor(). To see whether errors have - * occurred, inspect errors->errors_count. To see whether warnings have occurred, - * inspect errors->warnings_count. - */ -void timelib_strtointerval(char *s, size_t len, - timelib_time **begin, timelib_time **end, - timelib_rel_time **period, int *recurrences, - timelib_error_container **errors); - - -/* From tm2unixtime.c */ - -/** - * Uses the y/m/d/h/i/s fields to calculate and store the equivalent timestamp - * in the sse field. - * - * It uses the time zone information associated with 'time' to account for the - * right UTC offset and/or DST rules. You can associate time zone information - * with the timelib_set_timezone_* functions (see below). - * - * If the type is 'TIMELIB_ZONETYPE_ID' and there is no associated tzinfo, it - * will use the second argument 'tzi' to provide the rules necessary to - * calculate the right timestamp. - */ -void timelib_update_ts(timelib_time* time, timelib_tzinfo* tzi); - -/** - * Takes the information from the y/m/d/h/i/s fields and makes sure their - * values are in the right range. - * - * If a value under- or overflows it will adjust the larger measure up (or - * down). It also takes into account leap days. - */ -void timelib_do_normalize(timelib_time *base); - -/** - * Takes the information from the y/m/d/h/i/s fields of 'rt' and makes sure - * their values are in the right range. - * - * If a value under- or overflows it will adjust the larger measure up (or - * down). As this function operates on a *relative date/time*, it also takes - * into account leap days and correctly accounts for the difference depending - * on the base date/time in 'base'. - */ -void timelib_do_rel_normalize(timelib_time *base, timelib_rel_time *rt); - -/* From unixtime2tm.c */ - -/** - * Takes the unix timestamp in seconds from 'ts' and populates the y/m/d/h/i/s - * fields of 'tm' without taking time zones into account - */ -void timelib_unixtime2gmt(timelib_time* tm, timelib_sll ts); - -/** - * Takes the Unix timestamp from 'ts', and calculates the y/m/d/h/i/s fields - * according to the time zone information attached to 'tm'. - */ -void timelib_unixtime2local(timelib_time *tm, timelib_sll ts); - -/** - * Takes the Unix timestamp stored in 'tm', and calculates the y/m/d/h/i/s - * fields according to the time zone information attached to 'tm'. - */ -void timelib_update_from_sse(timelib_time *tm); - -/** - * Attaches the UTC offset as time zone information to 't'. - * - * 'utc_offset' is in seconds East of UTC. - */ -void timelib_set_timezone_from_offset(timelib_time *t, timelib_sll utc_offset); - -/** - * Attaches the information from 'abbr_info' as time zone information to 't'. - * - * The timelib_abbr_info struct contains an abbreviation ('abbr') which string - * value is duplicated, as well as a 'utc_offset' and 'dst' flag. It only - * supports a 'dst' change over of 1 hour. - */ -void timelib_set_timezone_from_abbr(timelib_time *t, timelib_abbr_info abbr_info); - -/** - * Attaches the time zone information in 'tz' to to 't'. - * - * It fetches the right UTC offset that is currently stored in the time - * stamp field in 't' ('sse'), and assigns that to the 'z' field and 'dst' - * field (whether DST is in effect at the time). It also sets the current - * abbreviation to the 'tz_addr' field, making sure that if a value was already - * set it was freed. - * - * The time zone information in 'tz' is *not* duplicated into the 't' field so - * it should not be freed until all timelib_time* variables have been freed as - * well. - */ -void timelib_set_timezone(timelib_time *t, timelib_tzinfo *tz); - -/* From parse_tz.c */ - -/** - * Returns whether the time zone ID 'timezone' is available in the time zone - * database as pointed to be 'tzdb'. - */ -int timelib_timezone_id_is_valid(char *timezone, const timelib_tzdb *tzdb); - -/** - * Converts the binary stored time zone information from 'tzdb' for the time - * zone 'timeozne' into a structure the library can use for calculations. - * - * The function can be used on both timelib_builtin_db as well as a time zone - * db as opened by timelib_zoneinfo. - * The function will return null upon failure, and also set an error code - * through 'error_code'. 'error_code' must not be a null pointer. The error - * code is one of the TIMELIB_ERROR_* constants as listed above. These error - * constants can be converted into a string by timelib_get_error_message. - * - * This function allocates memory for the new time zone structure, which must - * be freed after use. Although it is recommended that a cache of each used - * time zone is kept. - */ -timelib_tzinfo *timelib_parse_tzfile(char *timezone, const timelib_tzdb *tzdb, int *error_code); - -/** - * Frees up the resources allocated by 'timelib_parse_tzfile'. - */ -void timelib_tzinfo_dtor(timelib_tzinfo *tz); - -/** - * Deep-clones a timelib_tzinfo structure. - * - * This allocates resources that need to be freed with 'timelib_tzinfo_dtor' - */ -timelib_tzinfo* timelib_tzinfo_clone(timelib_tzinfo *tz); - -/** - * Returns whether DST is active with time zone 'tz' for the time stamp 'ts'. - * - * Returns 0 if DST is not active, 1 if DST is active, or -1 if no transitions - * were available through 'tz'. - */ -int timelib_timestamp_is_in_dst(timelib_sll ts, timelib_tzinfo *tz); - -/** - * Returns offset information with time zone 'tz' for the time stamp 'ts'. - * - * The returned information contains: the offset in seconds East of UTC (in - * 'offset'), whether DST is active ('is_dst'), what the current time zone - * abbreviation is ('abbr') and the transition time that got to this state (in - * 'transition_time'); - */ -timelib_time_offset *timelib_get_time_zone_info(timelib_sll ts, timelib_tzinfo *tz); - -/** - * Returns the UTC offset currently applicable for the information stored in 't'. - * - * The value returned is the UTC offset in seconds East. - */ -timelib_sll timelib_get_current_offset(timelib_time *t); - -/** - * Displays debugging information about the time zone information in 'tz'. - */ -void timelib_dump_tzinfo(timelib_tzinfo *tz); - -/** - * Returns a pointer to the built-in time zone database. - * - * You must *not* free the returned pointer as it is part of the text segment. - */ -const timelib_tzdb *timelib_builtin_db(void); - -/** - * Returns a pointer to the start of an array containing a list of timezone identifiers. - * - * The amount of entries in the array is returned through the 'count' OUT parameter. - * - * Each entry contains the time zone ID ('id' field), and the position within the time zone - * information ('pos' field). The pos field should not be used. - */ -const timelib_tzdb_index_entry *timelib_timezone_identifiers_list(const timelib_tzdb *tzdb, int *count); - -/* From parse_zoneinfo.c */ - -/** - * Scans the directory and subdirectories of 'directory' for valid time zone files and builds - * a time zone database out of these files. - * - * Typically, the directory should point to '/usr/share/zoneinfo'. - * - * Unlike 'timelib_builtin_db', the return value of this function must be freed - * with the 'timelib_zoneinfo_dtor' function. - */ -timelib_tzdb *timelib_zoneinfo(char *directory); - -/** - * Frees up the resources as created through 'timelib_zoneinfo'. - * - * This function must be used to free up all the resources that have been - * allocated while calling 'timelib_zoneinfo'. - */ -void timelib_zoneinfo_dtor(timelib_tzdb *tzdb); - -/* From timelib.c */ - -/** - * Returns a static string containing an error message belonging to a specific - * error code. - */ -const char *timelib_get_error_message(int error_code); - -/** - * Allocates resources for the relative time structure. - * - * Must be freed with 'timelib_rel_time_dtor'. - */ -timelib_rel_time* timelib_rel_time_ctor(void); - -/** - * Frees up the resources as allocated through 'timelib_rel_time_ctor'. - */ -void timelib_rel_time_dtor(timelib_rel_time* t); - -/** - * Creates a new timelib_rel_time resource and copies over the information - * from 'tz'. - * - * Must be freed with 'timelib_rel_time_dtor'. - */ -timelib_rel_time* timelib_rel_time_clone(timelib_rel_time *tz); - -/** - * Allocates resources for the time structure. - * - * Must be freed with 'timelib_time_dtor'. - */ -timelib_time* timelib_time_ctor(void); - -/** - * Frees up the resources as allocated through 'timelib_time_ctor'. - */ -void timelib_time_dtor(timelib_time* t); - -/** - * Creates a new timelib_time resource and copies over the information - * from 'orig'. - * - * Must be freed with 'timelib_time_dtor'. - */ -timelib_time* timelib_time_clone(timelib_time* orig); - -/** - * Compares two timelib_time structures and returns which one is earlier in - * time. - * - * To decide which comes earlier it uses the 'sse' (Seconds Since Epoch) and - * 'us' (microseconds) fields. - * - * Returns -1 if t1 < t2, 0 if t1 == t2, and -1 if t1 > t2. - */ -int timelib_time_compare(timelib_time *t1, timelib_time *t2); - -/** - * Allocates resources for the time offset structure. - * - * Must be freed with 'timelib_time_offset_dtor'. - */ -timelib_time_offset* timelib_time_offset_ctor(void); - -/** - * Frees up the resources as allocated through 'timelib_time_offset_ctor'. - */ -void timelib_time_offset_dtor(timelib_time_offset* t); - -/** - * Frees up the resources allocated while converting strings to timelib_time - * structures with the timelib_strtotime and timelib_strtointerval functions. - */ -void timelib_error_container_dtor(timelib_error_container *errors); - -/** - * Converts the 'sse' value of 'd' to a timelib_long type. - * - * If the value fits in the TIMELIB_LONG_MIN and TIMELIB_LONG_MAX range, the - * value is cast to (timelib_long) and returned. If *error is not a NULL - * pointer, it will be set to 0. - * - * If the value does *not* fit in the range, the function returns 0 and if - * *error is not a NULL pointer, it will be set to 1. - * - * timelib_long is a 32 bit signed long integer on 32 bit platforms, and a 64 - * bit signed long long integer on 64 bit platforms. In other words, it makes - * sure that the value in 'sse' (which is always a signed long long 64 bit - * integer) can be used safely outside of the library. - */ -timelib_long timelib_date_to_int(timelib_time *d, int *error); - -/** - * Displays debugging information about the date/time information stored in 'd'. - * - * 'options' is a bit field, where: - * - 1 controls whether the relative time portion is shown. - * - 2 controls whether the zone type is shown. - */ -void timelib_dump_date(timelib_time *d, int options); - -/** - * Displays debugging information about the relative time information stored - * in 'd'. - */ -void timelib_dump_rel_time(timelib_rel_time *d); - -/** - * Converts a decimal hour into hour/min/sec components - */ -void timelib_decimal_hour_to_hms(double h, int *hour, int *min, int *sec); - -/** - * Converts hour/min/sec values into a decimal hour - */ -void timelib_hms_to_decimal_hour(int hour, int min, int sec, double *h); - -/* from astro.c */ - -/** - * Converts the Unix Epoch time stamp 'ts' to a Julian Day - * - * The value returned is the number of whole days since -4714-11-24T12:00:00 UTC - * (in the proleptic Gregorian calendar): - * https://en.wikipedia.org/wiki/Julian_day - */ -double timelib_ts_to_julianday(timelib_sll ts); - -/** - * Converts the Unix Epoch time stamp 'ts' to the J2000 epoch - * - * The value returned is the number of whole days since 2000-01-01T12:00:00 - * UTC: https://en.wikipedia.org/wiki/Epoch_(astronomy)#Julian_years_and_J2000 - */ -double timelib_ts_to_j2000(timelib_sll ts); - -/** - * Calculates when the Sun is above a certain latitude. - * - * Parameters: - * - time: A timelib_time time describing that needs to specific midnight for a - * specific day. - * - lon: The longitude of the observer (East positive, West negative). - * - lat: The latitude of the observer (North positive, South negative). - * - altit: The altitude. Set to -35/60 for rise/set, -6 for civil twilight, - * -12 for nautical, and -18 for astronomical twilight. - * - upper_limb: set to non-zero for rise/set calculations, and 0 for twilight - * calculations. - * - * Out Parameters: - * - h_rise: The decimal hour when the Sun rises - * - h_set: The decimal hour when the Sun sets - * - ts_rise: The Unix timestamp of the Sun rising - * - ts_set: The Unix timestamp of the Sun setting - * - ts_transit: The Unix timestmap of the Sun transitting through South - * - * Return Values: - * - 0: The Sun rises and sets. - * - +1: The Sun is always above the horizon. (ts_rise is set to ts_transit - - * (12 * 3600); ts_set is set to ts_transit + (12 * 3600). - * - -1: The Sun is awlays below the horizon. (ts_rise and ts_set are set - * to ts_transit) - */ -int timelib_astro_rise_set_altitude(timelib_time *time, double lon, double lat, double altit, int upper_limb, double *h_rise, double *h_set, timelib_sll *ts_rise, timelib_sll *ts_set, timelib_sll *ts_transit); - -/* from interval.c */ - -/** - * Calculates the difference between two times - * - * The result is a timelib_rel_time structure that describes how you can - * convert from 'one' to 'two' with 'timelib_add'. This does *not* necessarily - * mean that you can go from 'two' to 'one' by using 'timelib_sub' due to the - * way months and days are calculated. - */ -timelib_rel_time *timelib_diff(timelib_time *one, timelib_time *two); - -/** - * Adds the relative time information 'interval' to the base time 't'. - * - * This can be a relative time as created by 'timelib_diff', but also by more - * complex statements such as "next workday". - */ -timelib_time *timelib_add(timelib_time *t, timelib_rel_time *interval); - -/** - * Subtracts the relative time information 'interval' to the base time 't'. - * - * This can be a relative time as created by 'timelib_diff'. Unlike with - * 'timelib_add', this does not support more complex statements such as "next - * workday". - */ -timelib_time *timelib_sub(timelib_time *t, timelib_rel_time *interval); - -#ifdef __cplusplus -} /* extern "C" */ -#endif - -#endif diff --git a/7.4.27/mac/include/php/ext/date/lib/timelib_config.h b/7.4.27/mac/include/php/ext/date/lib/timelib_config.h deleted file mode 100644 index 443ff5e..0000000 --- a/7.4.27/mac/include/php/ext/date/lib/timelib_config.h +++ /dev/null @@ -1,14 +0,0 @@ -#ifdef PHP_WIN32 -# include "config.w32.h" -#else -# include -#endif -#include - -#include "zend.h" - -#define timelib_malloc emalloc -#define timelib_realloc erealloc -#define timelib_calloc ecalloc -#define timelib_strdup estrdup -#define timelib_free efree diff --git a/7.4.27/mac/include/php/ext/date/php_date.h b/7.4.27/mac/include/php/ext/date/php_date.h deleted file mode 100644 index 1f2bc32..0000000 --- a/7.4.27/mac/include/php/ext/date/php_date.h +++ /dev/null @@ -1,230 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Derick Rethans | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_DATE_H -#define PHP_DATE_H - -#include "lib/timelib.h" -#include "Zend/zend_hash.h" - -#include "php_version.h" -#define PHP_DATE_VERSION PHP_VERSION - -extern zend_module_entry date_module_entry; -#define phpext_date_ptr &date_module_entry - -PHP_FUNCTION(date); -PHP_FUNCTION(idate); -PHP_FUNCTION(gmdate); -PHP_FUNCTION(strtotime); - -PHP_FUNCTION(mktime); -PHP_FUNCTION(gmmktime); - -PHP_FUNCTION(checkdate); -PHP_FUNCTION(strftime); -PHP_FUNCTION(gmstrftime); -PHP_FUNCTION(time); -PHP_FUNCTION(localtime); -PHP_FUNCTION(getdate); - -/* Advanced Interface */ -PHP_METHOD(DateTime, __construct); -PHP_METHOD(DateTime, __wakeup); -PHP_METHOD(DateTime, __set_state); -PHP_METHOD(DateTime, createFromImmutable); -PHP_FUNCTION(date_create); -PHP_FUNCTION(date_create_immutable); -PHP_FUNCTION(date_create_from_format); -PHP_FUNCTION(date_create_immutable_from_format); -PHP_FUNCTION(date_parse); -PHP_FUNCTION(date_parse_from_format); -PHP_FUNCTION(date_get_last_errors); -PHP_FUNCTION(date_format); -PHP_FUNCTION(date_modify); -PHP_FUNCTION(date_add); -PHP_FUNCTION(date_sub); -PHP_FUNCTION(date_timezone_get); -PHP_FUNCTION(date_timezone_set); -PHP_FUNCTION(date_offset_get); -PHP_FUNCTION(date_diff); - -PHP_FUNCTION(date_time_set); -PHP_FUNCTION(date_date_set); -PHP_FUNCTION(date_isodate_set); -PHP_FUNCTION(date_timestamp_set); -PHP_FUNCTION(date_timestamp_get); - -PHP_METHOD(DateTimeImmutable, __construct); -PHP_METHOD(DateTimeImmutable, __set_state); -PHP_METHOD(DateTimeImmutable, modify); -PHP_METHOD(DateTimeImmutable, add); -PHP_METHOD(DateTimeImmutable, sub); -PHP_METHOD(DateTimeImmutable, setTimezone); -PHP_METHOD(DateTimeImmutable, setTime); -PHP_METHOD(DateTimeImmutable, setDate); -PHP_METHOD(DateTimeImmutable, setISODate); -PHP_METHOD(DateTimeImmutable, setTimestamp); -PHP_METHOD(DateTimeImmutable, createFromMutable); - -PHP_METHOD(DateTimeZone, __construct); -PHP_METHOD(DateTimeZone, __wakeup); -PHP_METHOD(DateTimeZone, __set_state); -PHP_FUNCTION(timezone_open); -PHP_FUNCTION(timezone_name_get); -PHP_FUNCTION(timezone_name_from_abbr); -PHP_FUNCTION(timezone_offset_get); -PHP_FUNCTION(timezone_transitions_get); -PHP_FUNCTION(timezone_location_get); -PHP_FUNCTION(timezone_identifiers_list); -PHP_FUNCTION(timezone_abbreviations_list); -PHP_FUNCTION(timezone_version_get); - -PHP_METHOD(DateInterval, __construct); -PHP_METHOD(DateInterval, __wakeup); -PHP_METHOD(DateInterval, __set_state); -PHP_FUNCTION(date_interval_format); -PHP_FUNCTION(date_interval_create_from_date_string); - -PHP_METHOD(DatePeriod, __construct); -PHP_METHOD(DatePeriod, __wakeup); -PHP_METHOD(DatePeriod, __set_state); -PHP_METHOD(DatePeriod, getStartDate); -PHP_METHOD(DatePeriod, getEndDate); -PHP_METHOD(DatePeriod, getDateInterval); -PHP_METHOD(DatePeriod, getRecurrences); - -/* Options and Configuration */ -PHP_FUNCTION(date_default_timezone_set); -PHP_FUNCTION(date_default_timezone_get); - -/* Astro functions */ -PHP_FUNCTION(date_sunrise); -PHP_FUNCTION(date_sunset); -PHP_FUNCTION(date_sun_info); - -PHP_RINIT_FUNCTION(date); -PHP_RSHUTDOWN_FUNCTION(date); -PHP_MINIT_FUNCTION(date); -PHP_MSHUTDOWN_FUNCTION(date); -PHP_MINFO_FUNCTION(date); -ZEND_MODULE_POST_ZEND_DEACTIVATE_D(date); - -typedef struct _php_date_obj php_date_obj; -typedef struct _php_timezone_obj php_timezone_obj; -typedef struct _php_interval_obj php_interval_obj; -typedef struct _php_period_obj php_period_obj; - -struct _php_date_obj { - timelib_time *time; - zend_object std; -}; - -static inline php_date_obj *php_date_obj_from_obj(zend_object *obj) { - return (php_date_obj*)((char*)(obj) - XtOffsetOf(php_date_obj, std)); -} - -#define Z_PHPDATE_P(zv) php_date_obj_from_obj(Z_OBJ_P((zv))) - -struct _php_timezone_obj { - int initialized; - int type; - union { - timelib_tzinfo *tz; /* TIMELIB_ZONETYPE_ID */ - timelib_sll utc_offset; /* TIMELIB_ZONETYPE_OFFSET */ - timelib_abbr_info z; /* TIMELIB_ZONETYPE_ABBR */ - } tzi; - zend_object std; -}; - -static inline php_timezone_obj *php_timezone_obj_from_obj(zend_object *obj) { - return (php_timezone_obj*)((char*)(obj) - XtOffsetOf(php_timezone_obj, std)); -} - -#define Z_PHPTIMEZONE_P(zv) php_timezone_obj_from_obj(Z_OBJ_P((zv))) - -struct _php_interval_obj { - timelib_rel_time *diff; - int initialized; - zend_object std; -}; - -static inline php_interval_obj *php_interval_obj_from_obj(zend_object *obj) { - return (php_interval_obj*)((char*)(obj) - XtOffsetOf(php_interval_obj, std)); -} - -#define Z_PHPINTERVAL_P(zv) php_interval_obj_from_obj(Z_OBJ_P((zv))) - -struct _php_period_obj { - timelib_time *start; - zend_class_entry *start_ce; - timelib_time *current; - timelib_time *end; - timelib_rel_time *interval; - int recurrences; - int initialized; - int include_start_date; - zend_object std; -}; - -static inline php_period_obj *php_period_obj_from_obj(zend_object *obj) { - return (php_period_obj*)((char*)(obj) - XtOffsetOf(php_period_obj, std)); -} - -#define Z_PHPPERIOD_P(zv) php_period_obj_from_obj(Z_OBJ_P((zv))) - -ZEND_BEGIN_MODULE_GLOBALS(date) - char *default_timezone; - char *timezone; - HashTable *tzcache; - timelib_error_container *last_errors; - int timezone_valid; -ZEND_END_MODULE_GLOBALS(date) - -#define DATEG(v) ZEND_MODULE_GLOBALS_ACCESSOR(date, v) - -PHPAPI time_t php_time(); - -/* Backwards compatibility wrapper */ -PHPAPI zend_long php_parse_date(char *string, zend_long *now); -PHPAPI void php_mktime(INTERNAL_FUNCTION_PARAMETERS, int gmt); -PHPAPI int php_idate(char format, time_t ts, int localtime); - -#define _php_strftime php_strftime - -PHPAPI void php_strftime(INTERNAL_FUNCTION_PARAMETERS, int gm); -PHPAPI zend_string *php_format_date(char *format, size_t format_len, time_t ts, int localtime); - -/* Mechanism to set new TZ database */ -PHPAPI void php_date_set_tzdb(timelib_tzdb *tzdb); -PHPAPI timelib_tzinfo *get_timezone_info(void); - -/* Grabbing CE's so that other exts can use the date objects too */ -PHPAPI zend_class_entry *php_date_get_date_ce(void); -PHPAPI zend_class_entry *php_date_get_immutable_ce(void); -PHPAPI zend_class_entry *php_date_get_interface_ce(void); -PHPAPI zend_class_entry *php_date_get_timezone_ce(void); -PHPAPI zend_class_entry *php_date_get_interval_ce(void); -PHPAPI zend_class_entry *php_date_get_period_ce(void); - -/* Functions for creating DateTime objects, and initializing them from a string */ -PHPAPI zval *php_date_instantiate(zend_class_entry *pce, zval *object); -PHPAPI int php_date_initialize(php_date_obj *dateobj, /*const*/ char *time_str, size_t time_str_len, char *format, zval *timezone_object, int ctor); - - -#endif /* PHP_DATE_H */ diff --git a/7.4.27/mac/include/php/ext/dom/xml_common.h b/7.4.27/mac/include/php/ext/dom/xml_common.h deleted file mode 100644 index 6f51fec..0000000 --- a/7.4.27/mac/include/php/ext/dom/xml_common.h +++ /dev/null @@ -1,93 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Christian Stocker | - | Rob Richards | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_XML_COMMON_H -#define PHP_XML_COMMON_H - -#include "ext/libxml/php_libxml.h" - -typedef libxml_doc_props *dom_doc_propsptr; - -typedef struct _dom_object { - void *ptr; - php_libxml_ref_obj *document; - HashTable *prop_handler; - zend_object std; -} dom_object; - -static inline dom_object *php_dom_obj_from_obj(zend_object *obj) { - return (dom_object*)((char*)(obj) - XtOffsetOf(dom_object, std)); -} - -#define Z_DOMOBJ_P(zv) php_dom_obj_from_obj(Z_OBJ_P((zv))) - -#ifdef PHP_WIN32 -# ifdef DOM_EXPORTS -# define PHP_DOM_EXPORT __declspec(dllexport) -# elif !defined(DOM_LOCAL_DEFINES) /* Allow to counteract LNK4049 warning. */ -# define PHP_DOM_EXPORT __declspec(dllimport) -# else -# define PHP_DOM_EXPORT -# endif /* DOM_EXPORTS */ -#elif defined(__GNUC__) && __GNUC__ >= 4 -# define PHP_DOM_EXPORT __attribute__ ((visibility("default"))) -#elif defined(PHPAPI) -# define PHP_DOM_EXPORT PHPAPI -#else -# define PHP_DOM_EXPORT -#endif - -PHP_DOM_EXPORT extern zend_class_entry *dom_node_class_entry; -PHP_DOM_EXPORT dom_object *php_dom_object_get_data(xmlNodePtr obj); -PHP_DOM_EXPORT zend_bool php_dom_create_object(xmlNodePtr obj, zval* return_value, dom_object *domobj); -PHP_DOM_EXPORT xmlNodePtr dom_object_get_node(dom_object *obj); - -#define DOM_XMLNS_NAMESPACE \ - (const xmlChar *) "http://www.w3.org/2000/xmlns/" - -#define NODE_GET_OBJ(__ptr, __id, __prtype, __intern) { \ - __intern = Z_LIBXML_NODE_P(__id); \ - if (__intern->node == NULL || !(__ptr = (__prtype)__intern->node->node)) { \ - php_error_docref(NULL, E_WARNING, "Couldn't fetch %s", \ - ZSTR_VAL(__intern->std.ce->name));\ - RETURN_NULL();\ - } \ -} - -#define DOC_GET_OBJ(__ptr, __id, __prtype, __intern) { \ - __intern = Z_LIBXML_NODE_P(__id); \ - if (__intern->document != NULL) { \ - if (!(__ptr = (__prtype)__intern->document->ptr)) { \ - php_error_docref(NULL, E_WARNING, "Couldn't fetch %s", __intern->std.ce->name);\ - RETURN_NULL();\ - } \ - } \ -} - -#define DOM_RET_OBJ(obj, ret, domobject) \ - *ret = php_dom_create_object(obj, return_value, domobject) - -#define DOM_GET_THIS(zval) \ - do { zval = ZEND_THIS; } while (0) - -#define DOM_GET_THIS_OBJ(__ptr, __id, __prtype, __intern) \ - DOM_GET_THIS(__id); \ - DOM_GET_OBJ(__ptr, __id, __prtype, __intern); - -#endif diff --git a/7.4.27/mac/include/php/ext/filter/php_filter.h b/7.4.27/mac/include/php/ext/filter/php_filter.h deleted file mode 100644 index 24b177d..0000000 --- a/7.4.27/mac/include/php/ext/filter/php_filter.h +++ /dev/null @@ -1,99 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Rasmus Lerdorf | - | Derick Rethans | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_FILTER_H -#define PHP_FILTER_H - -#include "SAPI.h" -#include "zend_API.h" -#include "php.h" -#include "php_ini.h" -#include "ext/standard/info.h" -#include "ext/standard/php_string.h" -#include "ext/standard/html.h" -#include "php_variables.h" - -extern zend_module_entry filter_module_entry; -#define phpext_filter_ptr &filter_module_entry - -#ifdef ZTS -#include "TSRM.h" -#endif - -#define PHP_FILTER_VERSION PHP_VERSION - -PHP_MINIT_FUNCTION(filter); -PHP_MSHUTDOWN_FUNCTION(filter); -PHP_RINIT_FUNCTION(filter); -PHP_RSHUTDOWN_FUNCTION(filter); -PHP_MINFO_FUNCTION(filter); - -PHP_FUNCTION(filter_input); -PHP_FUNCTION(filter_var); -PHP_FUNCTION(filter_input_array); -PHP_FUNCTION(filter_var_array); -PHP_FUNCTION(filter_list); -PHP_FUNCTION(filter_has_var); -PHP_FUNCTION(filter_id); - -ZEND_BEGIN_MODULE_GLOBALS(filter) - zval post_array; - zval get_array; - zval cookie_array; - zval env_array; - zval server_array; -#if 0 - zval session_array; -#endif - zend_long default_filter; - zend_long default_filter_flags; -ZEND_END_MODULE_GLOBALS(filter) - -#if defined(COMPILE_DL_FILTER) && defined(ZTS) -ZEND_TSRMLS_CACHE_EXTERN() -#endif - -#define IF_G(v) ZEND_MODULE_GLOBALS_ACCESSOR(filter, v) - -#define PHP_INPUT_FILTER_PARAM_DECL zval *value, zend_long flags, zval *option_array, char *charset -void php_filter_int(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_boolean(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_float(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_validate_regexp(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_validate_domain(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_validate_url(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_validate_email(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_validate_ip(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_validate_mac(PHP_INPUT_FILTER_PARAM_DECL); - -void php_filter_string(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_encoded(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_special_chars(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_full_special_chars(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_unsafe_raw(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_email(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_url(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_number_int(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_number_float(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_add_slashes(PHP_INPUT_FILTER_PARAM_DECL); -void php_filter_magic_quotes(PHP_INPUT_FILTER_PARAM_DECL); - -void php_filter_callback(PHP_INPUT_FILTER_PARAM_DECL); - -#endif /* FILTER_H */ diff --git a/7.4.27/mac/include/php/ext/hash/php_hash.h b/7.4.27/mac/include/php/ext/hash/php_hash.h deleted file mode 100644 index 8e919e2..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash.h +++ /dev/null @@ -1,162 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sara Golemon | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_H -#define PHP_HASH_H - -#include "php.h" - -#define PHP_HASH_EXTNAME "hash" -#define PHP_HASH_VERSION PHP_VERSION -#define PHP_MHASH_VERSION PHP_VERSION - -#define PHP_HASH_HMAC 0x0001 - -#define L64 INT64_C - -typedef void (*php_hash_init_func_t)(void *context); -typedef void (*php_hash_update_func_t)(void *context, const unsigned char *buf, size_t count); -typedef void (*php_hash_final_func_t)(unsigned char *digest, void *context); -typedef int (*php_hash_copy_func_t)(const void *ops, void *orig_context, void *dest_context); - -typedef struct _php_hash_ops { - php_hash_init_func_t hash_init; - php_hash_update_func_t hash_update; - php_hash_final_func_t hash_final; - php_hash_copy_func_t hash_copy; - - size_t digest_size; - size_t block_size; - size_t context_size; - unsigned is_crypto: 1; -} php_hash_ops; - -typedef struct _php_hashcontext_object { - const php_hash_ops *ops; - void *context; - - zend_long options; - unsigned char *key; - - zend_object std; -} php_hashcontext_object; - -static inline php_hashcontext_object *php_hashcontext_from_object(zend_object *obj) { - return ((php_hashcontext_object*)(obj + 1)) - 1; -} - -extern const php_hash_ops php_hash_md2_ops; -extern const php_hash_ops php_hash_md4_ops; -extern const php_hash_ops php_hash_md5_ops; -extern const php_hash_ops php_hash_sha1_ops; -extern const php_hash_ops php_hash_sha224_ops; -extern const php_hash_ops php_hash_sha256_ops; -extern const php_hash_ops php_hash_sha384_ops; -extern const php_hash_ops php_hash_sha512_ops; -extern const php_hash_ops php_hash_sha512_256_ops; -extern const php_hash_ops php_hash_sha512_224_ops; -extern const php_hash_ops php_hash_sha3_224_ops; -extern const php_hash_ops php_hash_sha3_256_ops; -extern const php_hash_ops php_hash_sha3_384_ops; -extern const php_hash_ops php_hash_sha3_512_ops; -extern const php_hash_ops php_hash_ripemd128_ops; -extern const php_hash_ops php_hash_ripemd160_ops; -extern const php_hash_ops php_hash_ripemd256_ops; -extern const php_hash_ops php_hash_ripemd320_ops; -extern const php_hash_ops php_hash_whirlpool_ops; -extern const php_hash_ops php_hash_3tiger128_ops; -extern const php_hash_ops php_hash_3tiger160_ops; -extern const php_hash_ops php_hash_3tiger192_ops; -extern const php_hash_ops php_hash_4tiger128_ops; -extern const php_hash_ops php_hash_4tiger160_ops; -extern const php_hash_ops php_hash_4tiger192_ops; -extern const php_hash_ops php_hash_snefru_ops; -extern const php_hash_ops php_hash_gost_ops; -extern const php_hash_ops php_hash_gost_crypto_ops; -extern const php_hash_ops php_hash_adler32_ops; -extern const php_hash_ops php_hash_crc32_ops; -extern const php_hash_ops php_hash_crc32b_ops; -extern const php_hash_ops php_hash_crc32c_ops; -extern const php_hash_ops php_hash_fnv132_ops; -extern const php_hash_ops php_hash_fnv1a32_ops; -extern const php_hash_ops php_hash_fnv164_ops; -extern const php_hash_ops php_hash_fnv1a64_ops; -extern const php_hash_ops php_hash_joaat_ops; - -#define PHP_HASH_HAVAL_OPS(p,b) extern const php_hash_ops php_hash_##p##haval##b##_ops; - -PHP_HASH_HAVAL_OPS(3,128) -PHP_HASH_HAVAL_OPS(3,160) -PHP_HASH_HAVAL_OPS(3,192) -PHP_HASH_HAVAL_OPS(3,224) -PHP_HASH_HAVAL_OPS(3,256) - -PHP_HASH_HAVAL_OPS(4,128) -PHP_HASH_HAVAL_OPS(4,160) -PHP_HASH_HAVAL_OPS(4,192) -PHP_HASH_HAVAL_OPS(4,224) -PHP_HASH_HAVAL_OPS(4,256) - -PHP_HASH_HAVAL_OPS(5,128) -PHP_HASH_HAVAL_OPS(5,160) -PHP_HASH_HAVAL_OPS(5,192) -PHP_HASH_HAVAL_OPS(5,224) -PHP_HASH_HAVAL_OPS(5,256) - -extern zend_module_entry hash_module_entry; -#define phpext_hash_ptr &hash_module_entry - -#ifdef PHP_WIN32 -# define PHP_HASH_API __declspec(dllexport) -#elif defined(__GNUC__) && __GNUC__ >= 4 -# define PHP_HASH_API __attribute__ ((visibility("default"))) -#else -# define PHP_HASH_API -#endif - -PHP_FUNCTION(hash); -PHP_FUNCTION(hash_file); -PHP_FUNCTION(hash_hkdf); -PHP_FUNCTION(hash_hmac); -PHP_FUNCTION(hash_hmac_file); -PHP_FUNCTION(hash_init); -PHP_FUNCTION(hash_update); -PHP_FUNCTION(hash_update_stream); -PHP_FUNCTION(hash_update_file); -PHP_FUNCTION(hash_final); -PHP_FUNCTION(hash_algos); -PHP_FUNCTION(hash_pbkdf2); -PHP_FUNCTION(hash_equals); - -extern PHP_HASH_API zend_class_entry *php_hashcontext_ce; -PHP_HASH_API const php_hash_ops *php_hash_fetch_ops(const char *algo, size_t algo_len); -PHP_HASH_API void php_hash_register_algo(const char *algo, const php_hash_ops *ops); -PHP_HASH_API int php_hash_copy(const void *ops, void *orig_context, void *dest_context); - -static inline void php_hash_bin2hex(char *out, const unsigned char *in, size_t in_len) -{ - static const char hexits[17] = "0123456789abcdef"; - size_t i; - - for(i = 0; i < in_len; i++) { - out[i * 2] = hexits[in[i] >> 4]; - out[(i * 2) + 1] = hexits[in[i] & 0x0F]; - } -} - -#endif /* PHP_HASH_H */ diff --git a/7.4.27/mac/include/php/ext/hash/php_hash_adler32.h b/7.4.27/mac/include/php/ext/hash/php_hash_adler32.h deleted file mode 100644 index 63f32ab..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash_adler32.h +++ /dev/null @@ -1,33 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Michael Wallner | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_ADLER32_H -#define PHP_HASH_ADLER32_H - -#include "ext/standard/basic_functions.h" - -typedef struct { - uint32_t state; -} PHP_ADLER32_CTX; - -PHP_HASH_API void PHP_ADLER32Init(PHP_ADLER32_CTX *context); -PHP_HASH_API void PHP_ADLER32Update(PHP_ADLER32_CTX *context, const unsigned char *input, size_t len); -PHP_HASH_API void PHP_ADLER32Final(unsigned char digest[4], PHP_ADLER32_CTX *context); -PHP_HASH_API int PHP_ADLER32Copy(const php_hash_ops *ops, PHP_ADLER32_CTX *orig_context, PHP_ADLER32_CTX *copy_context); - -#endif diff --git a/7.4.27/mac/include/php/ext/hash/php_hash_crc32.h b/7.4.27/mac/include/php/ext/hash/php_hash_crc32.h deleted file mode 100644 index 6308b00..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash_crc32.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Michael Wallner | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_CRC32_H -#define PHP_HASH_CRC32_H - -#include "ext/standard/basic_functions.h" - -typedef struct { - uint32_t state; -} PHP_CRC32_CTX; - -PHP_HASH_API void PHP_CRC32Init(PHP_CRC32_CTX *context); -PHP_HASH_API void PHP_CRC32Update(PHP_CRC32_CTX *context, const unsigned char *input, size_t len); -PHP_HASH_API void PHP_CRC32BUpdate(PHP_CRC32_CTX *context, const unsigned char *input, size_t len); -PHP_HASH_API void PHP_CRC32CUpdate(PHP_CRC32_CTX *context, const unsigned char *input, size_t len); -PHP_HASH_API void PHP_CRC32LEFinal(unsigned char digest[4], PHP_CRC32_CTX *context); -PHP_HASH_API void PHP_CRC32BEFinal(unsigned char digest[4], PHP_CRC32_CTX *context); -PHP_HASH_API int PHP_CRC32Copy(const php_hash_ops *ops, PHP_CRC32_CTX *orig_context, PHP_CRC32_CTX *copy_context); - -#endif diff --git a/7.4.27/mac/include/php/ext/hash/php_hash_fnv.h b/7.4.27/mac/include/php/ext/hash/php_hash_fnv.h deleted file mode 100644 index f00a469..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash_fnv.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Michael Maclean | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_FNV_H -#define PHP_HASH_FNV_H - -#define PHP_FNV1_32_INIT ((uint32_t)0x811c9dc5) -#define PHP_FNV1_32A_INIT PHP_FNV1_32_INIT - -#define PHP_FNV_32_PRIME ((uint32_t)0x01000193) - -#define PHP_FNV1_64_INIT ((uint64_t)0xcbf29ce484222325ULL) -#define PHP_FNV1A_64_INIT FNV1_64_INIT - -#define PHP_FNV_64_PRIME ((uint64_t)0x100000001b3ULL) - - -/* - * hash types - */ -enum php_fnv_type { - PHP_FNV_NONE = 0, /* invalid FNV hash type */ - PHP_FNV0_32 = 1, /* FNV-0 32 bit hash */ - PHP_FNV1_32 = 2, /* FNV-1 32 bit hash */ - PHP_FNV1a_32 = 3, /* FNV-1a 32 bit hash */ - PHP_FNV0_64 = 4, /* FNV-0 64 bit hash */ - PHP_FNV1_64 = 5, /* FNV-1 64 bit hash */ - PHP_FNV1a_64 = 6, /* FNV-1a 64 bit hash */ -}; - -typedef struct { - uint32_t state; -} PHP_FNV132_CTX; - -typedef struct { - uint64_t state; -} PHP_FNV164_CTX; - - -PHP_HASH_API void PHP_FNV132Init(PHP_FNV132_CTX *context); -PHP_HASH_API void PHP_FNV132Update(PHP_FNV132_CTX *context, const unsigned char *input, size_t inputLen); -PHP_HASH_API void PHP_FNV1a32Update(PHP_FNV132_CTX *context, const unsigned char *input, size_t inputLen); -PHP_HASH_API void PHP_FNV132Final(unsigned char digest[16], PHP_FNV132_CTX * context); - -PHP_HASH_API void PHP_FNV164Init(PHP_FNV164_CTX *context); -PHP_HASH_API void PHP_FNV164Update(PHP_FNV164_CTX *context, const unsigned char *input, size_t inputLen); -PHP_HASH_API void PHP_FNV1a64Update(PHP_FNV164_CTX *context, const unsigned char *input, size_t inputLen); -PHP_HASH_API void PHP_FNV164Final(unsigned char digest[16], PHP_FNV164_CTX * context); - -static uint32_t fnv_32_buf(void *buf, size_t len, uint32_t hval, int alternate); -static uint64_t fnv_64_buf(void *buf, size_t len, uint64_t hval, int alternate); - -#endif diff --git a/7.4.27/mac/include/php/ext/hash/php_hash_gost.h b/7.4.27/mac/include/php/ext/hash/php_hash_gost.h deleted file mode 100644 index 3837eeb..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash_gost.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Michael Wallner | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_GOST_H -#define PHP_HASH_GOST_H - -#include "ext/standard/basic_functions.h" - -/* GOST context */ -typedef struct { - uint32_t state[16]; - size_t count[2]; - unsigned char length; - unsigned char buffer[32]; - const uint32_t (*tables)[4][256]; -} PHP_GOST_CTX; - -PHP_HASH_API void PHP_GOSTInit(PHP_GOST_CTX *); -PHP_HASH_API void PHP_GOSTUpdate(PHP_GOST_CTX *, const unsigned char *, size_t); -PHP_HASH_API void PHP_GOSTFinal(unsigned char[64], PHP_GOST_CTX *); - -#endif diff --git a/7.4.27/mac/include/php/ext/hash/php_hash_haval.h b/7.4.27/mac/include/php/ext/hash/php_hash_haval.h deleted file mode 100644 index 1188b79..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash_haval.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sara Golemon | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_HAVAL_H -#define PHP_HASH_HAVAL_H - -#include "ext/standard/basic_functions.h" -/* HAVAL context. */ -typedef struct { - uint32_t state[8]; - uint32_t count[2]; - unsigned char buffer[128]; - - char passes; - short output; - void (*Transform)(uint32_t state[8], const unsigned char block[128]); -} PHP_HAVAL_CTX; - -#define PHP_HASH_HAVAL_INIT_DECL(p,b) PHP_HASH_API void PHP_##p##HAVAL##b##Init(PHP_HAVAL_CTX *); \ - PHP_HASH_API void PHP_HAVAL##b##Final(unsigned char*, PHP_HAVAL_CTX *); - -PHP_HASH_API void PHP_HAVALUpdate(PHP_HAVAL_CTX *, const unsigned char *, unsigned int); - -PHP_HASH_HAVAL_INIT_DECL(3,128) -PHP_HASH_HAVAL_INIT_DECL(3,160) -PHP_HASH_HAVAL_INIT_DECL(3,192) -PHP_HASH_HAVAL_INIT_DECL(3,224) -PHP_HASH_HAVAL_INIT_DECL(3,256) - -PHP_HASH_HAVAL_INIT_DECL(4,128) -PHP_HASH_HAVAL_INIT_DECL(4,160) -PHP_HASH_HAVAL_INIT_DECL(4,192) -PHP_HASH_HAVAL_INIT_DECL(4,224) -PHP_HASH_HAVAL_INIT_DECL(4,256) - -PHP_HASH_HAVAL_INIT_DECL(5,128) -PHP_HASH_HAVAL_INIT_DECL(5,160) -PHP_HASH_HAVAL_INIT_DECL(5,192) -PHP_HASH_HAVAL_INIT_DECL(5,224) -PHP_HASH_HAVAL_INIT_DECL(5,256) - -#endif diff --git a/7.4.27/mac/include/php/ext/hash/php_hash_joaat.h b/7.4.27/mac/include/php/ext/hash/php_hash_joaat.h deleted file mode 100644 index b9e7e7a..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash_joaat.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Martin Jansen | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_JOAAT_H -#define PHP_HASH_JOAAT_H - -typedef struct { - uint32_t state; -} PHP_JOAAT_CTX; - -PHP_HASH_API void PHP_JOAATInit(PHP_JOAAT_CTX *context); -PHP_HASH_API void PHP_JOAATUpdate(PHP_JOAAT_CTX *context, const unsigned char *input, size_t inputLen); -PHP_HASH_API void PHP_JOAATFinal(unsigned char digest[16], PHP_JOAAT_CTX * context); - -static uint32_t joaat_buf(void *buf, size_t len, uint32_t hval); - -#endif diff --git a/7.4.27/mac/include/php/ext/hash/php_hash_md.h b/7.4.27/mac/include/php/ext/hash/php_hash_md.h deleted file mode 100644 index 0073488..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash_md.h +++ /dev/null @@ -1,98 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Original Author: Rasmus Lerdorf | - | Modified for pHASH by: Sara Golemon - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_MD_H -#define PHP_HASH_MD_H - -/* When SHA is removed from Core, - the ext/standard/sha1.c file can be removed - and the ext/standard/sha1.h file can be reduced to: - #define PHP_HASH_SHA1_NOT_IN_CORE - #include "ext/hash/php_hash_sha.h" - Don't forget to remove md5() and md5_file() entries from basic_functions.c - */ - -#include "ext/standard/md5.h" - -#ifdef PHP_HASH_MD5_NOT_IN_CORE -/* MD5.H - header file for MD5C.C - */ - -/* Copyright (C) 1991-2, RSA Data Security, Inc. Created 1991. All - rights reserved. - - License to copy and use this software is granted provided that it - is identified as the "RSA Data Security, Inc. MD5 Message-Digest - Algorithm" in all material mentioning or referencing this software - or this function. - - License is also granted to make and use derivative works provided - that such works are identified as "derived from the RSA Data - Security, Inc. MD5 Message-Digest Algorithm" in all material - mentioning or referencing the derived work. - - RSA Data Security, Inc. makes no representations concerning either - the merchantability of this software or the suitability of this - software for any particular purpose. It is provided "as is" - without express or implied warranty of any kind. - - These notices must be retained in any copies of any part of this - documentation and/or software. - */ - -/* MD5 context. */ -typedef struct { - uint32_t state[4]; /* state (ABCD) */ - uint32_t count[2]; /* number of bits, modulo 2^64 (lsb first) */ - unsigned char buffer[64]; /* input buffer */ -} PHP_MD5_CTX; - -PHP_HASH_API void make_digest(char *md5str, unsigned char *digest); -PHP_HASH_API void PHP_MD5Init(PHP_MD5_CTX *); -PHP_HASH_API void PHP_MD5Update(PHP_MD5_CTX *, const unsigned char *, size_t); -PHP_HASH_API void PHP_MD5Final(unsigned char[16], PHP_MD5_CTX *); - -PHP_NAMED_FUNCTION(php_if_md5); -PHP_NAMED_FUNCTION(php_if_md5_file); -#endif /* PHP_HASH_MD5_NOT_IN_CORE */ - -/* MD4 context */ -typedef struct { - uint32_t state[4]; - uint32_t count[2]; - unsigned char buffer[64]; -} PHP_MD4_CTX; - -PHP_HASH_API void PHP_MD4Init(PHP_MD4_CTX *); -PHP_HASH_API void PHP_MD4Update(PHP_MD4_CTX *context, const unsigned char *, size_t); -PHP_HASH_API void PHP_MD4Final(unsigned char[16], PHP_MD4_CTX *); - -/* MD2 context */ -typedef struct { - unsigned char state[48]; - unsigned char checksum[16]; - unsigned char buffer[16]; - char in_buffer; -} PHP_MD2_CTX; - -PHP_HASH_API void PHP_MD2Init(PHP_MD2_CTX *context); -PHP_HASH_API void PHP_MD2Update(PHP_MD2_CTX *context, const unsigned char *, size_t); -PHP_HASH_API void PHP_MD2Final(unsigned char[16], PHP_MD2_CTX *); - -#endif diff --git a/7.4.27/mac/include/php/ext/hash/php_hash_ripemd.h b/7.4.27/mac/include/php/ext/hash/php_hash_ripemd.h deleted file mode 100644 index e8f1678..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash_ripemd.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sara Golemon | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_RIPEMD_H -#define PHP_HASH_RIPEMD_H -#include "ext/standard/basic_functions.h" - -/* RIPEMD context. */ -typedef struct { - uint32_t state[4]; /* state (ABCD) */ - uint32_t count[2]; /* number of bits, modulo 2^64 (lsb first) */ - unsigned char buffer[64]; /* input buffer */ -} PHP_RIPEMD128_CTX; - -typedef struct { - uint32_t state[5]; /* state (ABCD) */ - uint32_t count[2]; /* number of bits, modulo 2^64 (lsb first) */ - unsigned char buffer[64]; /* input buffer */ -} PHP_RIPEMD160_CTX; - -typedef struct { - uint32_t state[8]; /* state (ABCD) */ - uint32_t count[2]; /* number of bits, modulo 2^64 (lsb first) */ - unsigned char buffer[64]; /* input buffer */ -} PHP_RIPEMD256_CTX; - -typedef struct { - uint32_t state[10]; /* state (ABCD) */ - uint32_t count[2]; /* number of bits, modulo 2^64 (lsb first) */ - unsigned char buffer[64]; /* input buffer */ -} PHP_RIPEMD320_CTX; - -PHP_HASH_API void PHP_RIPEMD128Init(PHP_RIPEMD128_CTX *); -PHP_HASH_API void PHP_RIPEMD128Update(PHP_RIPEMD128_CTX *, const unsigned char *, size_t); -PHP_HASH_API void PHP_RIPEMD128Final(unsigned char[16], PHP_RIPEMD128_CTX *); - -PHP_HASH_API void PHP_RIPEMD160Init(PHP_RIPEMD160_CTX *); -PHP_HASH_API void PHP_RIPEMD160Update(PHP_RIPEMD160_CTX *, const unsigned char *, size_t); -PHP_HASH_API void PHP_RIPEMD160Final(unsigned char[20], PHP_RIPEMD160_CTX *); - -PHP_HASH_API void PHP_RIPEMD256Init(PHP_RIPEMD256_CTX *); -PHP_HASH_API void PHP_RIPEMD256Update(PHP_RIPEMD256_CTX *, const unsigned char *, size_t); -PHP_HASH_API void PHP_RIPEMD256Final(unsigned char[32], PHP_RIPEMD256_CTX *); - -PHP_HASH_API void PHP_RIPEMD320Init(PHP_RIPEMD320_CTX *); -PHP_HASH_API void PHP_RIPEMD320Update(PHP_RIPEMD320_CTX *, const unsigned char *, size_t); -PHP_HASH_API void PHP_RIPEMD320Final(unsigned char[40], PHP_RIPEMD320_CTX *); - -#endif /* PHP_HASH_RIPEMD_H */ diff --git a/7.4.27/mac/include/php/ext/hash/php_hash_sha.h b/7.4.27/mac/include/php/ext/hash/php_hash_sha.h deleted file mode 100644 index 4903f8d..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash_sha.h +++ /dev/null @@ -1,103 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | SHA1 Author: Stefan Esser | - | SHA256 Author: Sara Golemon | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_SHA_H -#define PHP_HASH_SHA_H - -/* When SHA is removed from Core, - the ext/standard/sha1.c file can be removed - and the ext/standard/sha1.h file can be reduced to: - #define PHP_HASH_SHA1_NOT_IN_CORE - #include "ext/hash/php_hash_sha.h" - Don't forget to remove sha1() and sha1_file() from basic_functions.c - */ -#include "ext/standard/sha1.h" -#include "ext/standard/basic_functions.h" - -#ifdef PHP_HASH_SHA1_NOT_IN_CORE - -/* SHA1 context. */ -typedef struct { - uint32_t state[5]; /* state (ABCD) */ - uint32_t count[2]; /* number of bits, modulo 2^64 */ - unsigned char buffer[64]; /* input buffer */ -} PHP_SHA1_CTX; - -PHP_HASH_API void PHP_SHA1Init(PHP_SHA1_CTX *); -PHP_HASH_API void PHP_SHA1Update(PHP_SHA1_CTX *, const unsigned char *, size_t); -PHP_HASH_API void PHP_SHA1Final(unsigned char[20], PHP_SHA1_CTX *); - -PHP_FUNCTION(sha1); -PHP_FUNCTION(sha1_file); - -#endif /* PHP_HASH_SHA1_NOT_IN_CORE */ - -/* SHA224 context. */ -typedef struct { - uint32_t state[8]; /* state */ - uint32_t count[2]; /* number of bits, modulo 2^64 */ - unsigned char buffer[64]; /* input buffer */ -} PHP_SHA224_CTX; - -PHP_HASH_API void PHP_SHA224Init(PHP_SHA224_CTX *); -PHP_HASH_API void PHP_SHA224Update(PHP_SHA224_CTX *, const unsigned char *, size_t); -PHP_HASH_API void PHP_SHA224Final(unsigned char[28], PHP_SHA224_CTX *); - -/* SHA256 context. */ -typedef struct { - uint32_t state[8]; /* state */ - uint32_t count[2]; /* number of bits, modulo 2^64 */ - unsigned char buffer[64]; /* input buffer */ -} PHP_SHA256_CTX; - -PHP_HASH_API void PHP_SHA256Init(PHP_SHA256_CTX *); -PHP_HASH_API void PHP_SHA256Update(PHP_SHA256_CTX *, const unsigned char *, size_t); -PHP_HASH_API void PHP_SHA256Final(unsigned char[32], PHP_SHA256_CTX *); - -/* SHA384 context */ -typedef struct { - uint64_t state[8]; /* state */ - uint64_t count[2]; /* number of bits, modulo 2^128 */ - unsigned char buffer[128]; /* input buffer */ -} PHP_SHA384_CTX; - -PHP_HASH_API void PHP_SHA384Init(PHP_SHA384_CTX *); -PHP_HASH_API void PHP_SHA384Update(PHP_SHA384_CTX *, const unsigned char *, size_t); -PHP_HASH_API void PHP_SHA384Final(unsigned char[48], PHP_SHA384_CTX *); - -/* SHA512 context */ -typedef struct { - uint64_t state[8]; /* state */ - uint64_t count[2]; /* number of bits, modulo 2^128 */ - unsigned char buffer[128]; /* input buffer */ -} PHP_SHA512_CTX; - -PHP_HASH_API void PHP_SHA512Init(PHP_SHA512_CTX *); -PHP_HASH_API void PHP_SHA512Update(PHP_SHA512_CTX *, const unsigned char *, size_t); -PHP_HASH_API void PHP_SHA512Final(unsigned char[64], PHP_SHA512_CTX *); - -PHP_HASH_API void PHP_SHA512_256Init(PHP_SHA512_CTX *); -#define PHP_SHA512_256Update PHP_SHA512Update -PHP_HASH_API void PHP_SHA512_256Final(unsigned char[32], PHP_SHA512_CTX *); - -PHP_HASH_API void PHP_SHA512_224Init(PHP_SHA512_CTX *); -#define PHP_SHA512_224Update PHP_SHA512Update -PHP_HASH_API void PHP_SHA512_224Final(unsigned char[28], PHP_SHA512_CTX *); - -#endif /* PHP_HASH_SHA_H */ diff --git a/7.4.27/mac/include/php/ext/hash/php_hash_sha3.h b/7.4.27/mac/include/php/ext/hash/php_hash_sha3.h deleted file mode 100644 index 0608f40..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash_sha3.h +++ /dev/null @@ -1,54 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sara Golemon | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_SHA3_H -#define PHP_HASH_SHA3_H - -#include "php.h" - -typedef struct { -#ifdef HAVE_SLOW_HASH3 - unsigned char state[200]; // 5 * 5 * sizeof(uint64) - uint32_t pos; -#else - void *hashinstance; -#endif -} PHP_SHA3_CTX; - -typedef PHP_SHA3_CTX PHP_SHA3_224_CTX; -typedef PHP_SHA3_CTX PHP_SHA3_256_CTX; -typedef PHP_SHA3_CTX PHP_SHA3_384_CTX; -typedef PHP_SHA3_CTX PHP_SHA3_512_CTX; - -PHP_HASH_API void PHP_SHA3224Init(PHP_SHA3_224_CTX*); -PHP_HASH_API void PHP_SHA3224Update(PHP_SHA3_224_CTX*, const unsigned char*, size_t); -PHP_HASH_API void PHP_SAH3224Final(unsigned char[32], PHP_SHA3_224_CTX*); - -PHP_HASH_API void PHP_SHA3256Init(PHP_SHA3_256_CTX*); -PHP_HASH_API void PHP_SHA3256Update(PHP_SHA3_256_CTX*, const unsigned char*, size_t); -PHP_HASH_API void PHP_SAH3256Final(unsigned char[32], PHP_SHA3_256_CTX*); - -PHP_HASH_API void PHP_SHA3384Init(PHP_SHA3_384_CTX*); -PHP_HASH_API void PHP_SHA3384Update(PHP_SHA3_384_CTX*, const unsigned char*, size_t); -PHP_HASH_API void PHP_SAH3384Final(unsigned char[32], PHP_SHA3_384_CTX*); - -PHP_HASH_API void PHP_SHA3512Init(PHP_SHA3_512_CTX*); -PHP_HASH_API void PHP_SHA3512Update(PHP_SHA3_512_CTX*, const unsigned char*, size_t); -PHP_HASH_API void PHP_SAH3512Final(unsigned char[32], PHP_SHA3_512_CTX*); - -#endif diff --git a/7.4.27/mac/include/php/ext/hash/php_hash_snefru.h b/7.4.27/mac/include/php/ext/hash/php_hash_snefru.h deleted file mode 100644 index 2040fbf..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash_snefru.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Michael Wallner | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_SNEFRU_H -#define PHP_HASH_SNEFRU_H - -/* SNEFRU-2.5a with 8 passes and 256 bit hash output - * AKA "Xerox Secure Hash Function" - */ - -#include "ext/standard/basic_functions.h" - -/* SNEFRU context */ -typedef struct { - uint32_t state[16]; - uint32_t count[2]; - unsigned char length; - unsigned char buffer[32]; -} PHP_SNEFRU_CTX; - -PHP_HASH_API void PHP_SNEFRUInit(PHP_SNEFRU_CTX *); -PHP_HASH_API void PHP_SNEFRUUpdate(PHP_SNEFRU_CTX *, const unsigned char *, size_t); -PHP_HASH_API void PHP_SNEFRUFinal(unsigned char[32], PHP_SNEFRU_CTX *); - -#endif diff --git a/7.4.27/mac/include/php/ext/hash/php_hash_tiger.h b/7.4.27/mac/include/php/ext/hash/php_hash_tiger.h deleted file mode 100644 index b80e4e3..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash_tiger.h +++ /dev/null @@ -1,38 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Michael Wallner | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_TIGER_H -#define PHP_HASH_TIGER_H - -/* TIGER context */ -typedef struct { - uint64_t state[3]; - uint64_t passed; - unsigned char buffer[64]; - unsigned int passes:1; - size_t length; -} PHP_TIGER_CTX; - -PHP_HASH_API void PHP_3TIGERInit(PHP_TIGER_CTX *context); -PHP_HASH_API void PHP_4TIGERInit(PHP_TIGER_CTX *context); -PHP_HASH_API void PHP_TIGERUpdate(PHP_TIGER_CTX *context, const unsigned char *input, size_t len); -PHP_HASH_API void PHP_TIGER128Final(unsigned char digest[16], PHP_TIGER_CTX *context); -PHP_HASH_API void PHP_TIGER160Final(unsigned char digest[20], PHP_TIGER_CTX *context); -PHP_HASH_API void PHP_TIGER192Final(unsigned char digest[24], PHP_TIGER_CTX *context); - -#endif diff --git a/7.4.27/mac/include/php/ext/hash/php_hash_whirlpool.h b/7.4.27/mac/include/php/ext/hash/php_hash_whirlpool.h deleted file mode 100644 index 3a2e98c..0000000 --- a/7.4.27/mac/include/php/ext/hash/php_hash_whirlpool.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Michael Wallner | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HASH_WHIRLPOOL_H -#define PHP_HASH_WHIRLPOOL_H - -/* WHIRLPOOL context */ -typedef struct { - uint64_t state[8]; - unsigned char bitlength[32]; - struct { - int pos; - int bits; - unsigned char data[64]; - } buffer; -} PHP_WHIRLPOOL_CTX; - -PHP_HASH_API void PHP_WHIRLPOOLInit(PHP_WHIRLPOOL_CTX *); -PHP_HASH_API void PHP_WHIRLPOOLUpdate(PHP_WHIRLPOOL_CTX *, const unsigned char *, size_t); -PHP_HASH_API void PHP_WHIRLPOOLFinal(unsigned char[64], PHP_WHIRLPOOL_CTX *); - -#endif diff --git a/7.4.27/mac/include/php/ext/json/php_json.h b/7.4.27/mac/include/php/ext/json/php_json.h deleted file mode 100644 index 99afe8d..0000000 --- a/7.4.27/mac/include/php/ext/json/php_json.h +++ /dev/null @@ -1,110 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Omar Kilani | - | Jakub Zelenka | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_JSON_H -#define PHP_JSON_H - -#include "php_version.h" -#include "zend_smart_str_public.h" - -#define PHP_JSON_VERSION PHP_VERSION - -extern zend_module_entry json_module_entry; -#define phpext_json_ptr &json_module_entry - -#if defined(PHP_WIN32) && defined(JSON_EXPORTS) -#define PHP_JSON_API __declspec(dllexport) -#else -#define PHP_JSON_API PHPAPI -#endif - -#ifdef ZTS -#include "TSRM.h" -#endif - -extern PHP_JSON_API zend_class_entry *php_json_serializable_ce; - -/* error codes */ -typedef enum { - PHP_JSON_ERROR_NONE = 0, - PHP_JSON_ERROR_DEPTH, - PHP_JSON_ERROR_STATE_MISMATCH, - PHP_JSON_ERROR_CTRL_CHAR, - PHP_JSON_ERROR_SYNTAX, - PHP_JSON_ERROR_UTF8, - PHP_JSON_ERROR_RECURSION, - PHP_JSON_ERROR_INF_OR_NAN, - PHP_JSON_ERROR_UNSUPPORTED_TYPE, - PHP_JSON_ERROR_INVALID_PROPERTY_NAME, - PHP_JSON_ERROR_UTF16 -} php_json_error_code; - -/* json_decode() options */ -#define PHP_JSON_OBJECT_AS_ARRAY (1<<0) -#define PHP_JSON_BIGINT_AS_STRING (1<<1) - -/* json_encode() options */ -#define PHP_JSON_HEX_TAG (1<<0) -#define PHP_JSON_HEX_AMP (1<<1) -#define PHP_JSON_HEX_APOS (1<<2) -#define PHP_JSON_HEX_QUOT (1<<3) -#define PHP_JSON_FORCE_OBJECT (1<<4) -#define PHP_JSON_NUMERIC_CHECK (1<<5) -#define PHP_JSON_UNESCAPED_SLASHES (1<<6) -#define PHP_JSON_PRETTY_PRINT (1<<7) -#define PHP_JSON_UNESCAPED_UNICODE (1<<8) -#define PHP_JSON_PARTIAL_OUTPUT_ON_ERROR (1<<9) -#define PHP_JSON_PRESERVE_ZERO_FRACTION (1<<10) -#define PHP_JSON_UNESCAPED_LINE_TERMINATORS (1<<11) - -/* json_decode() and json_encode() common options */ -#define PHP_JSON_INVALID_UTF8_IGNORE (1<<20) -#define PHP_JSON_INVALID_UTF8_SUBSTITUTE (1<<21) -#define PHP_JSON_THROW_ON_ERROR (1<<22) - -/* Internal flags */ -#define PHP_JSON_OUTPUT_ARRAY 0 -#define PHP_JSON_OUTPUT_OBJECT 1 - -/* default depth */ -#define PHP_JSON_PARSER_DEFAULT_DEPTH 512 - -ZEND_BEGIN_MODULE_GLOBALS(json) - int encoder_depth; - int encode_max_depth; - php_json_error_code error_code; -ZEND_END_MODULE_GLOBALS(json) - -PHP_JSON_API ZEND_EXTERN_MODULE_GLOBALS(json) -#define JSON_G(v) ZEND_MODULE_GLOBALS_ACCESSOR(json, v) - -#if defined(ZTS) && defined(COMPILE_DL_JSON) -ZEND_TSRMLS_CACHE_EXTERN() -#endif - -PHP_JSON_API int php_json_encode_ex(smart_str *buf, zval *val, int options, zend_long depth); -PHP_JSON_API int php_json_encode(smart_str *buf, zval *val, int options); -PHP_JSON_API int php_json_decode_ex(zval *return_value, char *str, size_t str_len, zend_long options, zend_long depth); - -static inline int php_json_decode(zval *return_value, char *str, int str_len, zend_bool assoc, zend_long depth) -{ - return php_json_decode_ex(return_value, str, str_len, assoc ? PHP_JSON_OBJECT_AS_ARRAY : 0, depth); -} - -#endif /* PHP_JSON_H */ diff --git a/7.4.27/mac/include/php/ext/json/php_json_parser.h b/7.4.27/mac/include/php/ext/json/php_json_parser.h deleted file mode 100644 index 8b6393d..0000000 --- a/7.4.27/mac/include/php/ext/json/php_json_parser.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Jakub Zelenka | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_JSON_PARSER_H -#define PHP_JSON_PARSER_H - -#include "php.h" -#include "php_json_scanner.h" - -typedef struct _php_json_parser php_json_parser; - -typedef int (*php_json_parser_func_array_create_t)( - php_json_parser *parser, zval *array); -typedef int (*php_json_parser_func_array_append_t)( - php_json_parser *parser, zval *array, zval *zvalue); -typedef int (*php_json_parser_func_array_start_t)( - php_json_parser *parser); -typedef int (*php_json_parser_func_array_end_t)( - php_json_parser *parser, zval *object); -typedef int (*php_json_parser_func_object_create_t)( - php_json_parser *parser, zval *object); -typedef int (*php_json_parser_func_object_update_t)( - php_json_parser *parser, zval *object, zend_string *key, zval *zvalue); -typedef int (*php_json_parser_func_object_start_t)( - php_json_parser *parser); -typedef int (*php_json_parser_func_object_end_t)( - php_json_parser *parser, zval *object); - -typedef struct _php_json_parser_methods { - php_json_parser_func_array_create_t array_create; - php_json_parser_func_array_append_t array_append; - php_json_parser_func_array_start_t array_start; - php_json_parser_func_array_end_t array_end; - php_json_parser_func_object_create_t object_create; - php_json_parser_func_object_update_t object_update; - php_json_parser_func_object_start_t object_start; - php_json_parser_func_object_end_t object_end; -} php_json_parser_methods; - -struct _php_json_parser { - php_json_scanner scanner; - zval *return_value; - int depth; - int max_depth; - php_json_parser_methods methods; -}; - -PHP_JSON_API void php_json_parser_init_ex( - php_json_parser *parser, - zval *return_value, - char *str, - size_t str_len, - int options, - int max_depth, - const php_json_parser_methods *methods); - -PHP_JSON_API void php_json_parser_init( - php_json_parser *parser, - zval *return_value, - char *str, - size_t str_len, - int options, - int max_depth); - -PHP_JSON_API php_json_error_code php_json_parser_error_code(const php_json_parser *parser); - -PHP_JSON_API int php_json_parse(php_json_parser *parser); - -int php_json_yyparse(php_json_parser *parser); - -#endif /* PHP_JSON_PARSER_H */ diff --git a/7.4.27/mac/include/php/ext/json/php_json_scanner.h b/7.4.27/mac/include/php/ext/json/php_json_scanner.h deleted file mode 100644 index 7a93561..0000000 --- a/7.4.27/mac/include/php/ext/json/php_json_scanner.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Jakub Zelenka | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_JSON_SCANNER_H -#define PHP_JSON_SCANNER_H - -#include "php.h" -#include "php_json.h" - -typedef unsigned char php_json_ctype; - -typedef struct _php_json_scanner { - php_json_ctype *cursor; /* cursor position */ - php_json_ctype *token; /* token position */ - php_json_ctype *limit; /* the last read character + 1 position */ - php_json_ctype *marker; /* marker position for backtracking */ - php_json_ctype *ctxmarker; /* marker position for context backtracking */ - php_json_ctype *str_start; /* start position of the string */ - php_json_ctype *pstr; /* string pointer for escapes conversion */ - zval value; /* value */ - int str_esc; /* number of extra characters for escaping */ - int state; /* condition state */ - int options; /* options */ - php_json_error_code errcode; /* error type if there is an error */ - int utf8_invalid; /* whether utf8 is invalid */ - int utf8_invalid_count; /* number of extra character for invalid utf8 */ -} php_json_scanner; - - -void php_json_scanner_init(php_json_scanner *scanner, char *str, size_t str_len, int options); -int php_json_scan(php_json_scanner *s); - -#endif /* PHP_JSON_SCANNER_H */ diff --git a/7.4.27/mac/include/php/ext/libxml/php_libxml.h b/7.4.27/mac/include/php/ext/libxml/php_libxml.h deleted file mode 100644 index cf936e9..0000000 --- a/7.4.27/mac/include/php/ext/libxml/php_libxml.h +++ /dev/null @@ -1,129 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Shane Caraveo | - | Wez Furlong | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_LIBXML_H -#define PHP_LIBXML_H - -#if HAVE_LIBXML -extern zend_module_entry libxml_module_entry; -#define libxml_module_ptr &libxml_module_entry - -#include "php_version.h" -#define PHP_LIBXML_VERSION PHP_VERSION - -#ifdef PHP_WIN32 -# define PHP_LIBXML_API __declspec(dllexport) -#elif defined(__GNUC__) && __GNUC__ >= 4 -# define PHP_LIBXML_API __attribute__ ((visibility("default"))) -#else -# define PHP_LIBXML_API -#endif - -#include "zend_smart_str.h" -#include - -#define LIBXML_SAVE_NOEMPTYTAG 1<<2 - -ZEND_BEGIN_MODULE_GLOBALS(libxml) - zval stream_context; - smart_str error_buffer; - zend_llist *error_list; - struct _php_libxml_entity_resolver { - zval object; - zend_fcall_info fci; - zend_fcall_info_cache fcc; - } entity_loader; - zend_bool entity_loader_disabled; -ZEND_END_MODULE_GLOBALS(libxml) - -typedef struct _libxml_doc_props { - int formatoutput; - int validateonparse; - int resolveexternals; - int preservewhitespace; - int substituteentities; - int stricterror; - int recover; - HashTable *classmap; -} libxml_doc_props; - -typedef struct _php_libxml_ref_obj { - void *ptr; - int refcount; - libxml_doc_props *doc_props; -} php_libxml_ref_obj; - -typedef struct _php_libxml_node_ptr { - xmlNodePtr node; - int refcount; - void *_private; -} php_libxml_node_ptr; - -typedef struct _php_libxml_node_object { - php_libxml_node_ptr *node; - php_libxml_ref_obj *document; - HashTable *properties; - zend_object std; -} php_libxml_node_object; - - -static inline php_libxml_node_object *php_libxml_node_fetch_object(zend_object *obj) { - return (php_libxml_node_object *)((char*)(obj) - obj->handlers->offset); -} - -#define Z_LIBXML_NODE_P(zv) php_libxml_node_fetch_object(Z_OBJ_P((zv))) - -typedef void * (*php_libxml_export_node) (zval *object); - -PHP_LIBXML_API int php_libxml_increment_node_ptr(php_libxml_node_object *object, xmlNodePtr node, void *private_data); -PHP_LIBXML_API int php_libxml_decrement_node_ptr(php_libxml_node_object *object); -PHP_LIBXML_API int php_libxml_increment_doc_ref(php_libxml_node_object *object, xmlDocPtr docp); -PHP_LIBXML_API int php_libxml_decrement_doc_ref(php_libxml_node_object *object); -PHP_LIBXML_API xmlNodePtr php_libxml_import_node(zval *object); -PHP_LIBXML_API zval *php_libxml_register_export(zend_class_entry *ce, php_libxml_export_node export_function); -/* When an explicit freeing of node and children is required */ -PHP_LIBXML_API void php_libxml_node_free_list(xmlNodePtr node); -PHP_LIBXML_API void php_libxml_node_free_resource(xmlNodePtr node); -/* When object dtor is called as node may still be referenced */ -PHP_LIBXML_API void php_libxml_node_decrement_resource(php_libxml_node_object *object); -PHP_LIBXML_API void php_libxml_error_handler(void *ctx, const char *msg, ...); -PHP_LIBXML_API void php_libxml_ctx_warning(void *ctx, const char *msg, ...); -PHP_LIBXML_API void php_libxml_ctx_error(void *ctx, const char *msg, ...); -PHP_LIBXML_API int php_libxml_xmlCheckUTF8(const unsigned char *s); -PHP_LIBXML_API void php_libxml_switch_context(zval *context, zval *oldcontext); -PHP_LIBXML_API void php_libxml_issue_error(int level, const char *msg); -PHP_LIBXML_API zend_bool php_libxml_disable_entity_loader(zend_bool disable); - -/* Init/shutdown functions*/ -PHP_LIBXML_API void php_libxml_initialize(void); -PHP_LIBXML_API void php_libxml_shutdown(void); - -#define LIBXML(v) ZEND_MODULE_GLOBALS_ACCESSOR(libxml, v) - -#if defined(ZTS) && defined(COMPILE_DL_LIBXML) -ZEND_TSRMLS_CACHE_EXTERN() -#endif - -#else /* HAVE_LIBXML */ -#define libxml_module_ptr NULL -#endif - -#define phpext_libxml_ptr libxml_module_ptr - -#endif /* PHP_LIBXML_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/config.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/config.h deleted file mode 100644 index f1038d8..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/config.h +++ /dev/null @@ -1 +0,0 @@ -#include "php_config.h" diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/eaw_table.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/eaw_table.h deleted file mode 100644 index 834b134..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/eaw_table.h +++ /dev/null @@ -1,44 +0,0 @@ -static const struct { - int begin; - int end; -} mbfl_eaw_table[] = { - { 0x1100, 0x115f }, - { 0x11a3, 0x11a7 }, - { 0x11fa, 0x11ff }, - { 0x2329, 0x232a }, - { 0x2e80, 0x2e99 }, - { 0x2e9b, 0x2ef3 }, - { 0x2f00, 0x2fd5 }, - { 0x2ff0, 0x2ffb }, - { 0x3000, 0x303e }, - { 0x3041, 0x3096 }, - { 0x3099, 0x30ff }, - { 0x3105, 0x312d }, - { 0x3131, 0x318e }, - { 0x3190, 0x31ba }, - { 0x31c0, 0x31e3 }, - { 0x31f0, 0x321e }, - { 0x3220, 0x3247 }, - { 0x3250, 0x32fe }, - { 0x3300, 0x4dbf }, - { 0x4e00, 0xa48c }, - { 0xa490, 0xa4c6 }, - { 0xa960, 0xa97c }, - { 0xac00, 0xd7a3 }, - { 0xd7b0, 0xd7c6 }, - { 0xd7cb, 0xd7fb }, - { 0xf900, 0xfaff }, - { 0xfe10, 0xfe19 }, - { 0xfe30, 0xfe52 }, - { 0xfe54, 0xfe66 }, - { 0xfe68, 0xfe6b }, - { 0xff01, 0xff60 }, - { 0xffe0, 0xffe6 }, - { 0x1b000, 0x1b001 }, - { 0x1f200, 0x1f202 }, - { 0x1f210, 0x1f23a }, - { 0x1f240, 0x1f248 }, - { 0x1f250, 0x1f251 }, - { 0x20000, 0x2fffd }, - { 0x30000, 0x3fffd } -}; diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter.h deleted file mode 100644 index 0966e2d..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter.h +++ /dev/null @@ -1,308 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * - * Copyright (c) 1998,1999,2000,2001 HappySize, Inc. All rights reserved. - * - * This software is released under the GNU Lesser General Public License. - * (Version 2.1, February 1999) - * Please read the following detail of the licence (in japanese). - * - * ◆使用許諾条件◆ - * - * このソフトウェアは株式会社ハッピーサイズによって開発されました。株式会社ハッ - * ピーサイズは、著作権法および万国著作権条約の定めにより、このソフトウェアに関 - * するすべての権利を留保する権利を持ち、ここに行使します。株式会社ハッピーサイ - * ズは以下に明記した条件に従って、このソフトウェアを使用する排他的ではない権利 - * をお客様に許諾します。何人たりとも、以下の条件に反してこのソフトウェアを使用 - * することはできません。 - * - * このソフトウェアを「GNU Lesser General Public License (Version 2.1, February - * 1999)」に示された条件で使用することを、全ての方に許諾します。「GNU Lesser - * General Public License」を満たさない使用には、株式会社ハッピーサイズから書面 - * による許諾を得る必要があります。 - * - * 「GNU Lesser General Public License」の全文は以下のウェブページから取得でき - * ます。「GNU Lesser General Public License」とは、これまでLibrary General - * Public Licenseと呼ばれていたものです。 - * http://www.gnu.org/ --- GNUウェブサイト - * http://www.gnu.org/copyleft/lesser.html --- ライセンス文面 - * このライセンスの内容がわからない方、守れない方には使用を許諾しません。 - * - * しかしながら、当社とGNUプロジェクトとの特定の関係を示唆または主張するもので - * はありません。 - * - * ◆保証内容◆ - * - * このソフトウェアは、期待された動作・機能・性能を持つことを目標として設計され - * 開発されていますが、これを保証するものではありません。このソフトウェアは「こ - * のまま」の状態で提供されており、たとえばこのソフトウェアの有用性ないし特定の - * 目的に合致することといった、何らかの保証内容が、明示されたり暗黙に示されてい - * る場合であっても、その保証は無効です。このソフトウェアを使用した結果ないし使 - * 用しなかった結果によって、直接あるいは間接に受けた身体的な傷害、財産上の損害 - * 、データの損失あるいはその他の全ての損害については、その損害の可能性が使用者 - * 、当社あるいは第三者によって警告されていた場合であっても、当社はその損害の賠 - * 償および補填を行いません。この規定は他の全ての、書面上または書面に無い保証・ - * 契約・規定に優先します。 - * - * ◆著作権者の連絡先および使用条件についての問い合わせ先◆ - * - * 〒102-0073 - * 東京都千代田区九段北1-13-5日本地所第一ビル4F - * 株式会社ハッピーサイズ - * Phone: 03-3512-3655, Fax: 03-3512-3656 - * Email: sales@happysize.co.jp - * Web: http://happysize.com/ - * - * ◆著者◆ - * - * 金本 茂 - * - * ◆履歴◆ - * - * 1998/11/10 sgk implementation in C++ - * 1999/4/25 sgk Cで書きなおし。 - * 1999/4/26 sgk 入力フィルタを実装。漢字コードを推定しながらフィルタを追加。 - * 1999/6/?? Unicodeサポート。 - * 1999/6/22 sgk ライセンスをLGPLに変更。 - * - */ - -/* - * Unicode support - * - * Portions copyright (c) 1999,2000,2001 by the PHP3 internationalization team. - * All rights reserved. - * - */ - -/* - * - * streamable kanji code filter and converter - * mbfl : Multi Byte FiLter Liblary - * - */ - -#ifndef MBFL_MBFILTER_H -#define MBFL_MBFILTER_H - -#include "mbfl_defs.h" -#include "mbfl_consts.h" -#include "mbfl_allocators.h" -#include "mbfl_encoding.h" -#include "mbfl_language.h" -#include "mbfl_string.h" -#include "mbfl_convert.h" -#include "mbfl_ident.h" - -/* Prefer local fix, otherwise need to include too much. */ -#ifndef ssize_t -#if defined(_WIN64) -#define ssize_t __int64 -#elif defined(_WIN32) -#define ssize_t __int32 -#elif defined(__GNUC__) && __GNUC__ >= 4 -#define ssize_t long -#endif -#endif - -/* - * version information - */ -#define MBFL_VERSION_MAJOR 1 -#define MBFL_VERSION_MINOR 3 -#define MBFL_VERSION_TEENY 2 - -/* - * convert filter - */ -#define MBFL_OUTPUTFILTER_ILLEGAL_MODE_NONE 0 -#define MBFL_OUTPUTFILTER_ILLEGAL_MODE_CHAR 1 -#define MBFL_OUTPUTFILTER_ILLEGAL_MODE_LONG 2 -#define MBFL_OUTPUTFILTER_ILLEGAL_MODE_ENTITY 3 - -/* - * convenience macros - */ -#ifndef MIN -#define MIN(a,b) ((a)<(b)?(a):(b)) -#endif - -/* - * buffering converter - */ -typedef struct _mbfl_buffer_converter mbfl_buffer_converter; - -struct _mbfl_buffer_converter { - mbfl_convert_filter *filter1; - mbfl_convert_filter *filter2; - mbfl_memory_device device; - const mbfl_encoding *from; - const mbfl_encoding *to; -}; - -MBFLAPI extern mbfl_buffer_converter * mbfl_buffer_converter_new(const mbfl_encoding *from, const mbfl_encoding *to, size_t buf_initsz); -MBFLAPI extern void mbfl_buffer_converter_delete(mbfl_buffer_converter *convd); -MBFLAPI extern void mbfl_buffer_converter_reset(mbfl_buffer_converter *convd); -MBFLAPI extern int mbfl_buffer_converter_illegal_mode(mbfl_buffer_converter *convd, int mode); -MBFLAPI extern int mbfl_buffer_converter_illegal_substchar(mbfl_buffer_converter *convd, int substchar); -MBFLAPI extern int mbfl_buffer_converter_strncat(mbfl_buffer_converter *convd, const unsigned char *p, size_t n); -MBFLAPI extern int mbfl_buffer_converter_feed(mbfl_buffer_converter *convd, mbfl_string *string); -MBFLAPI extern int mbfl_buffer_converter_feed2(mbfl_buffer_converter *convd, mbfl_string *string, size_t *loc); -MBFLAPI extern int mbfl_buffer_converter_flush(mbfl_buffer_converter *convd); -MBFLAPI extern mbfl_string * mbfl_buffer_converter_getbuffer(mbfl_buffer_converter *convd, mbfl_string *result); -MBFLAPI extern mbfl_string * mbfl_buffer_converter_result(mbfl_buffer_converter *convd, mbfl_string *result); -MBFLAPI extern mbfl_string * mbfl_buffer_converter_feed_result(mbfl_buffer_converter *convd, mbfl_string *string, mbfl_string *result); -MBFLAPI extern size_t mbfl_buffer_illegalchars(mbfl_buffer_converter *convd); - -/* - * encoding detector - */ -typedef struct _mbfl_encoding_detector mbfl_encoding_detector; - -struct _mbfl_encoding_detector { - mbfl_identify_filter **filter_list; - int filter_list_size; - int strict; -}; - -MBFLAPI extern mbfl_encoding_detector * mbfl_encoding_detector_new(const mbfl_encoding **elist, int elistsz, int strict); -MBFLAPI extern void mbfl_encoding_detector_delete(mbfl_encoding_detector *identd); -MBFLAPI extern int mbfl_encoding_detector_feed(mbfl_encoding_detector *identd, mbfl_string *string); -MBFLAPI extern const mbfl_encoding *mbfl_encoding_detector_judge(mbfl_encoding_detector *identd); - - -/* - * encoding converter - */ -MBFLAPI extern mbfl_string * -mbfl_convert_encoding(mbfl_string *string, mbfl_string *result, const mbfl_encoding *toenc); - - -/* - * identify encoding - */ -MBFLAPI extern const mbfl_encoding * -mbfl_identify_encoding(mbfl_string *string, const mbfl_encoding **elist, int elistsz, int strict); - -/* Lengths -1 through -16 are reserved for error return values */ -static inline int mbfl_is_error(size_t len) { - return len >= (size_t) -16; -} - -/* - * strlen - */ -MBFLAPI extern size_t -mbfl_strlen(mbfl_string *string); - -/* - * oddlen - */ -MBFLAPI extern size_t -mbfl_oddlen(mbfl_string *string); - -/* - * strpos - */ -MBFLAPI extern size_t -mbfl_strpos(mbfl_string *haystack, mbfl_string *needle, ssize_t offset, int reverse); - -/* - * substr_count - */ -MBFLAPI extern size_t -mbfl_substr_count(mbfl_string *haystack, mbfl_string *needle); - -/* - * If specified as length, the substr until the end of the string is taken. - */ -#define MBFL_SUBSTR_UNTIL_END ((size_t) -1) - -/* - * substr - */ -MBFLAPI extern mbfl_string * -mbfl_substr(mbfl_string *string, mbfl_string *result, size_t from, size_t length); - -/* - * strcut - */ -MBFLAPI extern mbfl_string * -mbfl_strcut(mbfl_string *string, mbfl_string *result, size_t from, size_t length); - -/* - * strwidth - */ -MBFLAPI extern size_t -mbfl_strwidth(mbfl_string *string); - -/* - * strimwidth - */ -MBFLAPI extern mbfl_string * -mbfl_strimwidth(mbfl_string *string, mbfl_string *marker, mbfl_string *result, size_t from, size_t width); - -/* - * MIME header encode - */ -struct mime_header_encoder_data; /* forward declaration */ - -MBFLAPI extern struct mime_header_encoder_data * -mime_header_encoder_new( - const mbfl_encoding *incode, - const mbfl_encoding *outcode, - const mbfl_encoding *encoding); - -MBFLAPI extern void -mime_header_encoder_delete(struct mime_header_encoder_data *pe); - -MBFLAPI extern int -mime_header_encoder_feed(int c, struct mime_header_encoder_data *pe); - -MBFLAPI extern mbfl_string * -mime_header_encoder_result(struct mime_header_encoder_data *pe, mbfl_string *result); - -MBFLAPI extern mbfl_string * -mbfl_mime_header_encode( - mbfl_string *string, mbfl_string *result, - const mbfl_encoding *outcode, - const mbfl_encoding *encoding, - const char *linefeed, - int indent); - -/* - * MIME header decode - */ -struct mime_header_decoder_data; /* forward declaration */ - -MBFLAPI extern struct mime_header_decoder_data * -mime_header_decoder_new(const mbfl_encoding *outcode); - -MBFLAPI extern void -mime_header_decoder_delete(struct mime_header_decoder_data *pd); - -MBFLAPI extern int -mime_header_decoder_feed(int c, struct mime_header_decoder_data *pd); - -MBFLAPI extern mbfl_string * -mime_header_decoder_result(struct mime_header_decoder_data *pd, mbfl_string *result); - -MBFLAPI extern mbfl_string * -mbfl_mime_header_decode( - mbfl_string *string, - mbfl_string *result, - const mbfl_encoding *outcode); - -/* - * convert HTML numeric entity - */ -MBFLAPI extern mbfl_string * -mbfl_html_numeric_entity(mbfl_string *string, mbfl_string *result, int *convmap, int mapsize, int type); - -/* - * convert of harfwidth and fullwidth for japanese - */ -MBFLAPI extern mbfl_string * -mbfl_ja_jp_hantozen(mbfl_string *string, mbfl_string *result, int mode); - -#endif /* MBFL_MBFILTER_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter_8bit.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter_8bit.h deleted file mode 100644 index acdf640..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter_8bit.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. - * - * LICENSE NOTICES - * - * This file is part of "streamable kanji code filter and converter", - * which is distributed under the terms of GNU Lesser General Public - * License (version 2) as published by the Free Software Foundation. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with "streamable kanji code filter and converter"; - * if not, write to the Free Software Foundation, Inc., 59 Temple Place, - * Suite 330, Boston, MA 02111-1307 USA - * - * The author of this file: - * - */ -/* - * The source code included in this files was separated from mbfilter.c - * by Moriyoshi Koizumi on 20 Dec 2002. The file - * mbfilter.c is included in this package . - * - */ - -#ifndef MBFL_MBFILTER_8BIT_H -#define MBFL_MBFILTER_8BIT_H - -#include "mbfl_defs.h" -#include "mbfilter.h" - -MBFLAPI extern const mbfl_encoding mbfl_encoding_8bit; - -#endif /* MBFL_MBFILTER_8BIT_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter_pass.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter_pass.h deleted file mode 100644 index a1064b8..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter_pass.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. - * - * LICENSE NOTICES - * - * This file is part of "streamable kanji code filter and converter", - * which is distributed under the terms of GNU Lesser General Public - * License (version 2) as published by the Free Software Foundation. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with "streamable kanji code filter and converter"; - * if not, write to the Free Software Foundation, Inc., 59 Temple Place, - * Suite 330, Boston, MA 02111-1307 USA - * - * The author of this file: - * - */ -/* - * The source code included in this files was separated from mbfilter.c - * by moriyoshi koizumi on 4 dec 2002. - * - */ - -#ifndef MBFL_MBFILTER_PASS_H -#define MBFL_MBFILTER_PASS_H - -#include "mbfl_defs.h" -#include "mbfilter.h" - -MBFLAPI extern const mbfl_encoding mbfl_encoding_pass; -MBFLAPI extern const struct mbfl_convert_vtbl vtbl_pass; - -MBFLAPI extern int mbfl_filt_conv_pass(int c, mbfl_convert_filter *filter); - -#endif /* MBFL_MBFILTER_PASS_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter_wchar.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter_wchar.h deleted file mode 100644 index b412f4c..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfilter_wchar.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. - * - * LICENSE NOTICES - * - * This file is part of "streamable kanji code filter and converter", - * which is distributed under the terms of GNU Lesser General Public - * License (version 2) as published by the Free Software Foundation. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with "streamable kanji code filter and converter"; - * if not, write to the Free Software Foundation, Inc., 59 Temple Place, - * Suite 330, Boston, MA 02111-1307 USA - * - * The author of this file: - * - */ -/* - * The source code included in this files was separated from mbfilter.c - * by Moriyoshi Koizumi on 20 Dec 2002. The file - * mbfilter.c is included in this package . - * - */ - -#ifndef MBFL_MBFILTER_WCHAR_H -#define MBFL_MBFILTER_WCHAR_H - -#include "mbfl_defs.h" -#include "mbfilter.h" - -MBFLAPI extern const mbfl_encoding mbfl_encoding_wchar; - -#endif /* MBFL_MBFILTER_WCHAR_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_allocators.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_allocators.h deleted file mode 100644 index 08fc275..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_allocators.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. - * - * LICENSE NOTICES - * - * This file is part of "streamable kanji code filter and converter", - * which is distributed under the terms of GNU Lesser General Public - * License (version 2) as published by the Free Software Foundation. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with "streamable kanji code filter and converter"; - * if not, write to the Free Software Foundation, Inc., 59 Temple Place, - * Suite 330, Boston, MA 02111-1307 USA - * - * The author of this file: - * - */ -/* - * The source code included in this files was separated from mbfilter.h - * by Moriyoshi Koizumi on 20 Dec 2002. The file - * mbfilter.h is included in this package . - * - */ - -#ifndef MBFL_ALLOCATORS_H -#define MBFL_ALLOCATORS_H - -#include -#include "mbfl_defs.h" - -typedef struct _mbfl_allocators { - void *(*malloc)(size_t); - void *(*realloc)(void *, size_t); - void *(*calloc)(size_t, size_t); - void (*free)(void *); - void *(*pmalloc)(size_t); - void *(*prealloc)(void *, size_t); - void (*pfree)(void *); -} mbfl_allocators; - -MBFLAPI extern mbfl_allocators *__mbfl_allocators; - -#define mbfl_malloc (__mbfl_allocators->malloc) -#define mbfl_realloc (__mbfl_allocators->realloc) -#define mbfl_calloc (__mbfl_allocators->calloc) -#define mbfl_free (__mbfl_allocators->free) -#define mbfl_pmalloc (__mbfl_allocators->pmalloc) -#define mbfl_prealloc (__mbfl_allocators->preallloc) -#define mbfl_pfree (__mbfl_allocators->pfree) - -#endif /* MBFL_ALLOCATORS_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_consts.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_consts.h deleted file mode 100644 index cad99b0..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_consts.h +++ /dev/null @@ -1,94 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. - * - * LICENSE NOTICES - * - * This file is part of "streamable kanji code filter and converter", - * which is distributed under the terms of GNU Lesser General Public - * License (version 2) as published by the Free Software Foundation. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with "streamable kanji code filter and converter"; - * if not, write to the Free Software Foundation, Inc., 59 Temple Place, - * Suite 330, Boston, MA 02111-1307 USA - * - * The author of this file: - * - */ -/* - * The source code included in this files was separated from mbfilter.h - * by Moriyoshi Koizumi on 20 Dec 2002. The file - * mbfilter.h is included in this package . - * - */ - -#ifndef MBFL_CONSTS_H -#define MBFL_CONSTS_H - -#define MBFL_ENCTYPE_SBCS 0x00000001 -#define MBFL_ENCTYPE_MBCS 0x00000002 -#define MBFL_ENCTYPE_WCS2BE 0x00000010 -#define MBFL_ENCTYPE_WCS2LE 0x00000020 -#define MBFL_ENCTYPE_MWC2BE 0x00000040 -#define MBFL_ENCTYPE_MWC2LE 0x00000080 -#define MBFL_ENCTYPE_WCS4BE 0x00000100 -#define MBFL_ENCTYPE_WCS4LE 0x00000200 -#define MBFL_ENCTYPE_MWC4BE 0x00000400 -#define MBFL_ENCTYPE_MWC4LE 0x00000800 -#define MBFL_ENCTYPE_SHFTCODE 0x00001000 -#define MBFL_ENCTYPE_ENC_STRM 0x00002000 -#define MBFL_ENCTYPE_GL_UNSAFE 0x00004000 - -/* wchar plane, special character */ -#define MBFL_WCSPLANE_MASK 0xffff -#define MBFL_WCSPLANE_UCS2MAX 0x00010000 -#define MBFL_WCSPLANE_UTF32MAX 0x00110000 -#define MBFL_WCSPLANE_SUPMIN 0x00010000 -#define MBFL_WCSPLANE_SUPMAX 0x00200000 -#define MBFL_WCSPLANE_JIS0213 0x70e00000 /* JIS HEX : 2121h - 7E7Eh */ -#define MBFL_WCSPLANE_JIS0208 0x70e10000 /* JIS HEX : 2121h - 7E7Eh */ -#define MBFL_WCSPLANE_JIS0212 0x70e20000 /* JIS HEX : 2121h - 7E7Eh */ -#define MBFL_WCSPLANE_WINCP932 0x70e30000 /* JIS HEX : 2121h - 9898h */ -#define MBFL_WCSPLANE_8859_1 0x70e40000 /* 00h - FFh */ -#define MBFL_WCSPLANE_8859_2 0x70e50000 /* 00h - FFh */ -#define MBFL_WCSPLANE_8859_3 0x70e60000 /* 00h - FFh */ -#define MBFL_WCSPLANE_8859_4 0x70e70000 /* 00h - FFh */ -#define MBFL_WCSPLANE_8859_5 0x70e80000 /* 00h - FFh */ -#define MBFL_WCSPLANE_8859_6 0x70e90000 /* 00h - FFh */ -#define MBFL_WCSPLANE_8859_7 0x70ea0000 /* 00h - FFh */ -#define MBFL_WCSPLANE_8859_8 0x70eb0000 /* 00h - FFh */ -#define MBFL_WCSPLANE_8859_9 0x70ec0000 /* 00h - FFh */ -#define MBFL_WCSPLANE_8859_10 0x70ed0000 /* 00h - FFh */ -#define MBFL_WCSPLANE_8859_13 0x70ee0000 /* 00h - FFh */ -#define MBFL_WCSPLANE_8859_14 0x70ef0000 /* 00h - FFh */ -#define MBFL_WCSPLANE_8859_15 0x70f00000 /* 00h - FFh */ -#define MBFL_WCSPLANE_KSC5601 0x70f10000 /* 2121h - 7E7Eh */ -#define MBFL_WCSPLANE_GB2312 0x70f20000 /* 2121h - 7E7Eh */ -#define MBFL_WCSPLANE_WINCP936 0x70f30000 /* 2121h - 9898h */ -#define MBFL_WCSPLANE_BIG5 0x70f40000 /* 2121h - 9898h */ -#define MBFL_WCSPLANE_CNS11643 0x70f50000 /* 2121h - 9898h */ -#define MBFL_WCSPLANE_UHC 0x70f60000 /* 8141h - fefeh */ -#define MBFL_WCSPLANE_CP1251 0x70f70000 -#define MBFL_WCSPLANE_CP866 0x70f80000 -#define MBFL_WCSPLANE_KOI8R 0x70f90000 -#define MBFL_WCSPLANE_8859_16 0x70fa0000 /* 00h - FFh */ -#define MBFL_WCSPLANE_ARMSCII8 0x70fb0000 -#define MBFL_WCSPLANE_KOI8U 0x70fc0000 -#define MBFL_WCSPLANE_CP1254 0x70fd0000 /* 00h - FFh */ -#define MBFL_WCSPLANE_CP850 0x70fe0000 /* 00h - FFh */ -#define MBFL_WCSPLANE_GB18030 0x70ff0000 /* a1a1h-e3329a35h */ -#define MBFL_WCSGROUP_MASK 0xffffff -#define MBFL_WCSGROUP_UCS4MAX 0x70000000 -#define MBFL_WCSGROUP_WCHARMAX 0x78000000 -#define MBFL_WCSGROUP_THROUGH 0x78000000 /* 000000h - FFFFFFh */ - -#define MBFL_QPRINT_STS_MIME_HEADER 0x1000000 -#define MBFL_BASE64_STS_MIME_HEADER 0x1000000 - -#endif /* MBFL_CONSTS_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_convert.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_convert.h deleted file mode 100644 index 31e54c6..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_convert.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. - * - * LICENSE NOTICES - * - * This file is part of "streamable kanji code filter and converter", - * which is distributed under the terms of GNU Lesser General Public - * License (version 2) as published by the Free Software Foundation. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with "streamable kanji code filter and converter"; - * if not, write to the Free Software Foundation, Inc., 59 Temple Place, - * Suite 330, Boston, MA 02111-1307 USA - * - * The author of this file: - * - */ -/* - * The source code included in this files was separated from mbfilter.h - * by Moriyoshi Koizumi on 20 Dec 2002. The file - * mbfilter.h is included in this package . - * - */ - -#ifndef MBFL_CONVERT_H -#define MBFL_CONVERT_H - -#include "mbfl_defs.h" -#include "mbfl_encoding.h" -#include "mbfl_memory_device.h" - -typedef struct _mbfl_convert_filter mbfl_convert_filter; - -struct _mbfl_convert_filter { - void (*filter_ctor)(mbfl_convert_filter *filter); - void (*filter_dtor)(mbfl_convert_filter *filter); - void (*filter_copy)(mbfl_convert_filter *src, mbfl_convert_filter *dest); - int (*filter_function)(int c, mbfl_convert_filter *filter); - int (*filter_flush)(mbfl_convert_filter *filter); - int (*output_function)(int c, void *data); - int (*flush_function)(void *data); - void *data; - int status; - int cache; - const mbfl_encoding *from; - const mbfl_encoding *to; - int illegal_mode; - int illegal_substchar; - size_t num_illegalchar; - void *opaque; -}; - -MBFLAPI extern mbfl_convert_filter *mbfl_convert_filter_new( - const mbfl_encoding *from, - const mbfl_encoding *to, - int (*output_function)(int, void *), - int (*flush_function)(void *), - void *data ); -MBFLAPI extern mbfl_convert_filter *mbfl_convert_filter_new2( - const struct mbfl_convert_vtbl *vtbl, - int (*output_function)(int, void *), - int (*flush_function)(void *), - void *data ); -MBFLAPI extern void mbfl_convert_filter_delete(mbfl_convert_filter *filter); -MBFLAPI extern int mbfl_convert_filter_feed(int c, mbfl_convert_filter *filter); -MBFLAPI extern int mbfl_convert_filter_feed_string(mbfl_convert_filter *filter, const unsigned char *p, size_t len); -MBFLAPI extern int mbfl_convert_filter_flush(mbfl_convert_filter *filter); -MBFLAPI extern void mbfl_convert_filter_reset(mbfl_convert_filter *filter, const mbfl_encoding *from, const mbfl_encoding *to); -MBFLAPI extern void mbfl_convert_filter_copy(mbfl_convert_filter *src, mbfl_convert_filter *dist); -MBFLAPI extern int mbfl_filt_conv_illegal_output(int c, mbfl_convert_filter *filter); -MBFLAPI extern const struct mbfl_convert_vtbl * mbfl_convert_filter_get_vtbl(const mbfl_encoding *from, const mbfl_encoding *to); - -MBFLAPI extern void mbfl_filt_conv_common_ctor(mbfl_convert_filter *filter); -MBFLAPI extern int mbfl_filt_conv_common_flush(mbfl_convert_filter *filter); -MBFLAPI extern void mbfl_filt_conv_common_dtor(mbfl_convert_filter *filter); - -MBFLAPI extern int mbfl_convert_filter_devcat(mbfl_convert_filter *filter, mbfl_memory_device *src); -MBFLAPI extern int mbfl_convert_filter_strcat(mbfl_convert_filter *filter, const unsigned char *p); - -#endif /* MBFL_CONVERT_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_defs.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_defs.h deleted file mode 100644 index 8b18e5e..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_defs.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. - * - * LICENSE NOTICES - * - * This file is part of "streamable kanji code filter and converter", - * which is distributed under the terms of GNU Lesser General Public - * License (version 2) as published by the Free Software Foundation. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with "streamable kanji code filter and converter"; - * if not, write to the Free Software Foundation, Inc., 59 Temple Place, - * Suite 330, Boston, MA 02111-1307 USA - * - * The author of this file: - * - */ -/* - * The source code included in this files was separated from mbfilter.h - * by Moriyoshi Koizumi on 20 Dec 2002. The file - * mbfilter.h is included in this package . - * - */ - -#ifndef MBFL_DEFS_H -#define MBFL_DEFS_H - -#ifndef NULL -#ifdef __cplusplus -#define NULL (0L) -#else -#define NULL (void *)(0L) -#endif -#endif - -#ifndef SIZE_MAX -#define SIZE_MAX ((size_t)~0) -#endif - -#ifdef WIN32 -#ifdef MBFL_DLL_EXPORT -#define MBFLAPI __declspec(dllexport) -#else -#define MBFLAPI __declspec(dllimport) -#endif /* MBFL_DLL_EXPORT */ -#else -#if defined(__GNUC__) && __GNUC__ >= 4 -#define MBFLAPI __attribute__((visibility("default"))) -#else -#define MBFLAPI -#endif /* defined(__GNUC__) && __GNUC__ >= 4 */ -#endif /* WIN32 */ - -#endif /* MBFL_DEFS_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_encoding.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_encoding.h deleted file mode 100644 index c3a9c0a..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_encoding.h +++ /dev/null @@ -1,164 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. - * - * LICENSE NOTICES - * - * This file is part of "streamable kanji code filter and converter", - * which is distributed under the terms of GNU Lesser General Public - * License (version 2) as published by the Free Software Foundation. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with "streamable kanji code filter and converter"; - * if not, write to the Free Software Foundation, Inc., 59 Temple Place, - * Suite 330, Boston, MA 02111-1307 USA - * - * The author of this file: - * - */ -/* - * The source code included in this files was separated from mbfilter.h - * by Moriyoshi Koizumi on 20 Dec 2002. The file - * mbfilter.h is included in this package . - * - */ - -#ifndef MBFL_ENCODING_H -#define MBFL_ENCODING_H - -#include "mbfl_defs.h" - -enum mbfl_no_encoding { - mbfl_no_encoding_invalid = -1, - mbfl_no_encoding_pass, - mbfl_no_encoding_wchar, - mbfl_no_encoding_byte2be, - mbfl_no_encoding_byte2le, - mbfl_no_encoding_byte4be, - mbfl_no_encoding_byte4le, - mbfl_no_encoding_base64, - mbfl_no_encoding_uuencode, - mbfl_no_encoding_html_ent, - mbfl_no_encoding_qprint, - mbfl_no_encoding_7bit, - mbfl_no_encoding_8bit, - mbfl_no_encoding_charset_min, - mbfl_no_encoding_ucs4, - mbfl_no_encoding_ucs4be, - mbfl_no_encoding_ucs4le, - mbfl_no_encoding_ucs2, - mbfl_no_encoding_ucs2be, - mbfl_no_encoding_ucs2le, - mbfl_no_encoding_utf32, - mbfl_no_encoding_utf32be, - mbfl_no_encoding_utf32le, - mbfl_no_encoding_utf16, - mbfl_no_encoding_utf16be, - mbfl_no_encoding_utf16le, - mbfl_no_encoding_utf8, - mbfl_no_encoding_utf8_docomo, - mbfl_no_encoding_utf8_kddi_a, - mbfl_no_encoding_utf8_kddi_b, - mbfl_no_encoding_utf8_sb, - mbfl_no_encoding_utf7, - mbfl_no_encoding_utf7imap, - mbfl_no_encoding_ascii, - mbfl_no_encoding_euc_jp, - mbfl_no_encoding_eucjp2004, - mbfl_no_encoding_sjis, - mbfl_no_encoding_eucjp_win, - mbfl_no_encoding_sjis_open, - mbfl_no_encoding_sjis_docomo, - mbfl_no_encoding_sjis_kddi, - mbfl_no_encoding_sjis_sb, - mbfl_no_encoding_sjis_mac, - mbfl_no_encoding_sjis2004, - mbfl_no_encoding_cp932, - mbfl_no_encoding_cp51932, - mbfl_no_encoding_jis, - mbfl_no_encoding_2022jp, - mbfl_no_encoding_2022jp_2004, - mbfl_no_encoding_2022jp_kddi, - mbfl_no_encoding_2022jpms, - mbfl_no_encoding_gb18030, - mbfl_no_encoding_cp1252, - mbfl_no_encoding_cp1254, - mbfl_no_encoding_8859_1, - mbfl_no_encoding_8859_2, - mbfl_no_encoding_8859_3, - mbfl_no_encoding_8859_4, - mbfl_no_encoding_8859_5, - mbfl_no_encoding_8859_6, - mbfl_no_encoding_8859_7, - mbfl_no_encoding_8859_8, - mbfl_no_encoding_8859_9, - mbfl_no_encoding_8859_10, - mbfl_no_encoding_8859_13, - mbfl_no_encoding_8859_14, - mbfl_no_encoding_8859_15, - mbfl_no_encoding_euc_cn, - mbfl_no_encoding_cp936, - mbfl_no_encoding_euc_tw, - mbfl_no_encoding_big5, - mbfl_no_encoding_cp950, - mbfl_no_encoding_euc_kr, - mbfl_no_encoding_2022kr, - mbfl_no_encoding_uhc, - mbfl_no_encoding_hz, - mbfl_no_encoding_cp1251, - mbfl_no_encoding_cp866, - mbfl_no_encoding_koi8r, - mbfl_no_encoding_koi8u, - mbfl_no_encoding_8859_16, - mbfl_no_encoding_armscii8, - mbfl_no_encoding_cp850, - mbfl_no_encoding_jis_ms, - mbfl_no_encoding_cp50220, - mbfl_no_encoding_cp50220raw, - mbfl_no_encoding_cp50221, - mbfl_no_encoding_cp50222, - mbfl_no_encoding_charset_max -}; - -typedef enum mbfl_no_encoding mbfl_encoding_id; - -struct _mbfl_convert_filter; -struct mbfl_convert_vtbl { - enum mbfl_no_encoding from; - enum mbfl_no_encoding to; - void (*filter_ctor)(struct _mbfl_convert_filter *filter); - void (*filter_dtor)(struct _mbfl_convert_filter *filter); - int (*filter_function)(int c, struct _mbfl_convert_filter *filter); - int (*filter_flush)(struct _mbfl_convert_filter *filter); - void (*filter_copy)(struct _mbfl_convert_filter *src, struct _mbfl_convert_filter *dest); -}; - -/* - * encoding - */ -typedef struct _mbfl_encoding { - enum mbfl_no_encoding no_encoding; - const char *name; - const char *mime_name; - const char *(*aliases)[]; - const unsigned char *mblen_table; - unsigned int flag; - const struct mbfl_convert_vtbl *input_filter; - const struct mbfl_convert_vtbl *output_filter; -} mbfl_encoding; - -MBFLAPI extern const mbfl_encoding * mbfl_name2encoding(const char *name); -MBFLAPI extern const mbfl_encoding * mbfl_no2encoding(enum mbfl_no_encoding no_encoding); -MBFLAPI extern enum mbfl_no_encoding mbfl_name2no_encoding(const char *name); -MBFLAPI extern const mbfl_encoding ** mbfl_get_supported_encodings(); -MBFLAPI extern const char * mbfl_no_encoding2name(enum mbfl_no_encoding no_encoding); -MBFLAPI extern const char * mbfl_no2preferred_mime_name(enum mbfl_no_encoding no_encoding); -MBFLAPI extern int mbfl_is_support_encoding(const char *name); - - -#endif /* MBFL_ENCODING_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_filter_output.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_filter_output.h deleted file mode 100644 index eeae05a..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_filter_output.h +++ /dev/null @@ -1,38 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. - * - * LICENSE NOTICES - * - * This file is part of "streamable kanji code filter and converter", - * which is distributed under the terms of GNU Lesser General Public - * License (version 2) as published by the Free Software Foundation. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with "streamable kanji code filter and converter"; - * if not, write to the Free Software Foundation, Inc., 59 Temple Place, - * Suite 330, Boston, MA 02111-1307 USA - * - * The author of this file: - * - */ -/* - * The source code included in this files was separated from mbfilter.h - * by Moriyoshi Koizumi on 20 Dec 2002. The file - * mbfilter.h is included in this package . - * - */ - -#ifndef MBFL_FILTER_OUTPUT_H -#define MBFL_FILTER_OUTPUT_H - -MBFLAPI extern int mbfl_filter_output_pipe(int c, void* data); -MBFLAPI extern int mbfl_filter_output_pipe_flush(void* data); -MBFLAPI extern int mbfl_filter_output_null(int c, void* data); - -#endif /* MBFL_FILTER_OUTPUT_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_ident.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_ident.h deleted file mode 100644 index 238132f..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_ident.h +++ /dev/null @@ -1,74 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. - * - * LICENSE NOTICES - * - * This file is part of "streamable kanji code filter and converter", - * which is distributed under the terms of GNU Lesser General Public - * License (version 2) as published by the Free Software Foundation. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with "streamable kanji code filter and converter"; - * if not, write to the Free Software Foundation, Inc., 59 Temple Place, - * Suite 330, Boston, MA 02111-1307 USA - * - * The author of this file: - * - */ -/* - * The source code included in this files was separated from mbfilter.h - * by Moriyoshi Koizumi on 20 Dec 2002. The file - * mbfilter.h is included in this package . - * - */ - -#ifndef MBFL_IDENT_H -#define MBFL_IDENT_H - -#include "mbfl_defs.h" -#include "mbfl_encoding.h" - -/* - * identify filter - */ -typedef struct _mbfl_identify_filter mbfl_identify_filter; - -struct _mbfl_identify_filter { - void (*filter_ctor)(mbfl_identify_filter *filter); - void (*filter_dtor)(mbfl_identify_filter *filter); - int (*filter_function)(int c, mbfl_identify_filter *filter); - int status; - int flag; - int score; - const mbfl_encoding *encoding; -}; - -struct mbfl_identify_vtbl { - enum mbfl_no_encoding encoding; - void (*filter_ctor)(mbfl_identify_filter *filter); - void (*filter_dtor)(mbfl_identify_filter *filter); - int (*filter_function)(int c, mbfl_identify_filter *filter); -}; - -MBFLAPI extern const struct mbfl_identify_vtbl * mbfl_identify_filter_get_vtbl(enum mbfl_no_encoding encoding); -MBFLAPI extern mbfl_identify_filter * mbfl_identify_filter_new(enum mbfl_no_encoding encoding); -MBFLAPI extern mbfl_identify_filter * mbfl_identify_filter_new2(const mbfl_encoding *encoding); -MBFLAPI extern void mbfl_identify_filter_delete(mbfl_identify_filter *filter); -MBFLAPI extern int mbfl_identify_filter_init(mbfl_identify_filter *filter, enum mbfl_no_encoding encoding); -MBFLAPI extern int mbfl_identify_filter_init2(mbfl_identify_filter *filter, const mbfl_encoding *encoding); -MBFLAPI void mbfl_identify_filter_cleanup(mbfl_identify_filter *filter); - -MBFLAPI extern void mbfl_filt_ident_common_ctor(mbfl_identify_filter *filter); -MBFLAPI extern void mbfl_filt_ident_common_dtor(mbfl_identify_filter *filter); -MBFLAPI extern void mbfl_filt_ident_false_ctor(mbfl_identify_filter *filter); - -MBFLAPI extern int mbfl_filt_ident_false(int c, mbfl_identify_filter *filter); -MBFLAPI extern int mbfl_filt_ident_true(int c, mbfl_identify_filter *filter); - -#endif /* MBFL_IDENT_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_language.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_language.h deleted file mode 100644 index a0a7389..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_language.h +++ /dev/null @@ -1,87 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. - * - * LICENSE NOTICES - * - * This file is part of "streamable kanji code filter and converter", - * which is distributed under the terms of GNU Lesser General Public - * License (version 2) as published by the Free Software Foundation. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with "streamable kanji code filter and converter"; - * if not, write to the Free Software Foundation, Inc., 59 Temple Place, - * Suite 330, Boston, MA 02111-1307 USA - * - * The author of this file: - * - */ -/* - * The source code included in this files was separated from mbfilter.h - * by Moriyoshi Koizumi on 20 Dec 2002. The file - * mbfilter.h is included in this package . - * - */ - -#ifndef MBFL_LANGUAGE_H -#define MBFL_LANGUAGE_H - -#include "mbfl_defs.h" -#include "mbfl_encoding.h" - -enum mbfl_no_language { - mbfl_no_language_invalid = -1, - mbfl_no_language_neutral, - mbfl_no_language_uni, - mbfl_no_language_min, - mbfl_no_language_catalan, /* ca */ - mbfl_no_language_danish, /* da */ - mbfl_no_language_german, /* de */ - mbfl_no_language_english, /* en */ - mbfl_no_language_estonian, /* et */ - mbfl_no_language_greek, /* el */ - mbfl_no_language_spanish, /* es */ - mbfl_no_language_french, /* fr */ - mbfl_no_language_italian, /* it */ - mbfl_no_language_japanese, /* ja */ - mbfl_no_language_korean, /* ko */ - mbfl_no_language_dutch, /* nl */ - mbfl_no_language_polish, /* pl */ - mbfl_no_language_portuguese, /* pt */ - mbfl_no_language_swedish, /* sv */ - mbfl_no_language_simplified_chinese, /* zh-cn */ - mbfl_no_language_traditional_chinese, /* zh-tw */ - mbfl_no_language_russian, /* ru */ - mbfl_no_language_ukrainian, /* ua */ - mbfl_no_language_armenian, /* hy */ - mbfl_no_language_turkish, /* tr */ - mbfl_no_language_max -}; - -typedef enum mbfl_no_language mbfl_language_id; - -/* - * language - */ -typedef struct _mbfl_language { - enum mbfl_no_language no_language; - const char *name; - const char *short_name; - const char *(*aliases)[]; - enum mbfl_no_encoding mail_charset; - enum mbfl_no_encoding mail_header_encoding; - enum mbfl_no_encoding mail_body_encoding; -} mbfl_language; - -MBFLAPI extern const mbfl_language * mbfl_name2language(const char *name); -MBFLAPI extern const mbfl_language * mbfl_no2language(enum mbfl_no_language no_language); -MBFLAPI extern enum mbfl_no_language mbfl_name2no_language(const char *name); -MBFLAPI extern const char * mbfl_no_language2name(enum mbfl_no_language no_language); - - -#endif /* MBFL_LANGUAGE_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_memory_device.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_memory_device.h deleted file mode 100644 index d85a10f..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_memory_device.h +++ /dev/null @@ -1,76 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. - * - * LICENSE NOTICES - * - * This file is part of "streamable kanji code filter and converter", - * which is distributed under the terms of GNU Lesser General Public - * License (version 2) as published by the Free Software Foundation. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with "streamable kanji code filter and converter"; - * if not, write to the Free Software Foundation, Inc., 59 Temple Place, - * Suite 330, Boston, MA 02111-1307 USA - * - * The author of this file: - * - */ -/* - * The source code included in this files was separated from mbfilter.h - * by Moriyoshi Koizumi on 20 Dec 2002. The file - * mbfilter.h is included in this package . - * - */ - -#ifndef MBFL_MEMORY_DEVICE_H -#define MBFL_MEMORY_DEVICE_H - -#include "mbfl_defs.h" -#include "mbfl_string.h" - -#define MBFL_MEMORY_DEVICE_ALLOC_SIZE 64 - -typedef struct _mbfl_memory_device { - unsigned char *buffer; - size_t length; - size_t pos; - size_t allocsz; -} mbfl_memory_device; - -typedef struct _mbfl_wchar_device { - unsigned int *buffer; - size_t length; - size_t pos; - size_t allocsz; -} mbfl_wchar_device; - -MBFLAPI extern void mbfl_memory_device_init( - mbfl_memory_device *device, size_t initsz, size_t allocsz); -MBFLAPI extern void mbfl_memory_device_realloc( - mbfl_memory_device *device, size_t initsz, size_t allocsz); -MBFLAPI extern void mbfl_memory_device_clear(mbfl_memory_device *device); -MBFLAPI extern void mbfl_memory_device_reset(mbfl_memory_device *device); -MBFLAPI extern mbfl_string * mbfl_memory_device_result( - mbfl_memory_device *device, mbfl_string *result); -MBFLAPI extern void mbfl_memory_device_unput(mbfl_memory_device *device); -MBFLAPI extern int mbfl_memory_device_output(int c, void *data); -MBFLAPI extern int mbfl_memory_device_output2(int c, void *data); -MBFLAPI extern int mbfl_memory_device_output4(int c, void *data); -MBFLAPI extern int mbfl_memory_device_strcat(mbfl_memory_device *device, const char *psrc); -MBFLAPI extern int mbfl_memory_device_strncat( - mbfl_memory_device *device, const char *psrc, size_t len); -MBFLAPI extern int mbfl_memory_device_devcat(mbfl_memory_device *dest, mbfl_memory_device *src); - -MBFLAPI extern void mbfl_wchar_device_init(mbfl_wchar_device *device); -MBFLAPI extern int mbfl_wchar_device_output(int c, void *data); -MBFLAPI extern void mbfl_wchar_device_clear(mbfl_wchar_device *device); - - - -#endif /* MBFL_MEMORY_DEVICE_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_string.h b/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_string.h deleted file mode 100644 index 43f4a5f..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/libmbfl/mbfl/mbfl_string.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - * "streamable kanji code filter and converter" - * Copyright (c) 1998-2002 HappySize, Inc. All rights reserved. - * - * LICENSE NOTICES - * - * This file is part of "streamable kanji code filter and converter", - * which is distributed under the terms of GNU Lesser General Public - * License (version 2) as published by the Free Software Foundation. - * - * This software is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with "streamable kanji code filter and converter"; - * if not, write to the Free Software Foundation, Inc., 59 Temple Place, - * Suite 330, Boston, MA 02111-1307 USA - * - * The author of this file: - * - */ -/* - * The source code included in this files was separated from mbfilter.h - * by Moriyoshi Koizumi on 20 Dec 2002. The file - * mbfilter.h is included in this package . - * - */ - -#ifndef MBFL_STRING_H -#define MBFL_STRING_H - -#include -#include "mbfl_defs.h" -#include "mbfl_encoding.h" -#include "mbfl_language.h" - -/* - * string object - */ -typedef struct _mbfl_string { - enum mbfl_no_language no_language; - const mbfl_encoding *encoding; - unsigned char *val; - size_t len; -} mbfl_string; - -MBFLAPI extern void mbfl_string_init(mbfl_string *string); -MBFLAPI extern void mbfl_string_init_set(mbfl_string *string, mbfl_language_id no_language, const mbfl_encoding *encoding); -MBFLAPI extern void mbfl_string_clear(mbfl_string *string); - -#ifndef NULL -#define NULL 0 -#endif - -#endif /* MBFL_STRING_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/mbstring.h b/7.4.27/mac/include/php/ext/mbstring/mbstring.h deleted file mode 100644 index eb2d0bc..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/mbstring.h +++ /dev/null @@ -1,203 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Tsukada Takuya | - | Hironori Sato | - | Shigeru Kanemoto | - +----------------------------------------------------------------------+ - */ - -#ifndef _MBSTRING_H -#define _MBSTRING_H - -#ifdef COMPILE_DL_MBSTRING -#undef HAVE_MBSTRING -#define HAVE_MBSTRING 1 -#endif - -#include "php_version.h" -#define PHP_MBSTRING_VERSION PHP_VERSION - -#ifdef PHP_WIN32 -# undef MBSTRING_API -# ifdef MBSTRING_EXPORTS -# define MBSTRING_API __declspec(dllexport) -# elif defined(COMPILE_DL_MBSTRING) -# define MBSTRING_API __declspec(dllimport) -# else -# define MBSTRING_API /* nothing special */ -# endif -#elif defined(__GNUC__) && __GNUC__ >= 4 -# undef MBSTRING_API -# define MBSTRING_API __attribute__ ((visibility("default"))) -#else -# undef MBSTRING_API -# define MBSTRING_API /* nothing special */ -#endif - - -#if HAVE_MBSTRING - -#include "libmbfl/mbfl/mbfilter.h" -#include "SAPI.h" - -#define PHP_MBSTRING_API 20021024 - -extern zend_module_entry mbstring_module_entry; -#define mbstring_module_ptr &mbstring_module_entry - -PHP_MINIT_FUNCTION(mbstring); -PHP_MSHUTDOWN_FUNCTION(mbstring); -PHP_RINIT_FUNCTION(mbstring); -PHP_RSHUTDOWN_FUNCTION(mbstring); -PHP_MINFO_FUNCTION(mbstring); - -/* functions in php_unicode.c */ -PHP_FUNCTION(mb_convert_case); -PHP_FUNCTION(mb_strtoupper); -PHP_FUNCTION(mb_strtolower); - -/* php function registration */ -PHP_FUNCTION(mb_language); -PHP_FUNCTION(mb_internal_encoding); -PHP_FUNCTION(mb_http_input); -PHP_FUNCTION(mb_http_output); -PHP_FUNCTION(mb_detect_order); -PHP_FUNCTION(mb_substitute_character); -PHP_FUNCTION(mb_preferred_mime_name); -PHP_FUNCTION(mb_parse_str); -PHP_FUNCTION(mb_output_handler); -PHP_FUNCTION(mb_str_split); -PHP_FUNCTION(mb_strlen); -PHP_FUNCTION(mb_strpos); -PHP_FUNCTION(mb_strrpos); -PHP_FUNCTION(mb_stripos); -PHP_FUNCTION(mb_strripos); -PHP_FUNCTION(mb_strstr); -PHP_FUNCTION(mb_strrchr); -PHP_FUNCTION(mb_stristr); -PHP_FUNCTION(mb_strrichr); -PHP_FUNCTION(mb_substr_count); -PHP_FUNCTION(mb_substr); -PHP_FUNCTION(mb_strcut); -PHP_FUNCTION(mb_strwidth); -PHP_FUNCTION(mb_strimwidth); -PHP_FUNCTION(mb_convert_encoding); -PHP_FUNCTION(mb_detect_encoding); -PHP_FUNCTION(mb_list_encodings); -PHP_FUNCTION(mb_encoding_aliases); -PHP_FUNCTION(mb_convert_kana); -PHP_FUNCTION(mb_encode_mimeheader); -PHP_FUNCTION(mb_decode_mimeheader); -PHP_FUNCTION(mb_convert_variables); -PHP_FUNCTION(mb_encode_numericentity); -PHP_FUNCTION(mb_decode_numericentity); -PHP_FUNCTION(mb_send_mail); -PHP_FUNCTION(mb_get_info); -PHP_FUNCTION(mb_check_encoding); -PHP_FUNCTION(mb_ord); -PHP_FUNCTION(mb_chr); -PHP_FUNCTION(mb_scrub); - - -MBSTRING_API char *php_mb_safe_strrchr_ex(const char *s, unsigned int c, - size_t nbytes, const mbfl_encoding *enc); -MBSTRING_API char *php_mb_safe_strrchr(const char *s, unsigned int c, - size_t nbytes); - -MBSTRING_API char *php_mb_convert_encoding_ex( - const char *input, size_t length, - const mbfl_encoding *to_encoding, const mbfl_encoding *from_encoding, size_t *output_len); -MBSTRING_API char * php_mb_convert_encoding(const char *input, size_t length, - const char *_to_encoding, - const char *_from_encodings, - size_t *output_len); - -MBSTRING_API size_t php_mb_mbchar_bytes_ex(const char *s, const mbfl_encoding *enc); -MBSTRING_API size_t php_mb_mbchar_bytes(const char *s); - -MBSTRING_API size_t php_mb_stripos(int mode, const char *old_haystack, size_t old_haystack_len, const char *old_needle, size_t old_needle_len, zend_long offset, zend_string *from_encoding); -MBSTRING_API int php_mb_check_encoding(const char *input, size_t length, const char *enc); - -ZEND_BEGIN_MODULE_GLOBALS(mbstring) - char *internal_encoding_name; - const mbfl_encoding *internal_encoding; - const mbfl_encoding *current_internal_encoding; - const mbfl_encoding *http_output_encoding; - const mbfl_encoding *current_http_output_encoding; - const mbfl_encoding *http_input_identify; - const mbfl_encoding *http_input_identify_get; - const mbfl_encoding *http_input_identify_post; - const mbfl_encoding *http_input_identify_cookie; - const mbfl_encoding *http_input_identify_string; - const mbfl_encoding **http_input_list; - size_t http_input_list_size; - const mbfl_encoding **detect_order_list; - size_t detect_order_list_size; - const mbfl_encoding **current_detect_order_list; - size_t current_detect_order_list_size; - enum mbfl_no_encoding *default_detect_order_list; - size_t default_detect_order_list_size; - int filter_illegal_mode; - int filter_illegal_substchar; - int current_filter_illegal_mode; - int current_filter_illegal_substchar; - zend_long func_overload; - enum mbfl_no_language language; - zend_bool encoding_translation; - zend_bool strict_detection; - size_t illegalchars; - mbfl_buffer_converter *outconv; - void *http_output_conv_mimetypes; -#if HAVE_MBREGEX - struct _zend_mb_regex_globals *mb_regex_globals; - zend_long regex_stack_limit; -#endif - zend_string *last_used_encoding_name; - const mbfl_encoding *last_used_encoding; - /* Whether an explicit internal_encoding / http_output / http_input encoding was set. */ - zend_bool internal_encoding_set; - zend_bool http_output_set; - zend_bool http_input_set; -#if HAVE_MBREGEX - zend_long regex_retry_limit; -#endif -ZEND_END_MODULE_GLOBALS(mbstring) - -#define MB_OVERLOAD_MAIL 1 -#define MB_OVERLOAD_STRING 2 -#define MB_OVERLOAD_REGEX 4 - -struct mb_overload_def { - int type; - char *orig_func; - char *ovld_func; - char *save_func; -}; - -#define MBSTRG(v) ZEND_MODULE_GLOBALS_ACCESSOR(mbstring, v) - -#if defined(ZTS) && defined(COMPILE_DL_MBSTRING) -ZEND_TSRMLS_CACHE_EXTERN() -#endif - -#else /* HAVE_MBSTRING */ - -#define mbstring_module_ptr NULL - -#endif /* HAVE_MBSTRING */ - -#define phpext_mbstring_ptr mbstring_module_ptr - -#endif /* _MBSTRING_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/php_mbregex.h b/7.4.27/mac/include/php/ext/mbstring/php_mbregex.h deleted file mode 100644 index 497458e..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/php_mbregex.h +++ /dev/null @@ -1,97 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Moriyoshi Koizumi | - +----------------------------------------------------------------------+ - */ - -#ifndef _PHP_MBREGEX_H -#define _PHP_MBREGEX_H - -#if HAVE_MBREGEX - -#include "php.h" -#include "zend.h" - -/* {{{ PHP_MBREGEX_FUNCTION_ENTRIES */ -#define PHP_MBREGEX_FUNCTION_ENTRIES \ - PHP_FE(mb_regex_encoding, arginfo_mb_regex_encoding) \ - PHP_FE(mb_regex_set_options, arginfo_mb_regex_set_options) \ - PHP_FE(mb_ereg, arginfo_mb_ereg) \ - PHP_FE(mb_eregi, arginfo_mb_eregi) \ - PHP_FE(mb_ereg_replace, arginfo_mb_ereg_replace) \ - PHP_FE(mb_eregi_replace, arginfo_mb_eregi_replace) \ - PHP_FE(mb_ereg_replace_callback, arginfo_mb_ereg_replace_callback) \ - PHP_FE(mb_split, arginfo_mb_split) \ - PHP_FE(mb_ereg_match, arginfo_mb_ereg_match) \ - PHP_FE(mb_ereg_search, arginfo_mb_ereg_search) \ - PHP_FE(mb_ereg_search_pos, arginfo_mb_ereg_search_pos) \ - PHP_FE(mb_ereg_search_regs, arginfo_mb_ereg_search_regs) \ - PHP_FE(mb_ereg_search_init, arginfo_mb_ereg_search_init) \ - PHP_FE(mb_ereg_search_getregs, arginfo_mb_ereg_search_getregs) \ - PHP_FE(mb_ereg_search_getpos, arginfo_mb_ereg_search_getpos) \ - PHP_FE(mb_ereg_search_setpos, arginfo_mb_ereg_search_setpos) \ - PHP_DEP_FALIAS(mbregex_encoding, mb_regex_encoding, arginfo_mb_regex_encoding) \ - PHP_DEP_FALIAS(mbereg, mb_ereg, arginfo_mb_ereg) \ - PHP_DEP_FALIAS(mberegi, mb_eregi, arginfo_mb_eregi) \ - PHP_DEP_FALIAS(mbereg_replace, mb_ereg_replace, arginfo_mb_ereg_replace) \ - PHP_DEP_FALIAS(mberegi_replace, mb_eregi_replace, arginfo_mb_eregi_replace) \ - PHP_DEP_FALIAS(mbsplit, mb_split, arginfo_mb_split) \ - PHP_DEP_FALIAS(mbereg_match, mb_ereg_match, arginfo_mb_ereg_match) \ - PHP_DEP_FALIAS(mbereg_search, mb_ereg_search, arginfo_mb_ereg_search) \ - PHP_DEP_FALIAS(mbereg_search_pos, mb_ereg_search_pos, arginfo_mb_ereg_search_pos) \ - PHP_DEP_FALIAS(mbereg_search_regs, mb_ereg_search_regs, arginfo_mb_ereg_search_regs) \ - PHP_DEP_FALIAS(mbereg_search_init, mb_ereg_search_init, arginfo_mb_ereg_search_init) \ - PHP_DEP_FALIAS(mbereg_search_getregs, mb_ereg_search_getregs, arginfo_mb_ereg_search_getregs) \ - PHP_DEP_FALIAS(mbereg_search_getpos, mb_ereg_search_getpos, arginfo_mb_ereg_search_getpos) \ - PHP_DEP_FALIAS(mbereg_search_setpos, mb_ereg_search_setpos, arginfo_mb_ereg_search_setpos) -/* }}} */ - -#define PHP_MBREGEX_MAXCACHE 50 - -PHP_MINIT_FUNCTION(mb_regex); -PHP_MSHUTDOWN_FUNCTION(mb_regex); -PHP_RINIT_FUNCTION(mb_regex); -PHP_RSHUTDOWN_FUNCTION(mb_regex); -PHP_MINFO_FUNCTION(mb_regex); - -typedef struct _zend_mb_regex_globals zend_mb_regex_globals; - -zend_mb_regex_globals *php_mb_regex_globals_alloc(void); -void php_mb_regex_globals_free(zend_mb_regex_globals *pglobals); -int php_mb_regex_set_mbctype(const char *enc); -int php_mb_regex_set_default_mbctype(const char *encname); -const char *php_mb_regex_get_mbctype(void); -const char *php_mb_regex_get_default_mbctype(void); - -PHP_FUNCTION(mb_regex_encoding); -PHP_FUNCTION(mb_ereg); -PHP_FUNCTION(mb_eregi); -PHP_FUNCTION(mb_ereg_replace); -PHP_FUNCTION(mb_eregi_replace); -PHP_FUNCTION(mb_ereg_replace_callback); -PHP_FUNCTION(mb_split); -PHP_FUNCTION(mb_ereg_match); -PHP_FUNCTION(mb_ereg_search); -PHP_FUNCTION(mb_ereg_search_pos); -PHP_FUNCTION(mb_ereg_search_regs); -PHP_FUNCTION(mb_ereg_search_init); -PHP_FUNCTION(mb_ereg_search_getregs); -PHP_FUNCTION(mb_ereg_search_getpos); -PHP_FUNCTION(mb_ereg_search_setpos); -PHP_FUNCTION(mb_regex_set_options); - -#endif /* HAVE_MBREGEX */ - -#endif /* _PHP_MBREGEX_H */ diff --git a/7.4.27/mac/include/php/ext/mbstring/php_onig_compat.h b/7.4.27/mac/include/php/ext/mbstring/php_onig_compat.h deleted file mode 100644 index c97ba0c..0000000 --- a/7.4.27/mac/include/php/ext/mbstring/php_onig_compat.h +++ /dev/null @@ -1,8 +0,0 @@ -#ifndef _PHP_ONIG_COMPAT_H -#define _PHP_ONIG_COMPAT_H - -#define re_pattern_buffer php_mb_re_pattern_buffer -#define regex_t php_mb_regex_t -#define re_registers php_mb_re_registers - -#endif /* _PHP_ONIG_COMPAT_H */ diff --git a/7.4.27/mac/include/php/ext/msgpack/php_msgpack.h b/7.4.27/mac/include/php/ext/msgpack/php_msgpack.h deleted file mode 100644 index ecdf5e7..0000000 --- a/7.4.27/mac/include/php/ext/msgpack/php_msgpack.h +++ /dev/null @@ -1,61 +0,0 @@ -#ifndef PHP_MSGPACK_H -#define PHP_MSGPACK_H - -#include "Zend/zend_smart_str.h" /* for smart_string */ - -#define PHP_MSGPACK_VERSION "2.1.2" - -extern zend_module_entry msgpack_module_entry; -#define phpext_msgpack_ptr &msgpack_module_entry - -#ifdef PHP_WIN32 -# define PHP_MSGPACK_API __declspec(dllexport) -#elif defined(__GNUC__) && __GNUC__ >= 4 -# define PHP_MSGPACK_API __attribute__ ((visibility("default"))) -#else -# define PHP_MSGPACK_API -#endif - -#ifdef ZTS -#include "TSRM.h" -#endif - -ZEND_BEGIN_MODULE_GLOBALS(msgpack) - zend_bool error_display; - zend_bool php_only; - zend_bool illegal_key_insert; - zend_bool use_str8_serialization; - struct { - void *var_hash; - unsigned level; - } serialize; -ZEND_END_MODULE_GLOBALS(msgpack) - -ZEND_EXTERN_MODULE_GLOBALS(msgpack) - -#ifdef ZTS -#define MSGPACK_G(v) TSRMG(msgpack_globals_id, zend_msgpack_globals *, v) -#else -#define MSGPACK_G(v) (msgpack_globals.v) -#endif - -PHP_MSGPACK_API void php_msgpack_serialize( - smart_str *buf, zval *val); -PHP_MSGPACK_API int php_msgpack_unserialize( - zval *return_value, char *str, size_t str_len); - -#ifdef WORDS_BIGENDIAN -# define MSGPACK_ENDIAN_BIG_BYTE 1 -# define MSGPACK_ENDIAN_LITTLE_BYTE 0 -#else -# define MSGPACK_ENDIAN_LITTLE_BYTE 1 -# define MSGPACK_ENDIAN_BIG_BYTE 0 -#endif - -#if PHP_VERSION_ID < 80000 -# define OBJ_FOR_PROP(zv) (zv) -#else -# define OBJ_FOR_PROP(zv) Z_OBJ_P(zv) -#endif - -#endif /* PHP_MSGPACK_H */ diff --git a/7.4.27/mac/include/php/ext/pcre/pcre2lib/config.h b/7.4.27/mac/include/php/ext/pcre/pcre2lib/config.h deleted file mode 100644 index 7864897..0000000 --- a/7.4.27/mac/include/php/ext/pcre/pcre2lib/config.h +++ /dev/null @@ -1,100 +0,0 @@ - -#include - -#ifdef PHP_WIN32 -# include -#else -# include -#endif - -#define SUPPORT_UNICODE 1 -#define SUPPORT_PCRE2_8 1 - -#if defined(__GNUC__) && __GNUC__ >= 4 -# ifdef __cplusplus -# define PCRE2_EXP_DECL extern "C" __attribute__ ((visibility("default"))) -# else -# define PCRE2_EXP_DECL extern __attribute__ ((visibility("default"))) -# endif -# define PCRE2_EXP_DEFN __attribute__ ((visibility("default"))) -#endif - -/* Define to any value for valgrind support to find invalid memory reads. */ -#if HAVE_PCRE_VALGRIND_SUPPORT -#define SUPPORT_VALGRIND 1 -#endif - -/* Define to any value to enable support for Just-In-Time compiling. */ -#if HAVE_PCRE_JIT_SUPPORT -#define SUPPORT_JIT -#endif - -/* This limits the amount of memory that pcre2_match() may use while matching - a pattern. The value is in kilobytes. */ -#ifndef HEAP_LIMIT -#define HEAP_LIMIT 20000000 -#endif - -/* The value of PARENS_NEST_LIMIT specifies the maximum depth of nested - parentheses (of any kind) in a pattern. This limits the amount of system - stack that is used while compiling a pattern. */ -#ifndef PARENS_NEST_LIMIT -#define PARENS_NEST_LIMIT 250 -#endif - -/* The value of MATCH_LIMIT determines the default number of times the - pcre2_match() function can record a backtrack position during a single - matching attempt. There is a runtime interface for setting a different - limit. The limit exists in order to catch runaway regular expressions that - take for ever to determine that they do not match. The default is set very - large so that it does not accidentally catch legitimate cases. */ -#ifndef MATCH_LIMIT -#define MATCH_LIMIT 10000000 -#endif - -/* The above limit applies to all backtracks, whether or not they are nested. - In some environments it is desirable to limit the nesting of backtracking - (that is, the depth of tree that is searched) more strictly, in order to - restrict the maximum amount of heap memory that is used. The value of - MATCH_LIMIT_DEPTH provides this facility. To have any useful effect, it - must be less than the value of MATCH_LIMIT. The default is to use the same - value as MATCH_LIMIT. There is a runtime method for setting a different - limit. */ -#ifndef MATCH_LIMIT_DEPTH -#define MATCH_LIMIT_DEPTH MATCH_LIMIT -#endif - -/* This limit is parameterized just in case anybody ever wants to change it. - Care must be taken if it is increased, because it guards against integer - overflow caused by enormously large patterns. */ -#ifndef MAX_NAME_COUNT -#define MAX_NAME_COUNT 10000 -#endif - -/* This limit is parameterized just in case anybody ever wants to change it. - Care must be taken if it is increased, because it guards against integer - overflow caused by enormously large patterns. */ -#ifndef MAX_NAME_SIZE -#define MAX_NAME_SIZE 32 -#endif - -/* Defining NEVER_BACKSLASH_C locks out the use of \C in all patterns. */ -/* #undef NEVER_BACKSLASH_C */ - -/* The value of NEWLINE_DEFAULT determines the default newline character - sequence. PCRE2 client programs can override this by selecting other values - at run time. The valid values are 1 (CR), 2 (LF), 3 (CRLF), 4 (ANY), 5 - (ANYCRLF), and 6 (NUL). */ -#ifndef NEWLINE_DEFAULT -#define NEWLINE_DEFAULT 2 -#endif - -/* The value of LINK_SIZE determines the number of bytes used to store links - as offsets within the compiled regex. The default is 2, which allows for - compiled patterns up to 64K long. This covers the vast majority of cases. - However, PCRE2 can also be compiled to use 3 or 4 bytes instead. This - allows for longer patterns in extreme cases. */ -#ifndef LINK_SIZE -#define LINK_SIZE 2 -#endif - diff --git a/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2.h b/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2.h deleted file mode 100644 index 4a42a79..0000000 --- a/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2.h +++ /dev/null @@ -1,991 +0,0 @@ -/************************************************* -* Perl-Compatible Regular Expressions * -*************************************************/ - -/* This is the public header file for the PCRE library, second API, to be -#included by applications that call PCRE2 functions. - - Copyright (c) 2016-2020 University of Cambridge - ------------------------------------------------------------------------------ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of the University of Cambridge nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------ -*/ - -#ifndef PCRE2_H_IDEMPOTENT_GUARD -#define PCRE2_H_IDEMPOTENT_GUARD - -/* The current PCRE version information. */ - -#define PCRE2_MAJOR 10 -#define PCRE2_MINOR 35 -#define PCRE2_PRERELEASE -#define PCRE2_DATE 2020-05-09 - -/* When an application links to a PCRE DLL in Windows, the symbols that are -imported have to be identified as such. When building PCRE2, the appropriate -export setting is defined in pcre2_internal.h, which includes this file. So we -don't change existing definitions of PCRE2_EXP_DECL. */ - -#if defined(_WIN32) && !defined(PCRE2_STATIC) -# ifndef PCRE2_EXP_DECL -# define PCRE2_EXP_DECL extern __declspec(dllimport) -# endif -#endif - -/* By default, we use the standard "extern" declarations. */ - -#ifndef PCRE2_EXP_DECL -# ifdef __cplusplus -# define PCRE2_EXP_DECL extern "C" -# else -# define PCRE2_EXP_DECL extern -# endif -#endif - -/* When compiling with the MSVC compiler, it is sometimes necessary to include -a "calling convention" before exported function names. (This is secondhand -information; I know nothing about MSVC myself). For example, something like - - void __cdecl function(....) - -might be needed. In order so make this easy, all the exported functions have -PCRE2_CALL_CONVENTION just before their names. It is rarely needed; if not -set, we ensure here that it has no effect. */ - -#ifndef PCRE2_CALL_CONVENTION -#define PCRE2_CALL_CONVENTION -#endif - -/* Have to include limits.h, stdlib.h, and inttypes.h to ensure that size_t and -uint8_t, UCHAR_MAX, etc are defined. Some systems that do have inttypes.h do -not have stdint.h, which is why we use inttypes.h, which according to the C -standard is a superset of stdint.h. If none of these headers are available, -the relevant values must be provided by some other means. */ - -#include -#include -#include - -/* Allow for C++ users compiling this directly. */ - -#ifdef __cplusplus -extern "C" { -#endif - -/* The following option bits can be passed to pcre2_compile(), pcre2_match(), -or pcre2_dfa_match(). PCRE2_NO_UTF_CHECK affects only the function to which it -is passed. Put these bits at the most significant end of the options word so -others can be added next to them */ - -#define PCRE2_ANCHORED 0x80000000u -#define PCRE2_NO_UTF_CHECK 0x40000000u -#define PCRE2_ENDANCHORED 0x20000000u - -/* The following option bits can be passed only to pcre2_compile(). However, -they may affect compilation, JIT compilation, and/or interpretive execution. -The following tags indicate which: - -C alters what is compiled by pcre2_compile() -J alters what is compiled by pcre2_jit_compile() -M is inspected during pcre2_match() execution -D is inspected during pcre2_dfa_match() execution -*/ - -#define PCRE2_ALLOW_EMPTY_CLASS 0x00000001u /* C */ -#define PCRE2_ALT_BSUX 0x00000002u /* C */ -#define PCRE2_AUTO_CALLOUT 0x00000004u /* C */ -#define PCRE2_CASELESS 0x00000008u /* C */ -#define PCRE2_DOLLAR_ENDONLY 0x00000010u /* J M D */ -#define PCRE2_DOTALL 0x00000020u /* C */ -#define PCRE2_DUPNAMES 0x00000040u /* C */ -#define PCRE2_EXTENDED 0x00000080u /* C */ -#define PCRE2_FIRSTLINE 0x00000100u /* J M D */ -#define PCRE2_MATCH_UNSET_BACKREF 0x00000200u /* C J M */ -#define PCRE2_MULTILINE 0x00000400u /* C */ -#define PCRE2_NEVER_UCP 0x00000800u /* C */ -#define PCRE2_NEVER_UTF 0x00001000u /* C */ -#define PCRE2_NO_AUTO_CAPTURE 0x00002000u /* C */ -#define PCRE2_NO_AUTO_POSSESS 0x00004000u /* C */ -#define PCRE2_NO_DOTSTAR_ANCHOR 0x00008000u /* C */ -#define PCRE2_NO_START_OPTIMIZE 0x00010000u /* J M D */ -#define PCRE2_UCP 0x00020000u /* C J M D */ -#define PCRE2_UNGREEDY 0x00040000u /* C */ -#define PCRE2_UTF 0x00080000u /* C J M D */ -#define PCRE2_NEVER_BACKSLASH_C 0x00100000u /* C */ -#define PCRE2_ALT_CIRCUMFLEX 0x00200000u /* J M D */ -#define PCRE2_ALT_VERBNAMES 0x00400000u /* C */ -#define PCRE2_USE_OFFSET_LIMIT 0x00800000u /* J M D */ -#define PCRE2_EXTENDED_MORE 0x01000000u /* C */ -#define PCRE2_LITERAL 0x02000000u /* C */ -#define PCRE2_MATCH_INVALID_UTF 0x04000000u /* J M D */ - -/* An additional compile options word is available in the compile context. */ - -#define PCRE2_EXTRA_ALLOW_SURROGATE_ESCAPES 0x00000001u /* C */ -#define PCRE2_EXTRA_BAD_ESCAPE_IS_LITERAL 0x00000002u /* C */ -#define PCRE2_EXTRA_MATCH_WORD 0x00000004u /* C */ -#define PCRE2_EXTRA_MATCH_LINE 0x00000008u /* C */ -#define PCRE2_EXTRA_ESCAPED_CR_IS_LF 0x00000010u /* C */ -#define PCRE2_EXTRA_ALT_BSUX 0x00000020u /* C */ - -/* These are for pcre2_jit_compile(). */ - -#define PCRE2_JIT_COMPLETE 0x00000001u /* For full matching */ -#define PCRE2_JIT_PARTIAL_SOFT 0x00000002u -#define PCRE2_JIT_PARTIAL_HARD 0x00000004u -#define PCRE2_JIT_INVALID_UTF 0x00000100u - -/* These are for pcre2_match(), pcre2_dfa_match(), pcre2_jit_match(), and -pcre2_substitute(). Some are allowed only for one of the functions, and in -these cases it is noted below. Note that PCRE2_ANCHORED, PCRE2_ENDANCHORED and -PCRE2_NO_UTF_CHECK can also be passed to these functions (though -pcre2_jit_match() ignores the latter since it bypasses all sanity checks). */ - -#define PCRE2_NOTBOL 0x00000001u -#define PCRE2_NOTEOL 0x00000002u -#define PCRE2_NOTEMPTY 0x00000004u /* ) These two must be kept */ -#define PCRE2_NOTEMPTY_ATSTART 0x00000008u /* ) adjacent to each other. */ -#define PCRE2_PARTIAL_SOFT 0x00000010u -#define PCRE2_PARTIAL_HARD 0x00000020u -#define PCRE2_DFA_RESTART 0x00000040u /* pcre2_dfa_match() only */ -#define PCRE2_DFA_SHORTEST 0x00000080u /* pcre2_dfa_match() only */ -#define PCRE2_SUBSTITUTE_GLOBAL 0x00000100u /* pcre2_substitute() only */ -#define PCRE2_SUBSTITUTE_EXTENDED 0x00000200u /* pcre2_substitute() only */ -#define PCRE2_SUBSTITUTE_UNSET_EMPTY 0x00000400u /* pcre2_substitute() only */ -#define PCRE2_SUBSTITUTE_UNKNOWN_UNSET 0x00000800u /* pcre2_substitute() only */ -#define PCRE2_SUBSTITUTE_OVERFLOW_LENGTH 0x00001000u /* pcre2_substitute() only */ -#define PCRE2_NO_JIT 0x00002000u /* Not for pcre2_dfa_match() */ -#define PCRE2_COPY_MATCHED_SUBJECT 0x00004000u -#define PCRE2_SUBSTITUTE_LITERAL 0x00008000u /* pcre2_substitute() only */ -#define PCRE2_SUBSTITUTE_MATCHED 0x00010000u /* pcre2_substitute() only */ -#define PCRE2_SUBSTITUTE_REPLACEMENT_ONLY 0x00020000u /* pcre2_substitute() only */ - -/* Options for pcre2_pattern_convert(). */ - -#define PCRE2_CONVERT_UTF 0x00000001u -#define PCRE2_CONVERT_NO_UTF_CHECK 0x00000002u -#define PCRE2_CONVERT_POSIX_BASIC 0x00000004u -#define PCRE2_CONVERT_POSIX_EXTENDED 0x00000008u -#define PCRE2_CONVERT_GLOB 0x00000010u -#define PCRE2_CONVERT_GLOB_NO_WILD_SEPARATOR 0x00000030u -#define PCRE2_CONVERT_GLOB_NO_STARSTAR 0x00000050u - -/* Newline and \R settings, for use in compile contexts. The newline values -must be kept in step with values set in config.h and both sets must all be -greater than zero. */ - -#define PCRE2_NEWLINE_CR 1 -#define PCRE2_NEWLINE_LF 2 -#define PCRE2_NEWLINE_CRLF 3 -#define PCRE2_NEWLINE_ANY 4 -#define PCRE2_NEWLINE_ANYCRLF 5 -#define PCRE2_NEWLINE_NUL 6 - -#define PCRE2_BSR_UNICODE 1 -#define PCRE2_BSR_ANYCRLF 2 - -/* Error codes for pcre2_compile(). Some of these are also used by -pcre2_pattern_convert(). */ - -#define PCRE2_ERROR_END_BACKSLASH 101 -#define PCRE2_ERROR_END_BACKSLASH_C 102 -#define PCRE2_ERROR_UNKNOWN_ESCAPE 103 -#define PCRE2_ERROR_QUANTIFIER_OUT_OF_ORDER 104 -#define PCRE2_ERROR_QUANTIFIER_TOO_BIG 105 -#define PCRE2_ERROR_MISSING_SQUARE_BRACKET 106 -#define PCRE2_ERROR_ESCAPE_INVALID_IN_CLASS 107 -#define PCRE2_ERROR_CLASS_RANGE_ORDER 108 -#define PCRE2_ERROR_QUANTIFIER_INVALID 109 -#define PCRE2_ERROR_INTERNAL_UNEXPECTED_REPEAT 110 -#define PCRE2_ERROR_INVALID_AFTER_PARENS_QUERY 111 -#define PCRE2_ERROR_POSIX_CLASS_NOT_IN_CLASS 112 -#define PCRE2_ERROR_POSIX_NO_SUPPORT_COLLATING 113 -#define PCRE2_ERROR_MISSING_CLOSING_PARENTHESIS 114 -#define PCRE2_ERROR_BAD_SUBPATTERN_REFERENCE 115 -#define PCRE2_ERROR_NULL_PATTERN 116 -#define PCRE2_ERROR_BAD_OPTIONS 117 -#define PCRE2_ERROR_MISSING_COMMENT_CLOSING 118 -#define PCRE2_ERROR_PARENTHESES_NEST_TOO_DEEP 119 -#define PCRE2_ERROR_PATTERN_TOO_LARGE 120 -#define PCRE2_ERROR_HEAP_FAILED 121 -#define PCRE2_ERROR_UNMATCHED_CLOSING_PARENTHESIS 122 -#define PCRE2_ERROR_INTERNAL_CODE_OVERFLOW 123 -#define PCRE2_ERROR_MISSING_CONDITION_CLOSING 124 -#define PCRE2_ERROR_LOOKBEHIND_NOT_FIXED_LENGTH 125 -#define PCRE2_ERROR_ZERO_RELATIVE_REFERENCE 126 -#define PCRE2_ERROR_TOO_MANY_CONDITION_BRANCHES 127 -#define PCRE2_ERROR_CONDITION_ASSERTION_EXPECTED 128 -#define PCRE2_ERROR_BAD_RELATIVE_REFERENCE 129 -#define PCRE2_ERROR_UNKNOWN_POSIX_CLASS 130 -#define PCRE2_ERROR_INTERNAL_STUDY_ERROR 131 -#define PCRE2_ERROR_UNICODE_NOT_SUPPORTED 132 -#define PCRE2_ERROR_PARENTHESES_STACK_CHECK 133 -#define PCRE2_ERROR_CODE_POINT_TOO_BIG 134 -#define PCRE2_ERROR_LOOKBEHIND_TOO_COMPLICATED 135 -#define PCRE2_ERROR_LOOKBEHIND_INVALID_BACKSLASH_C 136 -#define PCRE2_ERROR_UNSUPPORTED_ESCAPE_SEQUENCE 137 -#define PCRE2_ERROR_CALLOUT_NUMBER_TOO_BIG 138 -#define PCRE2_ERROR_MISSING_CALLOUT_CLOSING 139 -#define PCRE2_ERROR_ESCAPE_INVALID_IN_VERB 140 -#define PCRE2_ERROR_UNRECOGNIZED_AFTER_QUERY_P 141 -#define PCRE2_ERROR_MISSING_NAME_TERMINATOR 142 -#define PCRE2_ERROR_DUPLICATE_SUBPATTERN_NAME 143 -#define PCRE2_ERROR_INVALID_SUBPATTERN_NAME 144 -#define PCRE2_ERROR_UNICODE_PROPERTIES_UNAVAILABLE 145 -#define PCRE2_ERROR_MALFORMED_UNICODE_PROPERTY 146 -#define PCRE2_ERROR_UNKNOWN_UNICODE_PROPERTY 147 -#define PCRE2_ERROR_SUBPATTERN_NAME_TOO_LONG 148 -#define PCRE2_ERROR_TOO_MANY_NAMED_SUBPATTERNS 149 -#define PCRE2_ERROR_CLASS_INVALID_RANGE 150 -#define PCRE2_ERROR_OCTAL_BYTE_TOO_BIG 151 -#define PCRE2_ERROR_INTERNAL_OVERRAN_WORKSPACE 152 -#define PCRE2_ERROR_INTERNAL_MISSING_SUBPATTERN 153 -#define PCRE2_ERROR_DEFINE_TOO_MANY_BRANCHES 154 -#define PCRE2_ERROR_BACKSLASH_O_MISSING_BRACE 155 -#define PCRE2_ERROR_INTERNAL_UNKNOWN_NEWLINE 156 -#define PCRE2_ERROR_BACKSLASH_G_SYNTAX 157 -#define PCRE2_ERROR_PARENS_QUERY_R_MISSING_CLOSING 158 -/* Error 159 is obsolete and should now never occur */ -#define PCRE2_ERROR_VERB_ARGUMENT_NOT_ALLOWED 159 -#define PCRE2_ERROR_VERB_UNKNOWN 160 -#define PCRE2_ERROR_SUBPATTERN_NUMBER_TOO_BIG 161 -#define PCRE2_ERROR_SUBPATTERN_NAME_EXPECTED 162 -#define PCRE2_ERROR_INTERNAL_PARSED_OVERFLOW 163 -#define PCRE2_ERROR_INVALID_OCTAL 164 -#define PCRE2_ERROR_SUBPATTERN_NAMES_MISMATCH 165 -#define PCRE2_ERROR_MARK_MISSING_ARGUMENT 166 -#define PCRE2_ERROR_INVALID_HEXADECIMAL 167 -#define PCRE2_ERROR_BACKSLASH_C_SYNTAX 168 -#define PCRE2_ERROR_BACKSLASH_K_SYNTAX 169 -#define PCRE2_ERROR_INTERNAL_BAD_CODE_LOOKBEHINDS 170 -#define PCRE2_ERROR_BACKSLASH_N_IN_CLASS 171 -#define PCRE2_ERROR_CALLOUT_STRING_TOO_LONG 172 -#define PCRE2_ERROR_UNICODE_DISALLOWED_CODE_POINT 173 -#define PCRE2_ERROR_UTF_IS_DISABLED 174 -#define PCRE2_ERROR_UCP_IS_DISABLED 175 -#define PCRE2_ERROR_VERB_NAME_TOO_LONG 176 -#define PCRE2_ERROR_BACKSLASH_U_CODE_POINT_TOO_BIG 177 -#define PCRE2_ERROR_MISSING_OCTAL_OR_HEX_DIGITS 178 -#define PCRE2_ERROR_VERSION_CONDITION_SYNTAX 179 -#define PCRE2_ERROR_INTERNAL_BAD_CODE_AUTO_POSSESS 180 -#define PCRE2_ERROR_CALLOUT_NO_STRING_DELIMITER 181 -#define PCRE2_ERROR_CALLOUT_BAD_STRING_DELIMITER 182 -#define PCRE2_ERROR_BACKSLASH_C_CALLER_DISABLED 183 -#define PCRE2_ERROR_QUERY_BARJX_NEST_TOO_DEEP 184 -#define PCRE2_ERROR_BACKSLASH_C_LIBRARY_DISABLED 185 -#define PCRE2_ERROR_PATTERN_TOO_COMPLICATED 186 -#define PCRE2_ERROR_LOOKBEHIND_TOO_LONG 187 -#define PCRE2_ERROR_PATTERN_STRING_TOO_LONG 188 -#define PCRE2_ERROR_INTERNAL_BAD_CODE 189 -#define PCRE2_ERROR_INTERNAL_BAD_CODE_IN_SKIP 190 -#define PCRE2_ERROR_NO_SURROGATES_IN_UTF16 191 -#define PCRE2_ERROR_BAD_LITERAL_OPTIONS 192 -#define PCRE2_ERROR_SUPPORTED_ONLY_IN_UNICODE 193 -#define PCRE2_ERROR_INVALID_HYPHEN_IN_OPTIONS 194 -#define PCRE2_ERROR_ALPHA_ASSERTION_UNKNOWN 195 -#define PCRE2_ERROR_SCRIPT_RUN_NOT_AVAILABLE 196 -#define PCRE2_ERROR_TOO_MANY_CAPTURES 197 -#define PCRE2_ERROR_CONDITION_ATOMIC_ASSERTION_EXPECTED 198 - - -/* "Expected" matching error codes: no match and partial match. */ - -#define PCRE2_ERROR_NOMATCH (-1) -#define PCRE2_ERROR_PARTIAL (-2) - -/* Error codes for UTF-8 validity checks */ - -#define PCRE2_ERROR_UTF8_ERR1 (-3) -#define PCRE2_ERROR_UTF8_ERR2 (-4) -#define PCRE2_ERROR_UTF8_ERR3 (-5) -#define PCRE2_ERROR_UTF8_ERR4 (-6) -#define PCRE2_ERROR_UTF8_ERR5 (-7) -#define PCRE2_ERROR_UTF8_ERR6 (-8) -#define PCRE2_ERROR_UTF8_ERR7 (-9) -#define PCRE2_ERROR_UTF8_ERR8 (-10) -#define PCRE2_ERROR_UTF8_ERR9 (-11) -#define PCRE2_ERROR_UTF8_ERR10 (-12) -#define PCRE2_ERROR_UTF8_ERR11 (-13) -#define PCRE2_ERROR_UTF8_ERR12 (-14) -#define PCRE2_ERROR_UTF8_ERR13 (-15) -#define PCRE2_ERROR_UTF8_ERR14 (-16) -#define PCRE2_ERROR_UTF8_ERR15 (-17) -#define PCRE2_ERROR_UTF8_ERR16 (-18) -#define PCRE2_ERROR_UTF8_ERR17 (-19) -#define PCRE2_ERROR_UTF8_ERR18 (-20) -#define PCRE2_ERROR_UTF8_ERR19 (-21) -#define PCRE2_ERROR_UTF8_ERR20 (-22) -#define PCRE2_ERROR_UTF8_ERR21 (-23) - -/* Error codes for UTF-16 validity checks */ - -#define PCRE2_ERROR_UTF16_ERR1 (-24) -#define PCRE2_ERROR_UTF16_ERR2 (-25) -#define PCRE2_ERROR_UTF16_ERR3 (-26) - -/* Error codes for UTF-32 validity checks */ - -#define PCRE2_ERROR_UTF32_ERR1 (-27) -#define PCRE2_ERROR_UTF32_ERR2 (-28) - -/* Miscellaneous error codes for pcre2[_dfa]_match(), substring extraction -functions, context functions, and serializing functions. They are in numerical -order. Originally they were in alphabetical order too, but now that PCRE2 is -released, the numbers must not be changed. */ - -#define PCRE2_ERROR_BADDATA (-29) -#define PCRE2_ERROR_MIXEDTABLES (-30) /* Name was changed */ -#define PCRE2_ERROR_BADMAGIC (-31) -#define PCRE2_ERROR_BADMODE (-32) -#define PCRE2_ERROR_BADOFFSET (-33) -#define PCRE2_ERROR_BADOPTION (-34) -#define PCRE2_ERROR_BADREPLACEMENT (-35) -#define PCRE2_ERROR_BADUTFOFFSET (-36) -#define PCRE2_ERROR_CALLOUT (-37) /* Never used by PCRE2 itself */ -#define PCRE2_ERROR_DFA_BADRESTART (-38) -#define PCRE2_ERROR_DFA_RECURSE (-39) -#define PCRE2_ERROR_DFA_UCOND (-40) -#define PCRE2_ERROR_DFA_UFUNC (-41) -#define PCRE2_ERROR_DFA_UITEM (-42) -#define PCRE2_ERROR_DFA_WSSIZE (-43) -#define PCRE2_ERROR_INTERNAL (-44) -#define PCRE2_ERROR_JIT_BADOPTION (-45) -#define PCRE2_ERROR_JIT_STACKLIMIT (-46) -#define PCRE2_ERROR_MATCHLIMIT (-47) -#define PCRE2_ERROR_NOMEMORY (-48) -#define PCRE2_ERROR_NOSUBSTRING (-49) -#define PCRE2_ERROR_NOUNIQUESUBSTRING (-50) -#define PCRE2_ERROR_NULL (-51) -#define PCRE2_ERROR_RECURSELOOP (-52) -#define PCRE2_ERROR_DEPTHLIMIT (-53) -#define PCRE2_ERROR_RECURSIONLIMIT (-53) /* Obsolete synonym */ -#define PCRE2_ERROR_UNAVAILABLE (-54) -#define PCRE2_ERROR_UNSET (-55) -#define PCRE2_ERROR_BADOFFSETLIMIT (-56) -#define PCRE2_ERROR_BADREPESCAPE (-57) -#define PCRE2_ERROR_REPMISSINGBRACE (-58) -#define PCRE2_ERROR_BADSUBSTITUTION (-59) -#define PCRE2_ERROR_BADSUBSPATTERN (-60) -#define PCRE2_ERROR_TOOMANYREPLACE (-61) -#define PCRE2_ERROR_BADSERIALIZEDDATA (-62) -#define PCRE2_ERROR_HEAPLIMIT (-63) -#define PCRE2_ERROR_CONVERT_SYNTAX (-64) -#define PCRE2_ERROR_INTERNAL_DUPMATCH (-65) -#define PCRE2_ERROR_DFA_UINVALID_UTF (-66) - - -/* Request types for pcre2_pattern_info() */ - -#define PCRE2_INFO_ALLOPTIONS 0 -#define PCRE2_INFO_ARGOPTIONS 1 -#define PCRE2_INFO_BACKREFMAX 2 -#define PCRE2_INFO_BSR 3 -#define PCRE2_INFO_CAPTURECOUNT 4 -#define PCRE2_INFO_FIRSTCODEUNIT 5 -#define PCRE2_INFO_FIRSTCODETYPE 6 -#define PCRE2_INFO_FIRSTBITMAP 7 -#define PCRE2_INFO_HASCRORLF 8 -#define PCRE2_INFO_JCHANGED 9 -#define PCRE2_INFO_JITSIZE 10 -#define PCRE2_INFO_LASTCODEUNIT 11 -#define PCRE2_INFO_LASTCODETYPE 12 -#define PCRE2_INFO_MATCHEMPTY 13 -#define PCRE2_INFO_MATCHLIMIT 14 -#define PCRE2_INFO_MAXLOOKBEHIND 15 -#define PCRE2_INFO_MINLENGTH 16 -#define PCRE2_INFO_NAMECOUNT 17 -#define PCRE2_INFO_NAMEENTRYSIZE 18 -#define PCRE2_INFO_NAMETABLE 19 -#define PCRE2_INFO_NEWLINE 20 -#define PCRE2_INFO_DEPTHLIMIT 21 -#define PCRE2_INFO_RECURSIONLIMIT 21 /* Obsolete synonym */ -#define PCRE2_INFO_SIZE 22 -#define PCRE2_INFO_HASBACKSLASHC 23 -#define PCRE2_INFO_FRAMESIZE 24 -#define PCRE2_INFO_HEAPLIMIT 25 -#define PCRE2_INFO_EXTRAOPTIONS 26 - -/* Request types for pcre2_config(). */ - -#define PCRE2_CONFIG_BSR 0 -#define PCRE2_CONFIG_JIT 1 -#define PCRE2_CONFIG_JITTARGET 2 -#define PCRE2_CONFIG_LINKSIZE 3 -#define PCRE2_CONFIG_MATCHLIMIT 4 -#define PCRE2_CONFIG_NEWLINE 5 -#define PCRE2_CONFIG_PARENSLIMIT 6 -#define PCRE2_CONFIG_DEPTHLIMIT 7 -#define PCRE2_CONFIG_RECURSIONLIMIT 7 /* Obsolete synonym */ -#define PCRE2_CONFIG_STACKRECURSE 8 /* Obsolete */ -#define PCRE2_CONFIG_UNICODE 9 -#define PCRE2_CONFIG_UNICODE_VERSION 10 -#define PCRE2_CONFIG_VERSION 11 -#define PCRE2_CONFIG_HEAPLIMIT 12 -#define PCRE2_CONFIG_NEVER_BACKSLASH_C 13 -#define PCRE2_CONFIG_COMPILED_WIDTHS 14 -#define PCRE2_CONFIG_TABLES_LENGTH 15 - - -/* Types for code units in patterns and subject strings. */ - -typedef uint8_t PCRE2_UCHAR8; -typedef uint16_t PCRE2_UCHAR16; -typedef uint32_t PCRE2_UCHAR32; - -typedef const PCRE2_UCHAR8 *PCRE2_SPTR8; -typedef const PCRE2_UCHAR16 *PCRE2_SPTR16; -typedef const PCRE2_UCHAR32 *PCRE2_SPTR32; - -/* The PCRE2_SIZE type is used for all string lengths and offsets in PCRE2, -including pattern offsets for errors and subject offsets after a match. We -define special values to indicate zero-terminated strings and unset offsets in -the offset vector (ovector). */ - -#define PCRE2_SIZE size_t -#define PCRE2_SIZE_MAX SIZE_MAX -#define PCRE2_ZERO_TERMINATED (~(PCRE2_SIZE)0) -#define PCRE2_UNSET (~(PCRE2_SIZE)0) - -/* Generic types for opaque structures and JIT callback functions. These -declarations are defined in a macro that is expanded for each width later. */ - -#define PCRE2_TYPES_LIST \ -struct pcre2_real_general_context; \ -typedef struct pcre2_real_general_context pcre2_general_context; \ -\ -struct pcre2_real_compile_context; \ -typedef struct pcre2_real_compile_context pcre2_compile_context; \ -\ -struct pcre2_real_match_context; \ -typedef struct pcre2_real_match_context pcre2_match_context; \ -\ -struct pcre2_real_convert_context; \ -typedef struct pcre2_real_convert_context pcre2_convert_context; \ -\ -struct pcre2_real_code; \ -typedef struct pcre2_real_code pcre2_code; \ -\ -struct pcre2_real_match_data; \ -typedef struct pcre2_real_match_data pcre2_match_data; \ -\ -struct pcre2_real_jit_stack; \ -typedef struct pcre2_real_jit_stack pcre2_jit_stack; \ -\ -typedef pcre2_jit_stack *(*pcre2_jit_callback)(void *); - - -/* The structures for passing out data via callout functions. We use structures -so that new fields can be added on the end in future versions, without changing -the API of the function, thereby allowing old clients to work without -modification. Define the generic versions in a macro; the width-specific -versions are generated from this macro below. */ - -/* Flags for the callout_flags field. These are cleared after a callout. */ - -#define PCRE2_CALLOUT_STARTMATCH 0x00000001u /* Set for each bumpalong */ -#define PCRE2_CALLOUT_BACKTRACK 0x00000002u /* Set after a backtrack */ - -#define PCRE2_STRUCTURE_LIST \ -typedef struct pcre2_callout_block { \ - uint32_t version; /* Identifies version of block */ \ - /* ------------------------ Version 0 ------------------------------- */ \ - uint32_t callout_number; /* Number compiled into pattern */ \ - uint32_t capture_top; /* Max current capture */ \ - uint32_t capture_last; /* Most recently closed capture */ \ - PCRE2_SIZE *offset_vector; /* The offset vector */ \ - PCRE2_SPTR mark; /* Pointer to current mark or NULL */ \ - PCRE2_SPTR subject; /* The subject being matched */ \ - PCRE2_SIZE subject_length; /* The length of the subject */ \ - PCRE2_SIZE start_match; /* Offset to start of this match attempt */ \ - PCRE2_SIZE current_position; /* Where we currently are in the subject */ \ - PCRE2_SIZE pattern_position; /* Offset to next item in the pattern */ \ - PCRE2_SIZE next_item_length; /* Length of next item in the pattern */ \ - /* ------------------- Added for Version 1 -------------------------- */ \ - PCRE2_SIZE callout_string_offset; /* Offset to string within pattern */ \ - PCRE2_SIZE callout_string_length; /* Length of string compiled into pattern */ \ - PCRE2_SPTR callout_string; /* String compiled into pattern */ \ - /* ------------------- Added for Version 2 -------------------------- */ \ - uint32_t callout_flags; /* See above for list */ \ - /* ------------------------------------------------------------------ */ \ -} pcre2_callout_block; \ -\ -typedef struct pcre2_callout_enumerate_block { \ - uint32_t version; /* Identifies version of block */ \ - /* ------------------------ Version 0 ------------------------------- */ \ - PCRE2_SIZE pattern_position; /* Offset to next item in the pattern */ \ - PCRE2_SIZE next_item_length; /* Length of next item in the pattern */ \ - uint32_t callout_number; /* Number compiled into pattern */ \ - PCRE2_SIZE callout_string_offset; /* Offset to string within pattern */ \ - PCRE2_SIZE callout_string_length; /* Length of string compiled into pattern */ \ - PCRE2_SPTR callout_string; /* String compiled into pattern */ \ - /* ------------------------------------------------------------------ */ \ -} pcre2_callout_enumerate_block; \ -\ -typedef struct pcre2_substitute_callout_block { \ - uint32_t version; /* Identifies version of block */ \ - /* ------------------------ Version 0 ------------------------------- */ \ - PCRE2_SPTR input; /* Pointer to input subject string */ \ - PCRE2_SPTR output; /* Pointer to output buffer */ \ - PCRE2_SIZE output_offsets[2]; /* Changed portion of the output */ \ - PCRE2_SIZE *ovector; /* Pointer to current ovector */ \ - uint32_t oveccount; /* Count of pairs set in ovector */ \ - uint32_t subscount; /* Substitution number */ \ - /* ------------------------------------------------------------------ */ \ -} pcre2_substitute_callout_block; - - -/* List the generic forms of all other functions in macros, which will be -expanded for each width below. Start with functions that give general -information. */ - -#define PCRE2_GENERAL_INFO_FUNCTIONS \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION pcre2_config(uint32_t, void *); - - -/* Functions for manipulating contexts. */ - -#define PCRE2_GENERAL_CONTEXT_FUNCTIONS \ -PCRE2_EXP_DECL pcre2_general_context PCRE2_CALL_CONVENTION \ - *pcre2_general_context_copy(pcre2_general_context *); \ -PCRE2_EXP_DECL pcre2_general_context PCRE2_CALL_CONVENTION \ - *pcre2_general_context_create(void *(*)(PCRE2_SIZE, void *), \ - void (*)(void *, void *), void *); \ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_general_context_free(pcre2_general_context *); - -#define PCRE2_COMPILE_CONTEXT_FUNCTIONS \ -PCRE2_EXP_DECL pcre2_compile_context PCRE2_CALL_CONVENTION \ - *pcre2_compile_context_copy(pcre2_compile_context *); \ -PCRE2_EXP_DECL pcre2_compile_context PCRE2_CALL_CONVENTION \ - *pcre2_compile_context_create(pcre2_general_context *);\ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_compile_context_free(pcre2_compile_context *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_bsr(pcre2_compile_context *, uint32_t); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_character_tables(pcre2_compile_context *, const uint8_t *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_compile_extra_options(pcre2_compile_context *, uint32_t); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_max_pattern_length(pcre2_compile_context *, PCRE2_SIZE); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_newline(pcre2_compile_context *, uint32_t); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_parens_nest_limit(pcre2_compile_context *, uint32_t); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_compile_recursion_guard(pcre2_compile_context *, \ - int (*)(uint32_t, void *), void *); - -#define PCRE2_MATCH_CONTEXT_FUNCTIONS \ -PCRE2_EXP_DECL pcre2_match_context PCRE2_CALL_CONVENTION \ - *pcre2_match_context_copy(pcre2_match_context *); \ -PCRE2_EXP_DECL pcre2_match_context PCRE2_CALL_CONVENTION \ - *pcre2_match_context_create(pcre2_general_context *); \ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_match_context_free(pcre2_match_context *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_callout(pcre2_match_context *, \ - int (*)(pcre2_callout_block *, void *), void *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_substitute_callout(pcre2_match_context *, \ - int (*)(pcre2_substitute_callout_block *, void *), void *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_depth_limit(pcre2_match_context *, uint32_t); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_heap_limit(pcre2_match_context *, uint32_t); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_match_limit(pcre2_match_context *, uint32_t); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_offset_limit(pcre2_match_context *, PCRE2_SIZE); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_recursion_limit(pcre2_match_context *, uint32_t); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_recursion_memory_management(pcre2_match_context *, \ - void *(*)(PCRE2_SIZE, void *), void (*)(void *, void *), void *); - -#define PCRE2_CONVERT_CONTEXT_FUNCTIONS \ -PCRE2_EXP_DECL pcre2_convert_context PCRE2_CALL_CONVENTION \ - *pcre2_convert_context_copy(pcre2_convert_context *); \ -PCRE2_EXP_DECL pcre2_convert_context PCRE2_CALL_CONVENTION \ - *pcre2_convert_context_create(pcre2_general_context *); \ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_convert_context_free(pcre2_convert_context *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_glob_escape(pcre2_convert_context *, uint32_t); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_set_glob_separator(pcre2_convert_context *, uint32_t); - - -/* Functions concerned with compiling a pattern to PCRE internal code. */ - -#define PCRE2_COMPILE_FUNCTIONS \ -PCRE2_EXP_DECL pcre2_code PCRE2_CALL_CONVENTION \ - *pcre2_compile(PCRE2_SPTR, PCRE2_SIZE, uint32_t, int *, PCRE2_SIZE *, \ - pcre2_compile_context *); \ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_code_free(pcre2_code *); \ -PCRE2_EXP_DECL pcre2_code PCRE2_CALL_CONVENTION \ - *pcre2_code_copy(const pcre2_code *); \ -PCRE2_EXP_DECL pcre2_code PCRE2_CALL_CONVENTION \ - *pcre2_code_copy_with_tables(const pcre2_code *); - - -/* Functions that give information about a compiled pattern. */ - -#define PCRE2_PATTERN_INFO_FUNCTIONS \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_pattern_info(const pcre2_code *, uint32_t, void *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_callout_enumerate(const pcre2_code *, \ - int (*)(pcre2_callout_enumerate_block *, void *), void *); - - -/* Functions for running a match and inspecting the result. */ - -#define PCRE2_MATCH_FUNCTIONS \ -PCRE2_EXP_DECL pcre2_match_data PCRE2_CALL_CONVENTION \ - *pcre2_match_data_create(uint32_t, pcre2_general_context *); \ -PCRE2_EXP_DECL pcre2_match_data PCRE2_CALL_CONVENTION \ - *pcre2_match_data_create_from_pattern(const pcre2_code *, \ - pcre2_general_context *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_dfa_match(const pcre2_code *, PCRE2_SPTR, PCRE2_SIZE, PCRE2_SIZE, \ - uint32_t, pcre2_match_data *, pcre2_match_context *, int *, PCRE2_SIZE); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_match(const pcre2_code *, PCRE2_SPTR, PCRE2_SIZE, PCRE2_SIZE, \ - uint32_t, pcre2_match_data *, pcre2_match_context *); \ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_match_data_free(pcre2_match_data *); \ -PCRE2_EXP_DECL PCRE2_SPTR PCRE2_CALL_CONVENTION \ - pcre2_get_mark(pcre2_match_data *); \ -PCRE2_EXP_DECL PCRE2_SIZE PCRE2_CALL_CONVENTION \ - pcre2_get_match_data_size(pcre2_match_data *); \ -PCRE2_EXP_DECL uint32_t PCRE2_CALL_CONVENTION \ - pcre2_get_ovector_count(pcre2_match_data *); \ -PCRE2_EXP_DECL PCRE2_SIZE PCRE2_CALL_CONVENTION \ - *pcre2_get_ovector_pointer(pcre2_match_data *); \ -PCRE2_EXP_DECL PCRE2_SIZE PCRE2_CALL_CONVENTION \ - pcre2_get_startchar(pcre2_match_data *); - - -/* Convenience functions for handling matched substrings. */ - -#define PCRE2_SUBSTRING_FUNCTIONS \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_substring_copy_byname(pcre2_match_data *, PCRE2_SPTR, PCRE2_UCHAR *, \ - PCRE2_SIZE *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_substring_copy_bynumber(pcre2_match_data *, uint32_t, PCRE2_UCHAR *, \ - PCRE2_SIZE *); \ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_substring_free(PCRE2_UCHAR *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_substring_get_byname(pcre2_match_data *, PCRE2_SPTR, PCRE2_UCHAR **, \ - PCRE2_SIZE *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_substring_get_bynumber(pcre2_match_data *, uint32_t, PCRE2_UCHAR **, \ - PCRE2_SIZE *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_substring_length_byname(pcre2_match_data *, PCRE2_SPTR, PCRE2_SIZE *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_substring_length_bynumber(pcre2_match_data *, uint32_t, PCRE2_SIZE *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_substring_nametable_scan(const pcre2_code *, PCRE2_SPTR, PCRE2_SPTR *, \ - PCRE2_SPTR *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_substring_number_from_name(const pcre2_code *, PCRE2_SPTR); \ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_substring_list_free(PCRE2_SPTR *); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_substring_list_get(pcre2_match_data *, PCRE2_UCHAR ***, PCRE2_SIZE **); - -/* Functions for serializing / deserializing compiled patterns. */ - -#define PCRE2_SERIALIZE_FUNCTIONS \ -PCRE2_EXP_DECL int32_t PCRE2_CALL_CONVENTION \ - pcre2_serialize_encode(const pcre2_code **, int32_t, uint8_t **, \ - PCRE2_SIZE *, pcre2_general_context *); \ -PCRE2_EXP_DECL int32_t PCRE2_CALL_CONVENTION \ - pcre2_serialize_decode(pcre2_code **, int32_t, const uint8_t *, \ - pcre2_general_context *); \ -PCRE2_EXP_DECL int32_t PCRE2_CALL_CONVENTION \ - pcre2_serialize_get_number_of_codes(const uint8_t *); \ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_serialize_free(uint8_t *); - - -/* Convenience function for match + substitute. */ - -#define PCRE2_SUBSTITUTE_FUNCTION \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_substitute(const pcre2_code *, PCRE2_SPTR, PCRE2_SIZE, PCRE2_SIZE, \ - uint32_t, pcre2_match_data *, pcre2_match_context *, PCRE2_SPTR, \ - PCRE2_SIZE, PCRE2_UCHAR *, PCRE2_SIZE *); - - -/* Functions for converting pattern source strings. */ - -#define PCRE2_CONVERT_FUNCTIONS \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_pattern_convert(PCRE2_SPTR, PCRE2_SIZE, uint32_t, PCRE2_UCHAR **, \ - PCRE2_SIZE *, pcre2_convert_context *); \ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_converted_pattern_free(PCRE2_UCHAR *); - - -/* Functions for JIT processing */ - -#define PCRE2_JIT_FUNCTIONS \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_jit_compile(pcre2_code *, uint32_t); \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_jit_match(const pcre2_code *, PCRE2_SPTR, PCRE2_SIZE, PCRE2_SIZE, \ - uint32_t, pcre2_match_data *, pcre2_match_context *); \ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_jit_free_unused_memory(pcre2_general_context *); \ -PCRE2_EXP_DECL pcre2_jit_stack PCRE2_CALL_CONVENTION \ - *pcre2_jit_stack_create(PCRE2_SIZE, PCRE2_SIZE, pcre2_general_context *); \ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_jit_stack_assign(pcre2_match_context *, pcre2_jit_callback, void *); \ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_jit_stack_free(pcre2_jit_stack *); - - -/* Other miscellaneous functions. */ - -#define PCRE2_OTHER_FUNCTIONS \ -PCRE2_EXP_DECL int PCRE2_CALL_CONVENTION \ - pcre2_get_error_message(int, PCRE2_UCHAR *, PCRE2_SIZE); \ -PCRE2_EXP_DECL const uint8_t PCRE2_CALL_CONVENTION \ - *pcre2_maketables(pcre2_general_context *); \ -PCRE2_EXP_DECL void PCRE2_CALL_CONVENTION \ - pcre2_maketables_free(pcre2_general_context *, const uint8_t *); - -/* Define macros that generate width-specific names from generic versions. The -three-level macro scheme is necessary to get the macros expanded when we want -them to be. First we get the width from PCRE2_LOCAL_WIDTH, which is used for -generating three versions of everything below. After that, PCRE2_SUFFIX will be -re-defined to use PCRE2_CODE_UNIT_WIDTH, for use when macros such as -pcre2_compile are called by application code. */ - -#define PCRE2_JOIN(a,b) a ## b -#define PCRE2_GLUE(a,b) PCRE2_JOIN(a,b) -#define PCRE2_SUFFIX(a) PCRE2_GLUE(a,PCRE2_LOCAL_WIDTH) - - -/* Data types */ - -#define PCRE2_UCHAR PCRE2_SUFFIX(PCRE2_UCHAR) -#define PCRE2_SPTR PCRE2_SUFFIX(PCRE2_SPTR) - -#define pcre2_code PCRE2_SUFFIX(pcre2_code_) -#define pcre2_jit_callback PCRE2_SUFFIX(pcre2_jit_callback_) -#define pcre2_jit_stack PCRE2_SUFFIX(pcre2_jit_stack_) - -#define pcre2_real_code PCRE2_SUFFIX(pcre2_real_code_) -#define pcre2_real_general_context PCRE2_SUFFIX(pcre2_real_general_context_) -#define pcre2_real_compile_context PCRE2_SUFFIX(pcre2_real_compile_context_) -#define pcre2_real_convert_context PCRE2_SUFFIX(pcre2_real_convert_context_) -#define pcre2_real_match_context PCRE2_SUFFIX(pcre2_real_match_context_) -#define pcre2_real_jit_stack PCRE2_SUFFIX(pcre2_real_jit_stack_) -#define pcre2_real_match_data PCRE2_SUFFIX(pcre2_real_match_data_) - - -/* Data blocks */ - -#define pcre2_callout_block PCRE2_SUFFIX(pcre2_callout_block_) -#define pcre2_callout_enumerate_block PCRE2_SUFFIX(pcre2_callout_enumerate_block_) -#define pcre2_substitute_callout_block PCRE2_SUFFIX(pcre2_substitute_callout_block_) -#define pcre2_general_context PCRE2_SUFFIX(pcre2_general_context_) -#define pcre2_compile_context PCRE2_SUFFIX(pcre2_compile_context_) -#define pcre2_convert_context PCRE2_SUFFIX(pcre2_convert_context_) -#define pcre2_match_context PCRE2_SUFFIX(pcre2_match_context_) -#define pcre2_match_data PCRE2_SUFFIX(pcre2_match_data_) - - -/* Functions: the complete list in alphabetical order */ - -#define pcre2_callout_enumerate PCRE2_SUFFIX(pcre2_callout_enumerate_) -#define pcre2_code_copy PCRE2_SUFFIX(pcre2_code_copy_) -#define pcre2_code_copy_with_tables PCRE2_SUFFIX(pcre2_code_copy_with_tables_) -#define pcre2_code_free PCRE2_SUFFIX(pcre2_code_free_) -#define pcre2_compile PCRE2_SUFFIX(pcre2_compile_) -#define pcre2_compile_context_copy PCRE2_SUFFIX(pcre2_compile_context_copy_) -#define pcre2_compile_context_create PCRE2_SUFFIX(pcre2_compile_context_create_) -#define pcre2_compile_context_free PCRE2_SUFFIX(pcre2_compile_context_free_) -#define pcre2_config PCRE2_SUFFIX(pcre2_config_) -#define pcre2_convert_context_copy PCRE2_SUFFIX(pcre2_convert_context_copy_) -#define pcre2_convert_context_create PCRE2_SUFFIX(pcre2_convert_context_create_) -#define pcre2_convert_context_free PCRE2_SUFFIX(pcre2_convert_context_free_) -#define pcre2_converted_pattern_free PCRE2_SUFFIX(pcre2_converted_pattern_free_) -#define pcre2_dfa_match PCRE2_SUFFIX(pcre2_dfa_match_) -#define pcre2_general_context_copy PCRE2_SUFFIX(pcre2_general_context_copy_) -#define pcre2_general_context_create PCRE2_SUFFIX(pcre2_general_context_create_) -#define pcre2_general_context_free PCRE2_SUFFIX(pcre2_general_context_free_) -#define pcre2_get_error_message PCRE2_SUFFIX(pcre2_get_error_message_) -#define pcre2_get_mark PCRE2_SUFFIX(pcre2_get_mark_) -#define pcre2_get_match_data_size PCRE2_SUFFIX(pcre2_get_match_data_size_) -#define pcre2_get_ovector_pointer PCRE2_SUFFIX(pcre2_get_ovector_pointer_) -#define pcre2_get_ovector_count PCRE2_SUFFIX(pcre2_get_ovector_count_) -#define pcre2_get_startchar PCRE2_SUFFIX(pcre2_get_startchar_) -#define pcre2_jit_compile PCRE2_SUFFIX(pcre2_jit_compile_) -#define pcre2_jit_match PCRE2_SUFFIX(pcre2_jit_match_) -#define pcre2_jit_free_unused_memory PCRE2_SUFFIX(pcre2_jit_free_unused_memory_) -#define pcre2_jit_stack_assign PCRE2_SUFFIX(pcre2_jit_stack_assign_) -#define pcre2_jit_stack_create PCRE2_SUFFIX(pcre2_jit_stack_create_) -#define pcre2_jit_stack_free PCRE2_SUFFIX(pcre2_jit_stack_free_) -#define pcre2_maketables PCRE2_SUFFIX(pcre2_maketables_) -#define pcre2_maketables_free PCRE2_SUFFIX(pcre2_maketables_free_) -#define pcre2_match PCRE2_SUFFIX(pcre2_match_) -#define pcre2_match_context_copy PCRE2_SUFFIX(pcre2_match_context_copy_) -#define pcre2_match_context_create PCRE2_SUFFIX(pcre2_match_context_create_) -#define pcre2_match_context_free PCRE2_SUFFIX(pcre2_match_context_free_) -#define pcre2_match_data_create PCRE2_SUFFIX(pcre2_match_data_create_) -#define pcre2_match_data_create_from_pattern PCRE2_SUFFIX(pcre2_match_data_create_from_pattern_) -#define pcre2_match_data_free PCRE2_SUFFIX(pcre2_match_data_free_) -#define pcre2_pattern_convert PCRE2_SUFFIX(pcre2_pattern_convert_) -#define pcre2_pattern_info PCRE2_SUFFIX(pcre2_pattern_info_) -#define pcre2_serialize_decode PCRE2_SUFFIX(pcre2_serialize_decode_) -#define pcre2_serialize_encode PCRE2_SUFFIX(pcre2_serialize_encode_) -#define pcre2_serialize_free PCRE2_SUFFIX(pcre2_serialize_free_) -#define pcre2_serialize_get_number_of_codes PCRE2_SUFFIX(pcre2_serialize_get_number_of_codes_) -#define pcre2_set_bsr PCRE2_SUFFIX(pcre2_set_bsr_) -#define pcre2_set_callout PCRE2_SUFFIX(pcre2_set_callout_) -#define pcre2_set_character_tables PCRE2_SUFFIX(pcre2_set_character_tables_) -#define pcre2_set_compile_extra_options PCRE2_SUFFIX(pcre2_set_compile_extra_options_) -#define pcre2_set_compile_recursion_guard PCRE2_SUFFIX(pcre2_set_compile_recursion_guard_) -#define pcre2_set_depth_limit PCRE2_SUFFIX(pcre2_set_depth_limit_) -#define pcre2_set_glob_escape PCRE2_SUFFIX(pcre2_set_glob_escape_) -#define pcre2_set_glob_separator PCRE2_SUFFIX(pcre2_set_glob_separator_) -#define pcre2_set_heap_limit PCRE2_SUFFIX(pcre2_set_heap_limit_) -#define pcre2_set_match_limit PCRE2_SUFFIX(pcre2_set_match_limit_) -#define pcre2_set_max_pattern_length PCRE2_SUFFIX(pcre2_set_max_pattern_length_) -#define pcre2_set_newline PCRE2_SUFFIX(pcre2_set_newline_) -#define pcre2_set_parens_nest_limit PCRE2_SUFFIX(pcre2_set_parens_nest_limit_) -#define pcre2_set_offset_limit PCRE2_SUFFIX(pcre2_set_offset_limit_) -#define pcre2_set_substitute_callout PCRE2_SUFFIX(pcre2_set_substitute_callout_) -#define pcre2_substitute PCRE2_SUFFIX(pcre2_substitute_) -#define pcre2_substring_copy_byname PCRE2_SUFFIX(pcre2_substring_copy_byname_) -#define pcre2_substring_copy_bynumber PCRE2_SUFFIX(pcre2_substring_copy_bynumber_) -#define pcre2_substring_free PCRE2_SUFFIX(pcre2_substring_free_) -#define pcre2_substring_get_byname PCRE2_SUFFIX(pcre2_substring_get_byname_) -#define pcre2_substring_get_bynumber PCRE2_SUFFIX(pcre2_substring_get_bynumber_) -#define pcre2_substring_length_byname PCRE2_SUFFIX(pcre2_substring_length_byname_) -#define pcre2_substring_length_bynumber PCRE2_SUFFIX(pcre2_substring_length_bynumber_) -#define pcre2_substring_list_get PCRE2_SUFFIX(pcre2_substring_list_get_) -#define pcre2_substring_list_free PCRE2_SUFFIX(pcre2_substring_list_free_) -#define pcre2_substring_nametable_scan PCRE2_SUFFIX(pcre2_substring_nametable_scan_) -#define pcre2_substring_number_from_name PCRE2_SUFFIX(pcre2_substring_number_from_name_) - -/* Keep this old function name for backwards compatibility */ -#define pcre2_set_recursion_limit PCRE2_SUFFIX(pcre2_set_recursion_limit_) - -/* Keep this obsolete function for backwards compatibility: it is now a noop. */ -#define pcre2_set_recursion_memory_management PCRE2_SUFFIX(pcre2_set_recursion_memory_management_) - -/* Now generate all three sets of width-specific structures and function -prototypes. */ - -#define PCRE2_TYPES_STRUCTURES_AND_FUNCTIONS \ -PCRE2_TYPES_LIST \ -PCRE2_STRUCTURE_LIST \ -PCRE2_GENERAL_INFO_FUNCTIONS \ -PCRE2_GENERAL_CONTEXT_FUNCTIONS \ -PCRE2_COMPILE_CONTEXT_FUNCTIONS \ -PCRE2_CONVERT_CONTEXT_FUNCTIONS \ -PCRE2_CONVERT_FUNCTIONS \ -PCRE2_MATCH_CONTEXT_FUNCTIONS \ -PCRE2_COMPILE_FUNCTIONS \ -PCRE2_PATTERN_INFO_FUNCTIONS \ -PCRE2_MATCH_FUNCTIONS \ -PCRE2_SUBSTRING_FUNCTIONS \ -PCRE2_SERIALIZE_FUNCTIONS \ -PCRE2_SUBSTITUTE_FUNCTION \ -PCRE2_JIT_FUNCTIONS \ -PCRE2_OTHER_FUNCTIONS - -#define PCRE2_LOCAL_WIDTH 8 -PCRE2_TYPES_STRUCTURES_AND_FUNCTIONS -#undef PCRE2_LOCAL_WIDTH - -#define PCRE2_LOCAL_WIDTH 16 -PCRE2_TYPES_STRUCTURES_AND_FUNCTIONS -#undef PCRE2_LOCAL_WIDTH - -#define PCRE2_LOCAL_WIDTH 32 -PCRE2_TYPES_STRUCTURES_AND_FUNCTIONS -#undef PCRE2_LOCAL_WIDTH - -/* Undefine the list macros; they are no longer needed. */ - -#undef PCRE2_TYPES_LIST -#undef PCRE2_STRUCTURE_LIST -#undef PCRE2_GENERAL_INFO_FUNCTIONS -#undef PCRE2_GENERAL_CONTEXT_FUNCTIONS -#undef PCRE2_COMPILE_CONTEXT_FUNCTIONS -#undef PCRE2_CONVERT_CONTEXT_FUNCTIONS -#undef PCRE2_MATCH_CONTEXT_FUNCTIONS -#undef PCRE2_COMPILE_FUNCTIONS -#undef PCRE2_PATTERN_INFO_FUNCTIONS -#undef PCRE2_MATCH_FUNCTIONS -#undef PCRE2_SUBSTRING_FUNCTIONS -#undef PCRE2_SERIALIZE_FUNCTIONS -#undef PCRE2_SUBSTITUTE_FUNCTION -#undef PCRE2_JIT_FUNCTIONS -#undef PCRE2_OTHER_FUNCTIONS -#undef PCRE2_TYPES_STRUCTURES_AND_FUNCTIONS - -/* PCRE2_CODE_UNIT_WIDTH must be defined. If it is 8, 16, or 32, redefine -PCRE2_SUFFIX to use it. If it is 0, undefine the other macros and make -PCRE2_SUFFIX a no-op. Otherwise, generate an error. */ - -#undef PCRE2_SUFFIX -#ifndef PCRE2_CODE_UNIT_WIDTH -#error PCRE2_CODE_UNIT_WIDTH must be defined before including pcre2.h. -#error Use 8, 16, or 32; or 0 for a multi-width application. -#else /* PCRE2_CODE_UNIT_WIDTH is defined */ -#if PCRE2_CODE_UNIT_WIDTH == 8 || \ - PCRE2_CODE_UNIT_WIDTH == 16 || \ - PCRE2_CODE_UNIT_WIDTH == 32 -#define PCRE2_SUFFIX(a) PCRE2_GLUE(a, PCRE2_CODE_UNIT_WIDTH) -#elif PCRE2_CODE_UNIT_WIDTH == 0 -#undef PCRE2_JOIN -#undef PCRE2_GLUE -#define PCRE2_SUFFIX(a) a -#else -#error PCRE2_CODE_UNIT_WIDTH must be 0, 8, 16, or 32. -#endif -#endif /* PCRE2_CODE_UNIT_WIDTH is defined */ - -#ifdef __cplusplus -} /* extern "C" */ -#endif - -#endif /* PCRE2_H_IDEMPOTENT_GUARD */ - -/* End of pcre2.h */ diff --git a/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_internal.h b/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_internal.h deleted file mode 100644 index d8fad1e..0000000 --- a/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_internal.h +++ /dev/null @@ -1,2004 +0,0 @@ -/************************************************* -* Perl-Compatible Regular Expressions * -*************************************************/ - -/* PCRE2 is a library of functions to support regular expressions whose syntax -and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel - Original API code Copyright (c) 1997-2012 University of Cambridge - New API code Copyright (c) 2016-2020 University of Cambridge - ------------------------------------------------------------------------------ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of the University of Cambridge nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------ -*/ - -#ifndef PCRE2_INTERNAL_H_IDEMPOTENT_GUARD -#define PCRE2_INTERNAL_H_IDEMPOTENT_GUARD - -/* We do not support both EBCDIC and Unicode at the same time. The "configure" -script prevents both being selected, but not everybody uses "configure". EBCDIC -is only supported for the 8-bit library, but the check for this has to be later -in this file, because the first part is not width-dependent, and is included by -pcre2test.c with CODE_UNIT_WIDTH == 0. */ - -#if defined EBCDIC && defined SUPPORT_UNICODE -#error The use of both EBCDIC and SUPPORT_UNICODE is not supported. -#endif - -/* Standard C headers */ - -#include -#include -#include -#include -#include -#include - -/* Macros to make boolean values more obvious. The #ifndef is to pacify -compiler warnings in environments where these macros are defined elsewhere. -Unfortunately, there is no way to do the same for the typedef. */ - -typedef int BOOL; -#ifndef FALSE -#define FALSE 0 -#define TRUE 1 -#endif - -/* Valgrind (memcheck) support */ - -#ifdef SUPPORT_VALGRIND -#include -#endif - -/* -ftrivial-auto-var-init support supports initializing all local variables -to avoid some classes of bug, but this can cause an unacceptable slowdown -for large on-stack arrays in hot functions. This macro lets us annotate -such arrays. */ - -#ifdef HAVE_ATTRIBUTE_UNINITIALIZED -#define PCRE2_KEEP_UNINITIALIZED __attribute__((uninitialized)) -#else -#define PCRE2_KEEP_UNINITIALIZED -#endif - -/* Older versions of MSVC lack snprintf(). This define allows for -warning/error-free compilation and testing with MSVC compilers back to at least -MSVC 10/2010. Except for VC6 (which is missing some fundamentals and fails). */ - -#if defined(_MSC_VER) && (_MSC_VER < 1900) -#define snprintf _snprintf -#endif - -/* When compiling a DLL for Windows, the exported symbols have to be declared -using some MS magic. I found some useful information on this web page: -http://msdn2.microsoft.com/en-us/library/y4h7bcy6(VS.80).aspx. According to the -information there, using __declspec(dllexport) without "extern" we have a -definition; with "extern" we have a declaration. The settings here override the -setting in pcre2.h (which is included below); it defines only PCRE2_EXP_DECL, -which is all that is needed for applications (they just import the symbols). We -use: - - PCRE2_EXP_DECL for declarations - PCRE2_EXP_DEFN for definitions - -The reason for wrapping this in #ifndef PCRE2_EXP_DECL is so that pcre2test, -which is an application, but needs to import this file in order to "peek" at -internals, can #include pcre2.h first to get an application's-eye view. - -In principle, people compiling for non-Windows, non-Unix-like (i.e. uncommon, -special-purpose environments) might want to stick other stuff in front of -exported symbols. That's why, in the non-Windows case, we set PCRE2_EXP_DEFN -only if it is not already set. */ - -#ifndef PCRE2_EXP_DECL -# ifdef _WIN32 -# ifndef PCRE2_STATIC -# define PCRE2_EXP_DECL extern __declspec(dllexport) -# define PCRE2_EXP_DEFN __declspec(dllexport) -# else -# define PCRE2_EXP_DECL extern -# define PCRE2_EXP_DEFN -# endif -# else -# ifdef __cplusplus -# define PCRE2_EXP_DECL extern "C" -# else -# define PCRE2_EXP_DECL extern -# endif -# ifndef PCRE2_EXP_DEFN -# define PCRE2_EXP_DEFN PCRE2_EXP_DECL -# endif -# endif -#endif - -/* Include the public PCRE2 header and the definitions of UCP character -property values. This must follow the setting of PCRE2_EXP_DECL above. */ - -#include "pcre2.h" -#include "pcre2_ucp.h" - -/* When PCRE2 is compiled as a C++ library, the subject pointer can be replaced -with a custom type. This makes it possible, for example, to allow pcre2_match() -to process subject strings that are discontinuous by using a smart pointer -class. It must always be possible to inspect all of the subject string in -pcre2_match() because of the way it backtracks. */ - -/* WARNING: This is as yet untested for PCRE2. */ - -#ifdef CUSTOM_SUBJECT_PTR -#undef PCRE2_SPTR -#define PCRE2_SPTR CUSTOM_SUBJECT_PTR -#endif - -/* When checking for integer overflow in pcre2_compile(), we need to handle -large integers. If a 64-bit integer type is available, we can use that. -Otherwise we have to cast to double, which of course requires floating point -arithmetic. Handle this by defining a macro for the appropriate type. */ - -#if defined INT64_MAX || defined int64_t -#define INT64_OR_DOUBLE int64_t -#else -#define INT64_OR_DOUBLE double -#endif - -/* External (in the C sense) functions and tables that are private to the -libraries are always referenced using the PRIV macro. This makes it possible -for pcre2test.c to include some of the source files from the libraries using a -different PRIV definition to avoid name clashes. It also makes it clear in the -code that a non-static object is being referenced. */ - -#ifndef PRIV -#define PRIV(name) _pcre2_##name -#endif - -/* When compiling for use with the Virtual Pascal compiler, these functions -need to have their names changed. PCRE2 must be compiled with the -DVPCOMPAT -option on the command line. */ - -#ifdef VPCOMPAT -#define strlen(s) _strlen(s) -#define strncmp(s1,s2,m) _strncmp(s1,s2,m) -#define memcmp(s,c,n) _memcmp(s,c,n) -#define memcpy(d,s,n) _memcpy(d,s,n) -#define memmove(d,s,n) _memmove(d,s,n) -#define memset(s,c,n) _memset(s,c,n) -#else /* VPCOMPAT */ - -/* Otherwise, to cope with SunOS4 and other systems that lack memmove(), define -a macro that calls an emulating function. */ - -#ifndef HAVE_MEMMOVE -#undef memmove /* Some systems may have a macro */ -#define memmove(a, b, c) PRIV(memmove)(a, b, c) -#endif /* not HAVE_MEMMOVE */ -#endif /* not VPCOMPAT */ - -/* This is an unsigned int value that no UTF character can ever have, as -Unicode doesn't go beyond 0x0010ffff. */ - -#define NOTACHAR 0xffffffff - -/* This is the largest valid UTF/Unicode code point. */ - -#define MAX_UTF_CODE_POINT 0x10ffff - -/* Compile-time positive error numbers (all except UTF errors, which are -negative) start at this value. It should probably never be changed, in case -some application is checking for specific numbers. There is a copy of this -#define in pcre2posix.c (which now no longer includes this file). Ideally, a -way of having a single definition should be found, but as the number is -unlikely to change, this is not a pressing issue. The original reason for -having a base other than 0 was to keep the absolute values of compile-time and -run-time error numbers numerically different, but in the event the code does -not rely on this. */ - -#define COMPILE_ERROR_BASE 100 - -/* The initial frames vector for remembering backtracking points in -pcre2_match() is allocated on the system stack, of this size (bytes). The size -must be a multiple of sizeof(PCRE2_SPTR) in all environments, so making it a -multiple of 8 is best. Typical frame sizes are a few hundred bytes (it depends -on the number of capturing parentheses) so 20KiB handles quite a few frames. A -larger vector on the heap is obtained for patterns that need more frames. The -maximum size of this can be limited. */ - -#define START_FRAMES_SIZE 20480 - -/* Similarly, for DFA matching, an initial internal workspace vector is -allocated on the stack. */ - -#define DFA_START_RWS_SIZE 30720 - -/* Define the default BSR convention. */ - -#ifdef BSR_ANYCRLF -#define BSR_DEFAULT PCRE2_BSR_ANYCRLF -#else -#define BSR_DEFAULT PCRE2_BSR_UNICODE -#endif - - -/* ---------------- Basic UTF-8 macros ---------------- */ - -/* These UTF-8 macros are always defined because they are used in pcre2test for -handling wide characters in 16-bit and 32-bit modes, even if an 8-bit library -is not supported. */ - -/* Tests whether a UTF-8 code point needs extra bytes to decode. */ - -#define HASUTF8EXTRALEN(c) ((c) >= 0xc0) - -/* The following macros were originally written in the form of loops that used -data from the tables whose names start with PRIV(utf8_table). They were -rewritten by a user so as not to use loops, because in some environments this -gives a significant performance advantage, and it seems never to do any harm. -*/ - -/* Base macro to pick up the remaining bytes of a UTF-8 character, not -advancing the pointer. */ - -#define GETUTF8(c, eptr) \ - { \ - if ((c & 0x20u) == 0) \ - c = ((c & 0x1fu) << 6) | (eptr[1] & 0x3fu); \ - else if ((c & 0x10u) == 0) \ - c = ((c & 0x0fu) << 12) | ((eptr[1] & 0x3fu) << 6) | (eptr[2] & 0x3fu); \ - else if ((c & 0x08u) == 0) \ - c = ((c & 0x07u) << 18) | ((eptr[1] & 0x3fu) << 12) | \ - ((eptr[2] & 0x3fu) << 6) | (eptr[3] & 0x3fu); \ - else if ((c & 0x04u) == 0) \ - c = ((c & 0x03u) << 24) | ((eptr[1] & 0x3fu) << 18) | \ - ((eptr[2] & 0x3fu) << 12) | ((eptr[3] & 0x3fu) << 6) | \ - (eptr[4] & 0x3fu); \ - else \ - c = ((c & 0x01u) << 30) | ((eptr[1] & 0x3fu) << 24) | \ - ((eptr[2] & 0x3fu) << 18) | ((eptr[3] & 0x3fu) << 12) | \ - ((eptr[4] & 0x3fu) << 6) | (eptr[5] & 0x3fu); \ - } - -/* Base macro to pick up the remaining bytes of a UTF-8 character, advancing -the pointer. */ - -#define GETUTF8INC(c, eptr) \ - { \ - if ((c & 0x20u) == 0) \ - c = ((c & 0x1fu) << 6) | (*eptr++ & 0x3fu); \ - else if ((c & 0x10u) == 0) \ - { \ - c = ((c & 0x0fu) << 12) | ((*eptr & 0x3fu) << 6) | (eptr[1] & 0x3fu); \ - eptr += 2; \ - } \ - else if ((c & 0x08u) == 0) \ - { \ - c = ((c & 0x07u) << 18) | ((*eptr & 0x3fu) << 12) | \ - ((eptr[1] & 0x3fu) << 6) | (eptr[2] & 0x3fu); \ - eptr += 3; \ - } \ - else if ((c & 0x04u) == 0) \ - { \ - c = ((c & 0x03u) << 24) | ((*eptr & 0x3fu) << 18) | \ - ((eptr[1] & 0x3fu) << 12) | ((eptr[2] & 0x3fu) << 6) | \ - (eptr[3] & 0x3fu); \ - eptr += 4; \ - } \ - else \ - { \ - c = ((c & 0x01u) << 30) | ((*eptr & 0x3fu) << 24) | \ - ((eptr[1] & 0x3fu) << 18) | ((eptr[2] & 0x3fu) << 12) | \ - ((eptr[3] & 0x3fu) << 6) | (eptr[4] & 0x3fu); \ - eptr += 5; \ - } \ - } - -/* Base macro to pick up the remaining bytes of a UTF-8 character, not -advancing the pointer, incrementing the length. */ - -#define GETUTF8LEN(c, eptr, len) \ - { \ - if ((c & 0x20u) == 0) \ - { \ - c = ((c & 0x1fu) << 6) | (eptr[1] & 0x3fu); \ - len++; \ - } \ - else if ((c & 0x10u) == 0) \ - { \ - c = ((c & 0x0fu) << 12) | ((eptr[1] & 0x3fu) << 6) | (eptr[2] & 0x3fu); \ - len += 2; \ - } \ - else if ((c & 0x08u) == 0) \ - {\ - c = ((c & 0x07u) << 18) | ((eptr[1] & 0x3fu) << 12) | \ - ((eptr[2] & 0x3fu) << 6) | (eptr[3] & 0x3fu); \ - len += 3; \ - } \ - else if ((c & 0x04u) == 0) \ - { \ - c = ((c & 0x03u) << 24) | ((eptr[1] & 0x3fu) << 18) | \ - ((eptr[2] & 0x3fu) << 12) | ((eptr[3] & 0x3fu) << 6) | \ - (eptr[4] & 0x3fu); \ - len += 4; \ - } \ - else \ - {\ - c = ((c & 0x01u) << 30) | ((eptr[1] & 0x3fu) << 24) | \ - ((eptr[2] & 0x3fu) << 18) | ((eptr[3] & 0x3fu) << 12) | \ - ((eptr[4] & 0x3fu) << 6) | (eptr[5] & 0x3fu); \ - len += 5; \ - } \ - } - -/* --------------- Whitespace macros ---------------- */ - -/* Tests for Unicode horizontal and vertical whitespace characters must check a -number of different values. Using a switch statement for this generates the -fastest code (no loop, no memory access), and there are several places in the -interpreter code where this happens. In order to ensure that all the case lists -remain in step, we use macros so that there is only one place where the lists -are defined. - -These values are also required as lists in pcre2_compile.c when processing \h, -\H, \v and \V in a character class. The lists are defined in pcre2_tables.c, -but macros that define the values are here so that all the definitions are -together. The lists must be in ascending character order, terminated by -NOTACHAR (which is 0xffffffff). - -Any changes should ensure that the various macros are kept in step with each -other. NOTE: The values also appear in pcre2_jit_compile.c. */ - -/* -------------- ASCII/Unicode environments -------------- */ - -#ifndef EBCDIC - -/* Character U+180E (Mongolian Vowel Separator) is not included in the list of -spaces in the Unicode file PropList.txt, and Perl does not recognize it as a -space. However, in many other sources it is listed as a space and has been in -PCRE (both APIs) for a long time. */ - -#define HSPACE_LIST \ - CHAR_HT, CHAR_SPACE, CHAR_NBSP, \ - 0x1680, 0x180e, 0x2000, 0x2001, 0x2002, 0x2003, 0x2004, 0x2005, \ - 0x2006, 0x2007, 0x2008, 0x2009, 0x200A, 0x202f, 0x205f, 0x3000, \ - NOTACHAR - -#define HSPACE_MULTIBYTE_CASES \ - case 0x1680: /* OGHAM SPACE MARK */ \ - case 0x180e: /* MONGOLIAN VOWEL SEPARATOR */ \ - case 0x2000: /* EN QUAD */ \ - case 0x2001: /* EM QUAD */ \ - case 0x2002: /* EN SPACE */ \ - case 0x2003: /* EM SPACE */ \ - case 0x2004: /* THREE-PER-EM SPACE */ \ - case 0x2005: /* FOUR-PER-EM SPACE */ \ - case 0x2006: /* SIX-PER-EM SPACE */ \ - case 0x2007: /* FIGURE SPACE */ \ - case 0x2008: /* PUNCTUATION SPACE */ \ - case 0x2009: /* THIN SPACE */ \ - case 0x200A: /* HAIR SPACE */ \ - case 0x202f: /* NARROW NO-BREAK SPACE */ \ - case 0x205f: /* MEDIUM MATHEMATICAL SPACE */ \ - case 0x3000 /* IDEOGRAPHIC SPACE */ - -#define HSPACE_BYTE_CASES \ - case CHAR_HT: \ - case CHAR_SPACE: \ - case CHAR_NBSP - -#define HSPACE_CASES \ - HSPACE_BYTE_CASES: \ - HSPACE_MULTIBYTE_CASES - -#define VSPACE_LIST \ - CHAR_LF, CHAR_VT, CHAR_FF, CHAR_CR, CHAR_NEL, 0x2028, 0x2029, NOTACHAR - -#define VSPACE_MULTIBYTE_CASES \ - case 0x2028: /* LINE SEPARATOR */ \ - case 0x2029 /* PARAGRAPH SEPARATOR */ - -#define VSPACE_BYTE_CASES \ - case CHAR_LF: \ - case CHAR_VT: \ - case CHAR_FF: \ - case CHAR_CR: \ - case CHAR_NEL - -#define VSPACE_CASES \ - VSPACE_BYTE_CASES: \ - VSPACE_MULTIBYTE_CASES - -/* -------------- EBCDIC environments -------------- */ - -#else -#define HSPACE_LIST CHAR_HT, CHAR_SPACE, CHAR_NBSP, NOTACHAR - -#define HSPACE_BYTE_CASES \ - case CHAR_HT: \ - case CHAR_SPACE: \ - case CHAR_NBSP - -#define HSPACE_CASES HSPACE_BYTE_CASES - -#ifdef EBCDIC_NL25 -#define VSPACE_LIST \ - CHAR_VT, CHAR_FF, CHAR_CR, CHAR_NEL, CHAR_LF, NOTACHAR -#else -#define VSPACE_LIST \ - CHAR_VT, CHAR_FF, CHAR_CR, CHAR_LF, CHAR_NEL, NOTACHAR -#endif - -#define VSPACE_BYTE_CASES \ - case CHAR_LF: \ - case CHAR_VT: \ - case CHAR_FF: \ - case CHAR_CR: \ - case CHAR_NEL - -#define VSPACE_CASES VSPACE_BYTE_CASES -#endif /* EBCDIC */ - -/* -------------- End of whitespace macros -------------- */ - - -/* PCRE2 is able to support several different kinds of newline (CR, LF, CRLF, -"any" and "anycrlf" at present). The following macros are used to package up -testing for newlines. NLBLOCK, PSSTART, and PSEND are defined in the various -modules to indicate in which datablock the parameters exist, and what the -start/end of string field names are. */ - -#define NLTYPE_FIXED 0 /* Newline is a fixed length string */ -#define NLTYPE_ANY 1 /* Newline is any Unicode line ending */ -#define NLTYPE_ANYCRLF 2 /* Newline is CR, LF, or CRLF */ - -/* This macro checks for a newline at the given position */ - -#define IS_NEWLINE(p) \ - ((NLBLOCK->nltype != NLTYPE_FIXED)? \ - ((p) < NLBLOCK->PSEND && \ - PRIV(is_newline)((p), NLBLOCK->nltype, NLBLOCK->PSEND, \ - &(NLBLOCK->nllen), utf)) \ - : \ - ((p) <= NLBLOCK->PSEND - NLBLOCK->nllen && \ - UCHAR21TEST(p) == NLBLOCK->nl[0] && \ - (NLBLOCK->nllen == 1 || UCHAR21TEST(p+1) == NLBLOCK->nl[1]) \ - ) \ - ) - -/* This macro checks for a newline immediately preceding the given position */ - -#define WAS_NEWLINE(p) \ - ((NLBLOCK->nltype != NLTYPE_FIXED)? \ - ((p) > NLBLOCK->PSSTART && \ - PRIV(was_newline)((p), NLBLOCK->nltype, NLBLOCK->PSSTART, \ - &(NLBLOCK->nllen), utf)) \ - : \ - ((p) >= NLBLOCK->PSSTART + NLBLOCK->nllen && \ - UCHAR21TEST(p - NLBLOCK->nllen) == NLBLOCK->nl[0] && \ - (NLBLOCK->nllen == 1 || UCHAR21TEST(p - NLBLOCK->nllen + 1) == NLBLOCK->nl[1]) \ - ) \ - ) - -/* Private flags containing information about the compiled pattern. The first -three must not be changed, because whichever is set is actually the number of -bytes in a code unit in that mode. */ - -#define PCRE2_MODE8 0x00000001 /* compiled in 8 bit mode */ -#define PCRE2_MODE16 0x00000002 /* compiled in 16 bit mode */ -#define PCRE2_MODE32 0x00000004 /* compiled in 32 bit mode */ -#define PCRE2_FIRSTSET 0x00000010 /* first_code unit is set */ -#define PCRE2_FIRSTCASELESS 0x00000020 /* caseless first code unit */ -#define PCRE2_FIRSTMAPSET 0x00000040 /* bitmap of first code units is set */ -#define PCRE2_LASTSET 0x00000080 /* last code unit is set */ -#define PCRE2_LASTCASELESS 0x00000100 /* caseless last code unit */ -#define PCRE2_STARTLINE 0x00000200 /* start after \n for multiline */ -#define PCRE2_JCHANGED 0x00000400 /* j option used in pattern */ -#define PCRE2_HASCRORLF 0x00000800 /* explicit \r or \n in pattern */ -#define PCRE2_HASTHEN 0x00001000 /* pattern contains (*THEN) */ -#define PCRE2_MATCH_EMPTY 0x00002000 /* pattern can match empty string */ -#define PCRE2_BSR_SET 0x00004000 /* BSR was set in the pattern */ -#define PCRE2_NL_SET 0x00008000 /* newline was set in the pattern */ -#define PCRE2_NOTEMPTY_SET 0x00010000 /* (*NOTEMPTY) used ) keep */ -#define PCRE2_NE_ATST_SET 0x00020000 /* (*NOTEMPTY_ATSTART) used) together */ -#define PCRE2_DEREF_TABLES 0x00040000 /* release character tables */ -#define PCRE2_NOJIT 0x00080000 /* (*NOJIT) used */ -#define PCRE2_HASBKPORX 0x00100000 /* contains \P, \p, or \X */ -#define PCRE2_DUPCAPUSED 0x00200000 /* contains (?| */ -#define PCRE2_HASBKC 0x00400000 /* contains \C */ -#define PCRE2_HASACCEPT 0x00800000 /* contains (*ACCEPT) */ - -#define PCRE2_MODE_MASK (PCRE2_MODE8 | PCRE2_MODE16 | PCRE2_MODE32) - -/* Values for the matchedby field in a match data block. */ - -enum { PCRE2_MATCHEDBY_INTERPRETER, /* pcre2_match() */ - PCRE2_MATCHEDBY_DFA_INTERPRETER, /* pcre2_dfa_match() */ - PCRE2_MATCHEDBY_JIT }; /* pcre2_jit_match() */ - -/* Values for the flags field in a match data block. */ - -#define PCRE2_MD_COPIED_SUBJECT 0x01u - -/* Magic number to provide a small check against being handed junk. */ - -#define MAGIC_NUMBER 0x50435245UL /* 'PCRE' */ - -/* The maximum remaining length of subject we are prepared to search for a -req_unit match from an anchored pattern. In 8-bit mode, memchr() is used and is -much faster than the search loop that has to be used in 16-bit and 32-bit -modes. */ - -#if PCRE2_CODE_UNIT_WIDTH == 8 -#define REQ_CU_MAX 5000 -#else -#define REQ_CU_MAX 2000 -#endif - -/* Offsets for the bitmap tables in the cbits set of tables. Each table -contains a set of bits for a class map. Some classes are built by combining -these tables. */ - -#define cbit_space 0 /* [:space:] or \s */ -#define cbit_xdigit 32 /* [:xdigit:] */ -#define cbit_digit 64 /* [:digit:] or \d */ -#define cbit_upper 96 /* [:upper:] */ -#define cbit_lower 128 /* [:lower:] */ -#define cbit_word 160 /* [:word:] or \w */ -#define cbit_graph 192 /* [:graph:] */ -#define cbit_print 224 /* [:print:] */ -#define cbit_punct 256 /* [:punct:] */ -#define cbit_cntrl 288 /* [:cntrl:] */ -#define cbit_length 320 /* Length of the cbits table */ - -/* Bit definitions for entries in the ctypes table. Do not change these values -without checking pcre2_jit_compile.c, which has an assertion to ensure that -ctype_word has the value 16. */ - -#define ctype_space 0x01 -#define ctype_letter 0x02 -#define ctype_lcletter 0x04 -#define ctype_digit 0x08 -#define ctype_word 0x10 /* alphanumeric or '_' */ - -/* Offsets of the various tables from the base tables pointer, and -total length of the tables. */ - -#define lcc_offset 0 /* Lower case */ -#define fcc_offset 256 /* Flip case */ -#define cbits_offset 512 /* Character classes */ -#define ctypes_offset (cbits_offset + cbit_length) /* Character types */ -#define TABLES_LENGTH (ctypes_offset + 256) - - -/* -------------------- Character and string names ------------------------ */ - -/* If PCRE2 is to support UTF-8 on EBCDIC platforms, we cannot use normal -character constants like '*' because the compiler would emit their EBCDIC code, -which is different from their ASCII/UTF-8 code. Instead we define macros for -the characters so that they always use the ASCII/UTF-8 code when UTF-8 support -is enabled. When UTF-8 support is not enabled, the definitions use character -literals. Both character and string versions of each character are needed, and -there are some longer strings as well. - -This means that, on EBCDIC platforms, the PCRE2 library can handle either -EBCDIC, or UTF-8, but not both. To support both in the same compiled library -would need different lookups depending on whether PCRE2_UTF was set or not. -This would make it impossible to use characters in switch/case statements, -which would reduce performance. For a theoretical use (which nobody has asked -for) in a minority area (EBCDIC platforms), this is not sensible. Any -application that did need both could compile two versions of the library, using -macros to give the functions distinct names. */ - -#ifndef SUPPORT_UNICODE - -/* UTF-8 support is not enabled; use the platform-dependent character literals -so that PCRE2 works in both ASCII and EBCDIC environments, but only in non-UTF -mode. Newline characters are problematic in EBCDIC. Though it has CR and LF -characters, a common practice has been to use its NL (0x15) character as the -line terminator in C-like processing environments. However, sometimes the LF -(0x25) character is used instead, according to this Unicode document: - -http://unicode.org/standard/reports/tr13/tr13-5.html - -PCRE2 defaults EBCDIC NL to 0x15, but has a build-time option to select 0x25 -instead. Whichever is *not* chosen is defined as NEL. - -In both ASCII and EBCDIC environments, CHAR_NL and CHAR_LF are synonyms for the -same code point. */ - -#ifdef EBCDIC - -#ifndef EBCDIC_NL25 -#define CHAR_NL '\x15' -#define CHAR_NEL '\x25' -#define STR_NL "\x15" -#define STR_NEL "\x25" -#else -#define CHAR_NL '\x25' -#define CHAR_NEL '\x15' -#define STR_NL "\x25" -#define STR_NEL "\x15" -#endif - -#define CHAR_LF CHAR_NL -#define STR_LF STR_NL - -#define CHAR_ESC '\047' -#define CHAR_DEL '\007' -#define CHAR_NBSP ((unsigned char)'\x41') -#define STR_ESC "\047" -#define STR_DEL "\007" - -#else /* Not EBCDIC */ - -/* In ASCII/Unicode, linefeed is '\n' and we equate this to NL for -compatibility. NEL is the Unicode newline character; make sure it is -a positive value. */ - -#define CHAR_LF '\n' -#define CHAR_NL CHAR_LF -#define CHAR_NEL ((unsigned char)'\x85') -#define CHAR_ESC '\033' -#define CHAR_DEL '\177' -#define CHAR_NBSP ((unsigned char)'\xa0') - -#define STR_LF "\n" -#define STR_NL STR_LF -#define STR_NEL "\x85" -#define STR_ESC "\033" -#define STR_DEL "\177" - -#endif /* EBCDIC */ - -/* The remaining definitions work in both environments. */ - -#define CHAR_NUL '\0' -#define CHAR_HT '\t' -#define CHAR_VT '\v' -#define CHAR_FF '\f' -#define CHAR_CR '\r' -#define CHAR_BS '\b' -#define CHAR_BEL '\a' - -#define CHAR_SPACE ' ' -#define CHAR_EXCLAMATION_MARK '!' -#define CHAR_QUOTATION_MARK '"' -#define CHAR_NUMBER_SIGN '#' -#define CHAR_DOLLAR_SIGN '$' -#define CHAR_PERCENT_SIGN '%' -#define CHAR_AMPERSAND '&' -#define CHAR_APOSTROPHE '\'' -#define CHAR_LEFT_PARENTHESIS '(' -#define CHAR_RIGHT_PARENTHESIS ')' -#define CHAR_ASTERISK '*' -#define CHAR_PLUS '+' -#define CHAR_COMMA ',' -#define CHAR_MINUS '-' -#define CHAR_DOT '.' -#define CHAR_SLASH '/' -#define CHAR_0 '0' -#define CHAR_1 '1' -#define CHAR_2 '2' -#define CHAR_3 '3' -#define CHAR_4 '4' -#define CHAR_5 '5' -#define CHAR_6 '6' -#define CHAR_7 '7' -#define CHAR_8 '8' -#define CHAR_9 '9' -#define CHAR_COLON ':' -#define CHAR_SEMICOLON ';' -#define CHAR_LESS_THAN_SIGN '<' -#define CHAR_EQUALS_SIGN '=' -#define CHAR_GREATER_THAN_SIGN '>' -#define CHAR_QUESTION_MARK '?' -#define CHAR_COMMERCIAL_AT '@' -#define CHAR_A 'A' -#define CHAR_B 'B' -#define CHAR_C 'C' -#define CHAR_D 'D' -#define CHAR_E 'E' -#define CHAR_F 'F' -#define CHAR_G 'G' -#define CHAR_H 'H' -#define CHAR_I 'I' -#define CHAR_J 'J' -#define CHAR_K 'K' -#define CHAR_L 'L' -#define CHAR_M 'M' -#define CHAR_N 'N' -#define CHAR_O 'O' -#define CHAR_P 'P' -#define CHAR_Q 'Q' -#define CHAR_R 'R' -#define CHAR_S 'S' -#define CHAR_T 'T' -#define CHAR_U 'U' -#define CHAR_V 'V' -#define CHAR_W 'W' -#define CHAR_X 'X' -#define CHAR_Y 'Y' -#define CHAR_Z 'Z' -#define CHAR_LEFT_SQUARE_BRACKET '[' -#define CHAR_BACKSLASH '\\' -#define CHAR_RIGHT_SQUARE_BRACKET ']' -#define CHAR_CIRCUMFLEX_ACCENT '^' -#define CHAR_UNDERSCORE '_' -#define CHAR_GRAVE_ACCENT '`' -#define CHAR_a 'a' -#define CHAR_b 'b' -#define CHAR_c 'c' -#define CHAR_d 'd' -#define CHAR_e 'e' -#define CHAR_f 'f' -#define CHAR_g 'g' -#define CHAR_h 'h' -#define CHAR_i 'i' -#define CHAR_j 'j' -#define CHAR_k 'k' -#define CHAR_l 'l' -#define CHAR_m 'm' -#define CHAR_n 'n' -#define CHAR_o 'o' -#define CHAR_p 'p' -#define CHAR_q 'q' -#define CHAR_r 'r' -#define CHAR_s 's' -#define CHAR_t 't' -#define CHAR_u 'u' -#define CHAR_v 'v' -#define CHAR_w 'w' -#define CHAR_x 'x' -#define CHAR_y 'y' -#define CHAR_z 'z' -#define CHAR_LEFT_CURLY_BRACKET '{' -#define CHAR_VERTICAL_LINE '|' -#define CHAR_RIGHT_CURLY_BRACKET '}' -#define CHAR_TILDE '~' - -#define STR_HT "\t" -#define STR_VT "\v" -#define STR_FF "\f" -#define STR_CR "\r" -#define STR_BS "\b" -#define STR_BEL "\a" - -#define STR_SPACE " " -#define STR_EXCLAMATION_MARK "!" -#define STR_QUOTATION_MARK "\"" -#define STR_NUMBER_SIGN "#" -#define STR_DOLLAR_SIGN "$" -#define STR_PERCENT_SIGN "%" -#define STR_AMPERSAND "&" -#define STR_APOSTROPHE "'" -#define STR_LEFT_PARENTHESIS "(" -#define STR_RIGHT_PARENTHESIS ")" -#define STR_ASTERISK "*" -#define STR_PLUS "+" -#define STR_COMMA "," -#define STR_MINUS "-" -#define STR_DOT "." -#define STR_SLASH "/" -#define STR_0 "0" -#define STR_1 "1" -#define STR_2 "2" -#define STR_3 "3" -#define STR_4 "4" -#define STR_5 "5" -#define STR_6 "6" -#define STR_7 "7" -#define STR_8 "8" -#define STR_9 "9" -#define STR_COLON ":" -#define STR_SEMICOLON ";" -#define STR_LESS_THAN_SIGN "<" -#define STR_EQUALS_SIGN "=" -#define STR_GREATER_THAN_SIGN ">" -#define STR_QUESTION_MARK "?" -#define STR_COMMERCIAL_AT "@" -#define STR_A "A" -#define STR_B "B" -#define STR_C "C" -#define STR_D "D" -#define STR_E "E" -#define STR_F "F" -#define STR_G "G" -#define STR_H "H" -#define STR_I "I" -#define STR_J "J" -#define STR_K "K" -#define STR_L "L" -#define STR_M "M" -#define STR_N "N" -#define STR_O "O" -#define STR_P "P" -#define STR_Q "Q" -#define STR_R "R" -#define STR_S "S" -#define STR_T "T" -#define STR_U "U" -#define STR_V "V" -#define STR_W "W" -#define STR_X "X" -#define STR_Y "Y" -#define STR_Z "Z" -#define STR_LEFT_SQUARE_BRACKET "[" -#define STR_BACKSLASH "\\" -#define STR_RIGHT_SQUARE_BRACKET "]" -#define STR_CIRCUMFLEX_ACCENT "^" -#define STR_UNDERSCORE "_" -#define STR_GRAVE_ACCENT "`" -#define STR_a "a" -#define STR_b "b" -#define STR_c "c" -#define STR_d "d" -#define STR_e "e" -#define STR_f "f" -#define STR_g "g" -#define STR_h "h" -#define STR_i "i" -#define STR_j "j" -#define STR_k "k" -#define STR_l "l" -#define STR_m "m" -#define STR_n "n" -#define STR_o "o" -#define STR_p "p" -#define STR_q "q" -#define STR_r "r" -#define STR_s "s" -#define STR_t "t" -#define STR_u "u" -#define STR_v "v" -#define STR_w "w" -#define STR_x "x" -#define STR_y "y" -#define STR_z "z" -#define STR_LEFT_CURLY_BRACKET "{" -#define STR_VERTICAL_LINE "|" -#define STR_RIGHT_CURLY_BRACKET "}" -#define STR_TILDE "~" - -#define STRING_ACCEPT0 "ACCEPT\0" -#define STRING_COMMIT0 "COMMIT\0" -#define STRING_F0 "F\0" -#define STRING_FAIL0 "FAIL\0" -#define STRING_MARK0 "MARK\0" -#define STRING_PRUNE0 "PRUNE\0" -#define STRING_SKIP0 "SKIP\0" -#define STRING_THEN "THEN" - -#define STRING_atomic0 "atomic\0" -#define STRING_pla0 "pla\0" -#define STRING_plb0 "plb\0" -#define STRING_napla0 "napla\0" -#define STRING_naplb0 "naplb\0" -#define STRING_nla0 "nla\0" -#define STRING_nlb0 "nlb\0" -#define STRING_sr0 "sr\0" -#define STRING_asr0 "asr\0" -#define STRING_positive_lookahead0 "positive_lookahead\0" -#define STRING_positive_lookbehind0 "positive_lookbehind\0" -#define STRING_non_atomic_positive_lookahead0 "non_atomic_positive_lookahead\0" -#define STRING_non_atomic_positive_lookbehind0 "non_atomic_positive_lookbehind\0" -#define STRING_negative_lookahead0 "negative_lookahead\0" -#define STRING_negative_lookbehind0 "negative_lookbehind\0" -#define STRING_script_run0 "script_run\0" -#define STRING_atomic_script_run "atomic_script_run" - -#define STRING_alpha0 "alpha\0" -#define STRING_lower0 "lower\0" -#define STRING_upper0 "upper\0" -#define STRING_alnum0 "alnum\0" -#define STRING_ascii0 "ascii\0" -#define STRING_blank0 "blank\0" -#define STRING_cntrl0 "cntrl\0" -#define STRING_digit0 "digit\0" -#define STRING_graph0 "graph\0" -#define STRING_print0 "print\0" -#define STRING_punct0 "punct\0" -#define STRING_space0 "space\0" -#define STRING_word0 "word\0" -#define STRING_xdigit "xdigit" - -#define STRING_DEFINE "DEFINE" -#define STRING_VERSION "VERSION" -#define STRING_WEIRD_STARTWORD "[:<:]]" -#define STRING_WEIRD_ENDWORD "[:>:]]" - -#define STRING_CR_RIGHTPAR "CR)" -#define STRING_LF_RIGHTPAR "LF)" -#define STRING_CRLF_RIGHTPAR "CRLF)" -#define STRING_ANY_RIGHTPAR "ANY)" -#define STRING_ANYCRLF_RIGHTPAR "ANYCRLF)" -#define STRING_NUL_RIGHTPAR "NUL)" -#define STRING_BSR_ANYCRLF_RIGHTPAR "BSR_ANYCRLF)" -#define STRING_BSR_UNICODE_RIGHTPAR "BSR_UNICODE)" -#define STRING_UTF8_RIGHTPAR "UTF8)" -#define STRING_UTF16_RIGHTPAR "UTF16)" -#define STRING_UTF32_RIGHTPAR "UTF32)" -#define STRING_UTF_RIGHTPAR "UTF)" -#define STRING_UCP_RIGHTPAR "UCP)" -#define STRING_NO_AUTO_POSSESS_RIGHTPAR "NO_AUTO_POSSESS)" -#define STRING_NO_DOTSTAR_ANCHOR_RIGHTPAR "NO_DOTSTAR_ANCHOR)" -#define STRING_NO_JIT_RIGHTPAR "NO_JIT)" -#define STRING_NO_START_OPT_RIGHTPAR "NO_START_OPT)" -#define STRING_NOTEMPTY_RIGHTPAR "NOTEMPTY)" -#define STRING_NOTEMPTY_ATSTART_RIGHTPAR "NOTEMPTY_ATSTART)" -#define STRING_LIMIT_HEAP_EQ "LIMIT_HEAP=" -#define STRING_LIMIT_MATCH_EQ "LIMIT_MATCH=" -#define STRING_LIMIT_DEPTH_EQ "LIMIT_DEPTH=" -#define STRING_LIMIT_RECURSION_EQ "LIMIT_RECURSION=" -#define STRING_MARK "MARK" - -#else /* SUPPORT_UNICODE */ - -/* UTF-8 support is enabled; always use UTF-8 (=ASCII) character codes. This -works in both modes non-EBCDIC platforms, and on EBCDIC platforms in UTF-8 mode -only. */ - -#define CHAR_HT '\011' -#define CHAR_VT '\013' -#define CHAR_FF '\014' -#define CHAR_CR '\015' -#define CHAR_LF '\012' -#define CHAR_NL CHAR_LF -#define CHAR_NEL ((unsigned char)'\x85') -#define CHAR_BS '\010' -#define CHAR_BEL '\007' -#define CHAR_ESC '\033' -#define CHAR_DEL '\177' - -#define CHAR_NUL '\0' -#define CHAR_SPACE '\040' -#define CHAR_EXCLAMATION_MARK '\041' -#define CHAR_QUOTATION_MARK '\042' -#define CHAR_NUMBER_SIGN '\043' -#define CHAR_DOLLAR_SIGN '\044' -#define CHAR_PERCENT_SIGN '\045' -#define CHAR_AMPERSAND '\046' -#define CHAR_APOSTROPHE '\047' -#define CHAR_LEFT_PARENTHESIS '\050' -#define CHAR_RIGHT_PARENTHESIS '\051' -#define CHAR_ASTERISK '\052' -#define CHAR_PLUS '\053' -#define CHAR_COMMA '\054' -#define CHAR_MINUS '\055' -#define CHAR_DOT '\056' -#define CHAR_SLASH '\057' -#define CHAR_0 '\060' -#define CHAR_1 '\061' -#define CHAR_2 '\062' -#define CHAR_3 '\063' -#define CHAR_4 '\064' -#define CHAR_5 '\065' -#define CHAR_6 '\066' -#define CHAR_7 '\067' -#define CHAR_8 '\070' -#define CHAR_9 '\071' -#define CHAR_COLON '\072' -#define CHAR_SEMICOLON '\073' -#define CHAR_LESS_THAN_SIGN '\074' -#define CHAR_EQUALS_SIGN '\075' -#define CHAR_GREATER_THAN_SIGN '\076' -#define CHAR_QUESTION_MARK '\077' -#define CHAR_COMMERCIAL_AT '\100' -#define CHAR_A '\101' -#define CHAR_B '\102' -#define CHAR_C '\103' -#define CHAR_D '\104' -#define CHAR_E '\105' -#define CHAR_F '\106' -#define CHAR_G '\107' -#define CHAR_H '\110' -#define CHAR_I '\111' -#define CHAR_J '\112' -#define CHAR_K '\113' -#define CHAR_L '\114' -#define CHAR_M '\115' -#define CHAR_N '\116' -#define CHAR_O '\117' -#define CHAR_P '\120' -#define CHAR_Q '\121' -#define CHAR_R '\122' -#define CHAR_S '\123' -#define CHAR_T '\124' -#define CHAR_U '\125' -#define CHAR_V '\126' -#define CHAR_W '\127' -#define CHAR_X '\130' -#define CHAR_Y '\131' -#define CHAR_Z '\132' -#define CHAR_LEFT_SQUARE_BRACKET '\133' -#define CHAR_BACKSLASH '\134' -#define CHAR_RIGHT_SQUARE_BRACKET '\135' -#define CHAR_CIRCUMFLEX_ACCENT '\136' -#define CHAR_UNDERSCORE '\137' -#define CHAR_GRAVE_ACCENT '\140' -#define CHAR_a '\141' -#define CHAR_b '\142' -#define CHAR_c '\143' -#define CHAR_d '\144' -#define CHAR_e '\145' -#define CHAR_f '\146' -#define CHAR_g '\147' -#define CHAR_h '\150' -#define CHAR_i '\151' -#define CHAR_j '\152' -#define CHAR_k '\153' -#define CHAR_l '\154' -#define CHAR_m '\155' -#define CHAR_n '\156' -#define CHAR_o '\157' -#define CHAR_p '\160' -#define CHAR_q '\161' -#define CHAR_r '\162' -#define CHAR_s '\163' -#define CHAR_t '\164' -#define CHAR_u '\165' -#define CHAR_v '\166' -#define CHAR_w '\167' -#define CHAR_x '\170' -#define CHAR_y '\171' -#define CHAR_z '\172' -#define CHAR_LEFT_CURLY_BRACKET '\173' -#define CHAR_VERTICAL_LINE '\174' -#define CHAR_RIGHT_CURLY_BRACKET '\175' -#define CHAR_TILDE '\176' -#define CHAR_NBSP ((unsigned char)'\xa0') - -#define STR_HT "\011" -#define STR_VT "\013" -#define STR_FF "\014" -#define STR_CR "\015" -#define STR_NL "\012" -#define STR_BS "\010" -#define STR_BEL "\007" -#define STR_ESC "\033" -#define STR_DEL "\177" - -#define STR_SPACE "\040" -#define STR_EXCLAMATION_MARK "\041" -#define STR_QUOTATION_MARK "\042" -#define STR_NUMBER_SIGN "\043" -#define STR_DOLLAR_SIGN "\044" -#define STR_PERCENT_SIGN "\045" -#define STR_AMPERSAND "\046" -#define STR_APOSTROPHE "\047" -#define STR_LEFT_PARENTHESIS "\050" -#define STR_RIGHT_PARENTHESIS "\051" -#define STR_ASTERISK "\052" -#define STR_PLUS "\053" -#define STR_COMMA "\054" -#define STR_MINUS "\055" -#define STR_DOT "\056" -#define STR_SLASH "\057" -#define STR_0 "\060" -#define STR_1 "\061" -#define STR_2 "\062" -#define STR_3 "\063" -#define STR_4 "\064" -#define STR_5 "\065" -#define STR_6 "\066" -#define STR_7 "\067" -#define STR_8 "\070" -#define STR_9 "\071" -#define STR_COLON "\072" -#define STR_SEMICOLON "\073" -#define STR_LESS_THAN_SIGN "\074" -#define STR_EQUALS_SIGN "\075" -#define STR_GREATER_THAN_SIGN "\076" -#define STR_QUESTION_MARK "\077" -#define STR_COMMERCIAL_AT "\100" -#define STR_A "\101" -#define STR_B "\102" -#define STR_C "\103" -#define STR_D "\104" -#define STR_E "\105" -#define STR_F "\106" -#define STR_G "\107" -#define STR_H "\110" -#define STR_I "\111" -#define STR_J "\112" -#define STR_K "\113" -#define STR_L "\114" -#define STR_M "\115" -#define STR_N "\116" -#define STR_O "\117" -#define STR_P "\120" -#define STR_Q "\121" -#define STR_R "\122" -#define STR_S "\123" -#define STR_T "\124" -#define STR_U "\125" -#define STR_V "\126" -#define STR_W "\127" -#define STR_X "\130" -#define STR_Y "\131" -#define STR_Z "\132" -#define STR_LEFT_SQUARE_BRACKET "\133" -#define STR_BACKSLASH "\134" -#define STR_RIGHT_SQUARE_BRACKET "\135" -#define STR_CIRCUMFLEX_ACCENT "\136" -#define STR_UNDERSCORE "\137" -#define STR_GRAVE_ACCENT "\140" -#define STR_a "\141" -#define STR_b "\142" -#define STR_c "\143" -#define STR_d "\144" -#define STR_e "\145" -#define STR_f "\146" -#define STR_g "\147" -#define STR_h "\150" -#define STR_i "\151" -#define STR_j "\152" -#define STR_k "\153" -#define STR_l "\154" -#define STR_m "\155" -#define STR_n "\156" -#define STR_o "\157" -#define STR_p "\160" -#define STR_q "\161" -#define STR_r "\162" -#define STR_s "\163" -#define STR_t "\164" -#define STR_u "\165" -#define STR_v "\166" -#define STR_w "\167" -#define STR_x "\170" -#define STR_y "\171" -#define STR_z "\172" -#define STR_LEFT_CURLY_BRACKET "\173" -#define STR_VERTICAL_LINE "\174" -#define STR_RIGHT_CURLY_BRACKET "\175" -#define STR_TILDE "\176" - -#define STRING_ACCEPT0 STR_A STR_C STR_C STR_E STR_P STR_T "\0" -#define STRING_COMMIT0 STR_C STR_O STR_M STR_M STR_I STR_T "\0" -#define STRING_F0 STR_F "\0" -#define STRING_FAIL0 STR_F STR_A STR_I STR_L "\0" -#define STRING_MARK0 STR_M STR_A STR_R STR_K "\0" -#define STRING_PRUNE0 STR_P STR_R STR_U STR_N STR_E "\0" -#define STRING_SKIP0 STR_S STR_K STR_I STR_P "\0" -#define STRING_THEN STR_T STR_H STR_E STR_N - -#define STRING_atomic0 STR_a STR_t STR_o STR_m STR_i STR_c "\0" -#define STRING_pla0 STR_p STR_l STR_a "\0" -#define STRING_plb0 STR_p STR_l STR_b "\0" -#define STRING_napla0 STR_n STR_a STR_p STR_l STR_a "\0" -#define STRING_naplb0 STR_n STR_a STR_p STR_l STR_b "\0" -#define STRING_nla0 STR_n STR_l STR_a "\0" -#define STRING_nlb0 STR_n STR_l STR_b "\0" -#define STRING_sr0 STR_s STR_r "\0" -#define STRING_asr0 STR_a STR_s STR_r "\0" -#define STRING_positive_lookahead0 STR_p STR_o STR_s STR_i STR_t STR_i STR_v STR_e STR_UNDERSCORE STR_l STR_o STR_o STR_k STR_a STR_h STR_e STR_a STR_d "\0" -#define STRING_positive_lookbehind0 STR_p STR_o STR_s STR_i STR_t STR_i STR_v STR_e STR_UNDERSCORE STR_l STR_o STR_o STR_k STR_b STR_e STR_h STR_i STR_n STR_d "\0" -#define STRING_non_atomic_positive_lookahead0 STR_n STR_o STR_n STR_UNDERSCORE STR_a STR_t STR_o STR_m STR_i STR_c STR_UNDERSCORE STR_p STR_o STR_s STR_i STR_t STR_i STR_v STR_e STR_UNDERSCORE STR_l STR_o STR_o STR_k STR_a STR_h STR_e STR_a STR_d "\0" -#define STRING_non_atomic_positive_lookbehind0 STR_n STR_o STR_n STR_UNDERSCORE STR_a STR_t STR_o STR_m STR_i STR_c STR_UNDERSCORE STR_p STR_o STR_s STR_i STR_t STR_i STR_v STR_e STR_UNDERSCORE STR_l STR_o STR_o STR_k STR_b STR_e STR_h STR_i STR_n STR_d "\0" -#define STRING_negative_lookahead0 STR_n STR_e STR_g STR_a STR_t STR_i STR_v STR_e STR_UNDERSCORE STR_l STR_o STR_o STR_k STR_a STR_h STR_e STR_a STR_d "\0" -#define STRING_negative_lookbehind0 STR_n STR_e STR_g STR_a STR_t STR_i STR_v STR_e STR_UNDERSCORE STR_l STR_o STR_o STR_k STR_b STR_e STR_h STR_i STR_n STR_d "\0" -#define STRING_script_run0 STR_s STR_c STR_r STR_i STR_p STR_t STR_UNDERSCORE STR_r STR_u STR_n "\0" -#define STRING_atomic_script_run STR_a STR_t STR_o STR_m STR_i STR_c STR_UNDERSCORE STR_s STR_c STR_r STR_i STR_p STR_t STR_UNDERSCORE STR_r STR_u STR_n - -#define STRING_alpha0 STR_a STR_l STR_p STR_h STR_a "\0" -#define STRING_lower0 STR_l STR_o STR_w STR_e STR_r "\0" -#define STRING_upper0 STR_u STR_p STR_p STR_e STR_r "\0" -#define STRING_alnum0 STR_a STR_l STR_n STR_u STR_m "\0" -#define STRING_ascii0 STR_a STR_s STR_c STR_i STR_i "\0" -#define STRING_blank0 STR_b STR_l STR_a STR_n STR_k "\0" -#define STRING_cntrl0 STR_c STR_n STR_t STR_r STR_l "\0" -#define STRING_digit0 STR_d STR_i STR_g STR_i STR_t "\0" -#define STRING_graph0 STR_g STR_r STR_a STR_p STR_h "\0" -#define STRING_print0 STR_p STR_r STR_i STR_n STR_t "\0" -#define STRING_punct0 STR_p STR_u STR_n STR_c STR_t "\0" -#define STRING_space0 STR_s STR_p STR_a STR_c STR_e "\0" -#define STRING_word0 STR_w STR_o STR_r STR_d "\0" -#define STRING_xdigit STR_x STR_d STR_i STR_g STR_i STR_t - -#define STRING_DEFINE STR_D STR_E STR_F STR_I STR_N STR_E -#define STRING_VERSION STR_V STR_E STR_R STR_S STR_I STR_O STR_N -#define STRING_WEIRD_STARTWORD STR_LEFT_SQUARE_BRACKET STR_COLON STR_LESS_THAN_SIGN STR_COLON STR_RIGHT_SQUARE_BRACKET STR_RIGHT_SQUARE_BRACKET -#define STRING_WEIRD_ENDWORD STR_LEFT_SQUARE_BRACKET STR_COLON STR_GREATER_THAN_SIGN STR_COLON STR_RIGHT_SQUARE_BRACKET STR_RIGHT_SQUARE_BRACKET - -#define STRING_CR_RIGHTPAR STR_C STR_R STR_RIGHT_PARENTHESIS -#define STRING_LF_RIGHTPAR STR_L STR_F STR_RIGHT_PARENTHESIS -#define STRING_CRLF_RIGHTPAR STR_C STR_R STR_L STR_F STR_RIGHT_PARENTHESIS -#define STRING_ANY_RIGHTPAR STR_A STR_N STR_Y STR_RIGHT_PARENTHESIS -#define STRING_ANYCRLF_RIGHTPAR STR_A STR_N STR_Y STR_C STR_R STR_L STR_F STR_RIGHT_PARENTHESIS -#define STRING_NUL_RIGHTPAR STR_N STR_U STR_L STR_RIGHT_PARENTHESIS -#define STRING_BSR_ANYCRLF_RIGHTPAR STR_B STR_S STR_R STR_UNDERSCORE STR_A STR_N STR_Y STR_C STR_R STR_L STR_F STR_RIGHT_PARENTHESIS -#define STRING_BSR_UNICODE_RIGHTPAR STR_B STR_S STR_R STR_UNDERSCORE STR_U STR_N STR_I STR_C STR_O STR_D STR_E STR_RIGHT_PARENTHESIS -#define STRING_UTF8_RIGHTPAR STR_U STR_T STR_F STR_8 STR_RIGHT_PARENTHESIS -#define STRING_UTF16_RIGHTPAR STR_U STR_T STR_F STR_1 STR_6 STR_RIGHT_PARENTHESIS -#define STRING_UTF32_RIGHTPAR STR_U STR_T STR_F STR_3 STR_2 STR_RIGHT_PARENTHESIS -#define STRING_UTF_RIGHTPAR STR_U STR_T STR_F STR_RIGHT_PARENTHESIS -#define STRING_UCP_RIGHTPAR STR_U STR_C STR_P STR_RIGHT_PARENTHESIS -#define STRING_NO_AUTO_POSSESS_RIGHTPAR STR_N STR_O STR_UNDERSCORE STR_A STR_U STR_T STR_O STR_UNDERSCORE STR_P STR_O STR_S STR_S STR_E STR_S STR_S STR_RIGHT_PARENTHESIS -#define STRING_NO_DOTSTAR_ANCHOR_RIGHTPAR STR_N STR_O STR_UNDERSCORE STR_D STR_O STR_T STR_S STR_T STR_A STR_R STR_UNDERSCORE STR_A STR_N STR_C STR_H STR_O STR_R STR_RIGHT_PARENTHESIS -#define STRING_NO_JIT_RIGHTPAR STR_N STR_O STR_UNDERSCORE STR_J STR_I STR_T STR_RIGHT_PARENTHESIS -#define STRING_NO_START_OPT_RIGHTPAR STR_N STR_O STR_UNDERSCORE STR_S STR_T STR_A STR_R STR_T STR_UNDERSCORE STR_O STR_P STR_T STR_RIGHT_PARENTHESIS -#define STRING_NOTEMPTY_RIGHTPAR STR_N STR_O STR_T STR_E STR_M STR_P STR_T STR_Y STR_RIGHT_PARENTHESIS -#define STRING_NOTEMPTY_ATSTART_RIGHTPAR STR_N STR_O STR_T STR_E STR_M STR_P STR_T STR_Y STR_UNDERSCORE STR_A STR_T STR_S STR_T STR_A STR_R STR_T STR_RIGHT_PARENTHESIS -#define STRING_LIMIT_HEAP_EQ STR_L STR_I STR_M STR_I STR_T STR_UNDERSCORE STR_H STR_E STR_A STR_P STR_EQUALS_SIGN -#define STRING_LIMIT_MATCH_EQ STR_L STR_I STR_M STR_I STR_T STR_UNDERSCORE STR_M STR_A STR_T STR_C STR_H STR_EQUALS_SIGN -#define STRING_LIMIT_DEPTH_EQ STR_L STR_I STR_M STR_I STR_T STR_UNDERSCORE STR_D STR_E STR_P STR_T STR_H STR_EQUALS_SIGN -#define STRING_LIMIT_RECURSION_EQ STR_L STR_I STR_M STR_I STR_T STR_UNDERSCORE STR_R STR_E STR_C STR_U STR_R STR_S STR_I STR_O STR_N STR_EQUALS_SIGN -#define STRING_MARK STR_M STR_A STR_R STR_K - -#endif /* SUPPORT_UNICODE */ - -/* -------------------- End of character and string names -------------------*/ - -/* -------------------- Definitions for compiled patterns -------------------*/ - -/* Codes for different types of Unicode property */ - -#define PT_ANY 0 /* Any property - matches all chars */ -#define PT_LAMP 1 /* L& - the union of Lu, Ll, Lt */ -#define PT_GC 2 /* Specified general characteristic (e.g. L) */ -#define PT_PC 3 /* Specified particular characteristic (e.g. Lu) */ -#define PT_SC 4 /* Script (e.g. Han) */ -#define PT_ALNUM 5 /* Alphanumeric - the union of L and N */ -#define PT_SPACE 6 /* Perl space - Z plus 9,10,12,13 */ -#define PT_PXSPACE 7 /* POSIX space - Z plus 9,10,11,12,13 */ -#define PT_WORD 8 /* Word - L plus N plus underscore */ -#define PT_CLIST 9 /* Pseudo-property: match character list */ -#define PT_UCNC 10 /* Universal Character nameable character */ -#define PT_TABSIZE 11 /* Size of square table for autopossessify tests */ - -/* The following special properties are used only in XCLASS items, when POSIX -classes are specified and PCRE2_UCP is set - in other words, for Unicode -handling of these classes. They are not available via the \p or \P escapes like -those in the above list, and so they do not take part in the autopossessifying -table. */ - -#define PT_PXGRAPH 11 /* [:graph:] - characters that mark the paper */ -#define PT_PXPRINT 12 /* [:print:] - [:graph:] plus non-control spaces */ -#define PT_PXPUNCT 13 /* [:punct:] - punctuation characters */ - -/* Flag bits and data types for the extended class (OP_XCLASS) for classes that -contain characters with values greater than 255. */ - -#define XCL_NOT 0x01 /* Flag: this is a negative class */ -#define XCL_MAP 0x02 /* Flag: a 32-byte map is present */ -#define XCL_HASPROP 0x04 /* Flag: property checks are present. */ - -#define XCL_END 0 /* Marks end of individual items */ -#define XCL_SINGLE 1 /* Single item (one multibyte char) follows */ -#define XCL_RANGE 2 /* A range (two multibyte chars) follows */ -#define XCL_PROP 3 /* Unicode property (2-byte property code follows) */ -#define XCL_NOTPROP 4 /* Unicode inverted property (ditto) */ - -/* These are escaped items that aren't just an encoding of a particular data -value such as \n. They must have non-zero values, as check_escape() returns 0 -for a data character. In the escapes[] table in pcre2_compile.c their values -are negated in order to distinguish them from data values. - -They must appear here in the same order as in the opcode definitions below, up -to ESC_z. There's a dummy for OP_ALLANY because it corresponds to "." in DOTALL -mode rather than an escape sequence. It is also used for [^] in JavaScript -compatibility mode, and for \C in non-utf mode. In non-DOTALL mode, "." behaves -like \N. - -Negative numbers are used to encode a backreference (\1, \2, \3, etc.) in -check_escape(). There are tests in the code for an escape greater than ESC_b -and less than ESC_Z to detect the types that may be repeated. These are the -types that consume characters. If any new escapes are put in between that don't -consume a character, that code will have to change. */ - -enum { ESC_A = 1, ESC_G, ESC_K, ESC_B, ESC_b, ESC_D, ESC_d, ESC_S, ESC_s, - ESC_W, ESC_w, ESC_N, ESC_dum, ESC_C, ESC_P, ESC_p, ESC_R, ESC_H, - ESC_h, ESC_V, ESC_v, ESC_X, ESC_Z, ESC_z, - ESC_E, ESC_Q, ESC_g, ESC_k }; - - -/********************** Opcode definitions ******************/ - -/****** NOTE NOTE NOTE ****** - -Starting from 1 (i.e. after OP_END), the values up to OP_EOD must correspond in -order to the list of escapes immediately above. Furthermore, values up to -OP_DOLLM must not be changed without adjusting the table called autoposstab in -pcre2_auto_possess.c. - -Whenever this list is updated, the two macro definitions that follow must be -updated to match. The possessification table called "opcode_possessify" in -pcre2_compile.c must also be updated, and also the tables called "coptable" -and "poptable" in pcre2_dfa_match.c. - -****** NOTE NOTE NOTE ******/ - - -/* The values between FIRST_AUTOTAB_OP and LAST_AUTOTAB_RIGHT_OP, inclusive, -are used in a table for deciding whether a repeated character type can be -auto-possessified. */ - -#define FIRST_AUTOTAB_OP OP_NOT_DIGIT -#define LAST_AUTOTAB_LEFT_OP OP_EXTUNI -#define LAST_AUTOTAB_RIGHT_OP OP_DOLLM - -enum { - OP_END, /* 0 End of pattern */ - - /* Values corresponding to backslashed metacharacters */ - - OP_SOD, /* 1 Start of data: \A */ - OP_SOM, /* 2 Start of match (subject + offset): \G */ - OP_SET_SOM, /* 3 Set start of match (\K) */ - OP_NOT_WORD_BOUNDARY, /* 4 \B */ - OP_WORD_BOUNDARY, /* 5 \b */ - OP_NOT_DIGIT, /* 6 \D */ - OP_DIGIT, /* 7 \d */ - OP_NOT_WHITESPACE, /* 8 \S */ - OP_WHITESPACE, /* 9 \s */ - OP_NOT_WORDCHAR, /* 10 \W */ - OP_WORDCHAR, /* 11 \w */ - - OP_ANY, /* 12 Match any character except newline (\N) */ - OP_ALLANY, /* 13 Match any character */ - OP_ANYBYTE, /* 14 Match any byte (\C); different to OP_ANY for UTF-8 */ - OP_NOTPROP, /* 15 \P (not Unicode property) */ - OP_PROP, /* 16 \p (Unicode property) */ - OP_ANYNL, /* 17 \R (any newline sequence) */ - OP_NOT_HSPACE, /* 18 \H (not horizontal whitespace) */ - OP_HSPACE, /* 19 \h (horizontal whitespace) */ - OP_NOT_VSPACE, /* 20 \V (not vertical whitespace) */ - OP_VSPACE, /* 21 \v (vertical whitespace) */ - OP_EXTUNI, /* 22 \X (extended Unicode sequence */ - OP_EODN, /* 23 End of data or \n at end of data (\Z) */ - OP_EOD, /* 24 End of data (\z) */ - - /* Line end assertions */ - - OP_DOLL, /* 25 End of line - not multiline */ - OP_DOLLM, /* 26 End of line - multiline */ - OP_CIRC, /* 27 Start of line - not multiline */ - OP_CIRCM, /* 28 Start of line - multiline */ - - /* Single characters; caseful must precede the caseless ones, and these - must remain in this order, and adjacent. */ - - OP_CHAR, /* 29 Match one character, casefully */ - OP_CHARI, /* 30 Match one character, caselessly */ - OP_NOT, /* 31 Match one character, not the given one, casefully */ - OP_NOTI, /* 32 Match one character, not the given one, caselessly */ - - /* The following sets of 13 opcodes must always be kept in step because - the offset from the first one is used to generate the others. */ - - /* Repeated characters; caseful must precede the caseless ones */ - - OP_STAR, /* 33 The maximizing and minimizing versions of */ - OP_MINSTAR, /* 34 these six opcodes must come in pairs, with */ - OP_PLUS, /* 35 the minimizing one second. */ - OP_MINPLUS, /* 36 */ - OP_QUERY, /* 37 */ - OP_MINQUERY, /* 38 */ - - OP_UPTO, /* 39 From 0 to n matches of one character, caseful*/ - OP_MINUPTO, /* 40 */ - OP_EXACT, /* 41 Exactly n matches */ - - OP_POSSTAR, /* 42 Possessified star, caseful */ - OP_POSPLUS, /* 43 Possessified plus, caseful */ - OP_POSQUERY, /* 44 Posesssified query, caseful */ - OP_POSUPTO, /* 45 Possessified upto, caseful */ - - /* Repeated characters; caseless must follow the caseful ones */ - - OP_STARI, /* 46 */ - OP_MINSTARI, /* 47 */ - OP_PLUSI, /* 48 */ - OP_MINPLUSI, /* 49 */ - OP_QUERYI, /* 50 */ - OP_MINQUERYI, /* 51 */ - - OP_UPTOI, /* 52 From 0 to n matches of one character, caseless */ - OP_MINUPTOI, /* 53 */ - OP_EXACTI, /* 54 */ - - OP_POSSTARI, /* 55 Possessified star, caseless */ - OP_POSPLUSI, /* 56 Possessified plus, caseless */ - OP_POSQUERYI, /* 57 Posesssified query, caseless */ - OP_POSUPTOI, /* 58 Possessified upto, caseless */ - - /* The negated ones must follow the non-negated ones, and match them */ - /* Negated repeated character, caseful; must precede the caseless ones */ - - OP_NOTSTAR, /* 59 The maximizing and minimizing versions of */ - OP_NOTMINSTAR, /* 60 these six opcodes must come in pairs, with */ - OP_NOTPLUS, /* 61 the minimizing one second. They must be in */ - OP_NOTMINPLUS, /* 62 exactly the same order as those above. */ - OP_NOTQUERY, /* 63 */ - OP_NOTMINQUERY, /* 64 */ - - OP_NOTUPTO, /* 65 From 0 to n matches, caseful */ - OP_NOTMINUPTO, /* 66 */ - OP_NOTEXACT, /* 67 Exactly n matches */ - - OP_NOTPOSSTAR, /* 68 Possessified versions, caseful */ - OP_NOTPOSPLUS, /* 69 */ - OP_NOTPOSQUERY, /* 70 */ - OP_NOTPOSUPTO, /* 71 */ - - /* Negated repeated character, caseless; must follow the caseful ones */ - - OP_NOTSTARI, /* 72 */ - OP_NOTMINSTARI, /* 73 */ - OP_NOTPLUSI, /* 74 */ - OP_NOTMINPLUSI, /* 75 */ - OP_NOTQUERYI, /* 76 */ - OP_NOTMINQUERYI, /* 77 */ - - OP_NOTUPTOI, /* 78 From 0 to n matches, caseless */ - OP_NOTMINUPTOI, /* 79 */ - OP_NOTEXACTI, /* 80 Exactly n matches */ - - OP_NOTPOSSTARI, /* 81 Possessified versions, caseless */ - OP_NOTPOSPLUSI, /* 82 */ - OP_NOTPOSQUERYI, /* 83 */ - OP_NOTPOSUPTOI, /* 84 */ - - /* Character types */ - - OP_TYPESTAR, /* 85 The maximizing and minimizing versions of */ - OP_TYPEMINSTAR, /* 86 these six opcodes must come in pairs, with */ - OP_TYPEPLUS, /* 87 the minimizing one second. These codes must */ - OP_TYPEMINPLUS, /* 88 be in exactly the same order as those above. */ - OP_TYPEQUERY, /* 89 */ - OP_TYPEMINQUERY, /* 90 */ - - OP_TYPEUPTO, /* 91 From 0 to n matches */ - OP_TYPEMINUPTO, /* 92 */ - OP_TYPEEXACT, /* 93 Exactly n matches */ - - OP_TYPEPOSSTAR, /* 94 Possessified versions */ - OP_TYPEPOSPLUS, /* 95 */ - OP_TYPEPOSQUERY, /* 96 */ - OP_TYPEPOSUPTO, /* 97 */ - - /* These are used for character classes and back references; only the - first six are the same as the sets above. */ - - OP_CRSTAR, /* 98 The maximizing and minimizing versions of */ - OP_CRMINSTAR, /* 99 all these opcodes must come in pairs, with */ - OP_CRPLUS, /* 100 the minimizing one second. These codes must */ - OP_CRMINPLUS, /* 101 be in exactly the same order as those above. */ - OP_CRQUERY, /* 102 */ - OP_CRMINQUERY, /* 103 */ - - OP_CRRANGE, /* 104 These are different to the three sets above. */ - OP_CRMINRANGE, /* 105 */ - - OP_CRPOSSTAR, /* 106 Possessified versions */ - OP_CRPOSPLUS, /* 107 */ - OP_CRPOSQUERY, /* 108 */ - OP_CRPOSRANGE, /* 109 */ - - /* End of quantifier opcodes */ - - OP_CLASS, /* 110 Match a character class, chars < 256 only */ - OP_NCLASS, /* 111 Same, but the bitmap was created from a negative - class - the difference is relevant only when a - character > 255 is encountered. */ - OP_XCLASS, /* 112 Extended class for handling > 255 chars within the - class. This does both positive and negative. */ - OP_REF, /* 113 Match a back reference, casefully */ - OP_REFI, /* 114 Match a back reference, caselessly */ - OP_DNREF, /* 115 Match a duplicate name backref, casefully */ - OP_DNREFI, /* 116 Match a duplicate name backref, caselessly */ - OP_RECURSE, /* 117 Match a numbered subpattern (possibly recursive) */ - OP_CALLOUT, /* 118 Call out to external function if provided */ - OP_CALLOUT_STR, /* 119 Call out with string argument */ - - OP_ALT, /* 120 Start of alternation */ - OP_KET, /* 121 End of group that doesn't have an unbounded repeat */ - OP_KETRMAX, /* 122 These two must remain together and in this */ - OP_KETRMIN, /* 123 order. They are for groups the repeat for ever. */ - OP_KETRPOS, /* 124 Possessive unlimited repeat. */ - - /* The assertions must come before BRA, CBRA, ONCE, and COND. */ - - OP_REVERSE, /* 125 Move pointer back - used in lookbehind assertions */ - OP_ASSERT, /* 126 Positive lookahead */ - OP_ASSERT_NOT, /* 127 Negative lookahead */ - OP_ASSERTBACK, /* 128 Positive lookbehind */ - OP_ASSERTBACK_NOT, /* 129 Negative lookbehind */ - OP_ASSERT_NA, /* 130 Positive non-atomic lookahead */ - OP_ASSERTBACK_NA, /* 131 Positive non-atomic lookbehind */ - - /* ONCE, SCRIPT_RUN, BRA, BRAPOS, CBRA, CBRAPOS, and COND must come - immediately after the assertions, with ONCE first, as there's a test for >= - ONCE for a subpattern that isn't an assertion. The POS versions must - immediately follow the non-POS versions in each case. */ - - OP_ONCE, /* 132 Atomic group, contains captures */ - OP_SCRIPT_RUN, /* 133 Non-capture, but check characters' scripts */ - OP_BRA, /* 134 Start of non-capturing bracket */ - OP_BRAPOS, /* 135 Ditto, with unlimited, possessive repeat */ - OP_CBRA, /* 136 Start of capturing bracket */ - OP_CBRAPOS, /* 137 Ditto, with unlimited, possessive repeat */ - OP_COND, /* 138 Conditional group */ - - /* These five must follow the previous five, in the same order. There's a - check for >= SBRA to distinguish the two sets. */ - - OP_SBRA, /* 139 Start of non-capturing bracket, check empty */ - OP_SBRAPOS, /* 149 Ditto, with unlimited, possessive repeat */ - OP_SCBRA, /* 141 Start of capturing bracket, check empty */ - OP_SCBRAPOS, /* 142 Ditto, with unlimited, possessive repeat */ - OP_SCOND, /* 143 Conditional group, check empty */ - - /* The next two pairs must (respectively) be kept together. */ - - OP_CREF, /* 144 Used to hold a capture number as condition */ - OP_DNCREF, /* 145 Used to point to duplicate names as a condition */ - OP_RREF, /* 146 Used to hold a recursion number as condition */ - OP_DNRREF, /* 147 Used to point to duplicate names as a condition */ - OP_FALSE, /* 148 Always false (used by DEFINE and VERSION) */ - OP_TRUE, /* 149 Always true (used by VERSION) */ - - OP_BRAZERO, /* 150 These two must remain together and in this */ - OP_BRAMINZERO, /* 151 order. */ - OP_BRAPOSZERO, /* 152 */ - - /* These are backtracking control verbs */ - - OP_MARK, /* 153 always has an argument */ - OP_PRUNE, /* 154 */ - OP_PRUNE_ARG, /* 155 same, but with argument */ - OP_SKIP, /* 156 */ - OP_SKIP_ARG, /* 157 same, but with argument */ - OP_THEN, /* 158 */ - OP_THEN_ARG, /* 159 same, but with argument */ - OP_COMMIT, /* 160 */ - OP_COMMIT_ARG, /* 161 same, but with argument */ - - /* These are forced failure and success verbs. FAIL and ACCEPT do accept an - argument, but these cases can be compiled as, for example, (*MARK:X)(*FAIL) - without the need for a special opcode. */ - - OP_FAIL, /* 162 */ - OP_ACCEPT, /* 163 */ - OP_ASSERT_ACCEPT, /* 164 Used inside assertions */ - OP_CLOSE, /* 165 Used before OP_ACCEPT to close open captures */ - - /* This is used to skip a subpattern with a {0} quantifier */ - - OP_SKIPZERO, /* 166 */ - - /* This is used to identify a DEFINE group during compilation so that it can - be checked for having only one branch. It is changed to OP_FALSE before - compilation finishes. */ - - OP_DEFINE, /* 167 */ - - /* This is not an opcode, but is used to check that tables indexed by opcode - are the correct length, in order to catch updating errors - there have been - some in the past. */ - - OP_TABLE_LENGTH - -}; - -/* *** NOTE NOTE NOTE *** Whenever the list above is updated, the two macro -definitions that follow must also be updated to match. There are also tables -called "opcode_possessify" in pcre2_compile.c and "coptable" and "poptable" in -pcre2_dfa_match.c that must be updated. */ - - -/* This macro defines textual names for all the opcodes. These are used only -for debugging, and some of them are only partial names. The macro is referenced -only in pcre2_printint.c, which fills out the full names in many cases (and in -some cases doesn't actually use these names at all). */ - -#define OP_NAME_LIST \ - "End", "\\A", "\\G", "\\K", "\\B", "\\b", "\\D", "\\d", \ - "\\S", "\\s", "\\W", "\\w", "Any", "AllAny", "Anybyte", \ - "notprop", "prop", "\\R", "\\H", "\\h", "\\V", "\\v", \ - "extuni", "\\Z", "\\z", \ - "$", "$", "^", "^", "char", "chari", "not", "noti", \ - "*", "*?", "+", "+?", "?", "??", \ - "{", "{", "{", \ - "*+","++", "?+", "{", \ - "*", "*?", "+", "+?", "?", "??", \ - "{", "{", "{", \ - "*+","++", "?+", "{", \ - "*", "*?", "+", "+?", "?", "??", \ - "{", "{", "{", \ - "*+","++", "?+", "{", \ - "*", "*?", "+", "+?", "?", "??", \ - "{", "{", "{", \ - "*+","++", "?+", "{", \ - "*", "*?", "+", "+?", "?", "??", "{", "{", "{", \ - "*+","++", "?+", "{", \ - "*", "*?", "+", "+?", "?", "??", "{", "{", \ - "*+","++", "?+", "{", \ - "class", "nclass", "xclass", "Ref", "Refi", "DnRef", "DnRefi", \ - "Recurse", "Callout", "CalloutStr", \ - "Alt", "Ket", "KetRmax", "KetRmin", "KetRpos", \ - "Reverse", "Assert", "Assert not", \ - "Assert back", "Assert back not", \ - "Non-atomic assert", "Non-atomic assert back", \ - "Once", \ - "Script run", \ - "Bra", "BraPos", "CBra", "CBraPos", \ - "Cond", \ - "SBra", "SBraPos", "SCBra", "SCBraPos", \ - "SCond", \ - "Cond ref", "Cond dnref", "Cond rec", "Cond dnrec", \ - "Cond false", "Cond true", \ - "Brazero", "Braminzero", "Braposzero", \ - "*MARK", "*PRUNE", "*PRUNE", "*SKIP", "*SKIP", \ - "*THEN", "*THEN", "*COMMIT", "*COMMIT", "*FAIL", \ - "*ACCEPT", "*ASSERT_ACCEPT", \ - "Close", "Skip zero", "Define" - - -/* This macro defines the length of fixed length operations in the compiled -regex. The lengths are used when searching for specific things, and also in the -debugging printing of a compiled regex. We use a macro so that it can be -defined close to the definitions of the opcodes themselves. - -As things have been extended, some of these are no longer fixed lenths, but are -minima instead. For example, the length of a single-character repeat may vary -in UTF-8 mode. The code that uses this table must know about such things. */ - -#define OP_LENGTHS \ - 1, /* End */ \ - 1, 1, 1, 1, 1, /* \A, \G, \K, \B, \b */ \ - 1, 1, 1, 1, 1, 1, /* \D, \d, \S, \s, \W, \w */ \ - 1, 1, 1, /* Any, AllAny, Anybyte */ \ - 3, 3, /* \P, \p */ \ - 1, 1, 1, 1, 1, /* \R, \H, \h, \V, \v */ \ - 1, /* \X */ \ - 1, 1, 1, 1, 1, 1, /* \Z, \z, $, $M ^, ^M */ \ - 2, /* Char - the minimum length */ \ - 2, /* Chari - the minimum length */ \ - 2, /* not */ \ - 2, /* noti */ \ - /* Positive single-char repeats ** These are */ \ - 2, 2, 2, 2, 2, 2, /* *, *?, +, +?, ?, ?? ** minima in */ \ - 2+IMM2_SIZE, 2+IMM2_SIZE, /* upto, minupto ** mode */ \ - 2+IMM2_SIZE, /* exact */ \ - 2, 2, 2, 2+IMM2_SIZE, /* *+, ++, ?+, upto+ */ \ - 2, 2, 2, 2, 2, 2, /* *I, *?I, +I, +?I, ?I, ??I ** UTF-8 */ \ - 2+IMM2_SIZE, 2+IMM2_SIZE, /* upto I, minupto I */ \ - 2+IMM2_SIZE, /* exact I */ \ - 2, 2, 2, 2+IMM2_SIZE, /* *+I, ++I, ?+I, upto+I */ \ - /* Negative single-char repeats - only for chars < 256 */ \ - 2, 2, 2, 2, 2, 2, /* NOT *, *?, +, +?, ?, ?? */ \ - 2+IMM2_SIZE, 2+IMM2_SIZE, /* NOT upto, minupto */ \ - 2+IMM2_SIZE, /* NOT exact */ \ - 2, 2, 2, 2+IMM2_SIZE, /* Possessive NOT *, +, ?, upto */ \ - 2, 2, 2, 2, 2, 2, /* NOT *I, *?I, +I, +?I, ?I, ??I */ \ - 2+IMM2_SIZE, 2+IMM2_SIZE, /* NOT upto I, minupto I */ \ - 2+IMM2_SIZE, /* NOT exact I */ \ - 2, 2, 2, 2+IMM2_SIZE, /* Possessive NOT *I, +I, ?I, upto I */ \ - /* Positive type repeats */ \ - 2, 2, 2, 2, 2, 2, /* Type *, *?, +, +?, ?, ?? */ \ - 2+IMM2_SIZE, 2+IMM2_SIZE, /* Type upto, minupto */ \ - 2+IMM2_SIZE, /* Type exact */ \ - 2, 2, 2, 2+IMM2_SIZE, /* Possessive *+, ++, ?+, upto+ */ \ - /* Character class & ref repeats */ \ - 1, 1, 1, 1, 1, 1, /* *, *?, +, +?, ?, ?? */ \ - 1+2*IMM2_SIZE, 1+2*IMM2_SIZE, /* CRRANGE, CRMINRANGE */ \ - 1, 1, 1, 1+2*IMM2_SIZE, /* Possessive *+, ++, ?+, CRPOSRANGE */ \ - 1+(32/sizeof(PCRE2_UCHAR)), /* CLASS */ \ - 1+(32/sizeof(PCRE2_UCHAR)), /* NCLASS */ \ - 0, /* XCLASS - variable length */ \ - 1+IMM2_SIZE, /* REF */ \ - 1+IMM2_SIZE, /* REFI */ \ - 1+2*IMM2_SIZE, /* DNREF */ \ - 1+2*IMM2_SIZE, /* DNREFI */ \ - 1+LINK_SIZE, /* RECURSE */ \ - 1+2*LINK_SIZE+1, /* CALLOUT */ \ - 0, /* CALLOUT_STR - variable length */ \ - 1+LINK_SIZE, /* Alt */ \ - 1+LINK_SIZE, /* Ket */ \ - 1+LINK_SIZE, /* KetRmax */ \ - 1+LINK_SIZE, /* KetRmin */ \ - 1+LINK_SIZE, /* KetRpos */ \ - 1+LINK_SIZE, /* Reverse */ \ - 1+LINK_SIZE, /* Assert */ \ - 1+LINK_SIZE, /* Assert not */ \ - 1+LINK_SIZE, /* Assert behind */ \ - 1+LINK_SIZE, /* Assert behind not */ \ - 1+LINK_SIZE, /* NA Assert */ \ - 1+LINK_SIZE, /* NA Assert behind */ \ - 1+LINK_SIZE, /* ONCE */ \ - 1+LINK_SIZE, /* SCRIPT_RUN */ \ - 1+LINK_SIZE, /* BRA */ \ - 1+LINK_SIZE, /* BRAPOS */ \ - 1+LINK_SIZE+IMM2_SIZE, /* CBRA */ \ - 1+LINK_SIZE+IMM2_SIZE, /* CBRAPOS */ \ - 1+LINK_SIZE, /* COND */ \ - 1+LINK_SIZE, /* SBRA */ \ - 1+LINK_SIZE, /* SBRAPOS */ \ - 1+LINK_SIZE+IMM2_SIZE, /* SCBRA */ \ - 1+LINK_SIZE+IMM2_SIZE, /* SCBRAPOS */ \ - 1+LINK_SIZE, /* SCOND */ \ - 1+IMM2_SIZE, 1+2*IMM2_SIZE, /* CREF, DNCREF */ \ - 1+IMM2_SIZE, 1+2*IMM2_SIZE, /* RREF, DNRREF */ \ - 1, 1, /* FALSE, TRUE */ \ - 1, 1, 1, /* BRAZERO, BRAMINZERO, BRAPOSZERO */ \ - 3, 1, 3, /* MARK, PRUNE, PRUNE_ARG */ \ - 1, 3, /* SKIP, SKIP_ARG */ \ - 1, 3, /* THEN, THEN_ARG */ \ - 1, 3, /* COMMIT, COMMIT_ARG */ \ - 1, 1, 1, /* FAIL, ACCEPT, ASSERT_ACCEPT */ \ - 1+IMM2_SIZE, 1, /* CLOSE, SKIPZERO */ \ - 1 /* DEFINE */ - -/* A magic value for OP_RREF to indicate the "any recursion" condition. */ - -#define RREF_ANY 0xffff - - -/* ---------- Private structures that are mode-independent. ---------- */ - -/* Structure to hold data for custom memory management. */ - -typedef struct pcre2_memctl { - void * (*malloc)(size_t, void *); - void (*free)(void *, void *); - void *memory_data; -} pcre2_memctl; - -/* Structure for building a chain of open capturing subpatterns during -compiling, so that instructions to close them can be compiled when (*ACCEPT) is -encountered. */ - -typedef struct open_capitem { - struct open_capitem *next; /* Chain link */ - uint16_t number; /* Capture number */ - uint16_t assert_depth; /* Assertion depth when opened */ -} open_capitem; - -/* Layout of the UCP type table that translates property names into types and -codes. Each entry used to point directly to a name, but to reduce the number of -relocations in shared libraries, it now has an offset into a single string -instead. */ - -typedef struct { - uint16_t name_offset; - uint16_t type; - uint16_t value; -} ucp_type_table; - -/* Unicode character database (UCD) record format */ - -typedef struct { - uint8_t script; /* ucp_Arabic, etc. */ - uint8_t chartype; /* ucp_Cc, etc. (general categories) */ - uint8_t gbprop; /* ucp_gbControl, etc. (grapheme break property) */ - uint8_t caseset; /* offset to multichar other cases or zero */ - int32_t other_case; /* offset to other case, or zero if none */ - int16_t scriptx; /* script extension value */ - int16_t dummy; /* spare - to round to multiple of 4 bytes */ -} ucd_record; - -/* UCD access macros */ - -#define UCD_BLOCK_SIZE 128 -#define REAL_GET_UCD(ch) (PRIV(ucd_records) + \ - PRIV(ucd_stage2)[PRIV(ucd_stage1)[(int)(ch) / UCD_BLOCK_SIZE] * \ - UCD_BLOCK_SIZE + (int)(ch) % UCD_BLOCK_SIZE]) - -#if PCRE2_CODE_UNIT_WIDTH == 32 -#define GET_UCD(ch) ((ch > MAX_UTF_CODE_POINT)? \ - PRIV(dummy_ucd_record) : REAL_GET_UCD(ch)) -#else -#define GET_UCD(ch) REAL_GET_UCD(ch) -#endif - -#define UCD_CHARTYPE(ch) GET_UCD(ch)->chartype -#define UCD_SCRIPT(ch) GET_UCD(ch)->script -#define UCD_CATEGORY(ch) PRIV(ucp_gentype)[UCD_CHARTYPE(ch)] -#define UCD_GRAPHBREAK(ch) GET_UCD(ch)->gbprop -#define UCD_CASESET(ch) GET_UCD(ch)->caseset -#define UCD_OTHERCASE(ch) ((uint32_t)((int)ch + (int)(GET_UCD(ch)->other_case))) -#define UCD_SCRIPTX(ch) GET_UCD(ch)->scriptx - -/* Header for serialized pcre2 codes. */ - -typedef struct pcre2_serialized_data { - uint32_t magic; - uint32_t version; - uint32_t config; - int32_t number_of_codes; -} pcre2_serialized_data; - - - -/* ----------------- Items that need PCRE2_CODE_UNIT_WIDTH ----------------- */ - -/* When this file is included by pcre2test, PCRE2_CODE_UNIT_WIDTH is defined as -0, so the following items are omitted. */ - -#if defined PCRE2_CODE_UNIT_WIDTH && PCRE2_CODE_UNIT_WIDTH != 0 - -/* EBCDIC is supported only for the 8-bit library. */ - -#if defined EBCDIC && PCRE2_CODE_UNIT_WIDTH != 8 -#error EBCDIC is not supported for the 16-bit or 32-bit libraries -#endif - -/* This is the largest non-UTF code point. */ - -#define MAX_NON_UTF_CHAR (0xffffffffU >> (32 - PCRE2_CODE_UNIT_WIDTH)) - -/* Internal shared data tables and variables. These are used by more than one -of the exported public functions. They have to be "external" in the C sense, -but are not part of the PCRE2 public API. Although the data for some of them is -identical in all libraries, they must have different names so that multiple -libraries can be simultaneously linked to a single application. However, UTF-8 -tables are needed only when compiling the 8-bit library. */ - -#if PCRE2_CODE_UNIT_WIDTH == 8 -extern const int PRIV(utf8_table1)[]; -extern const int PRIV(utf8_table1_size); -extern const int PRIV(utf8_table2)[]; -extern const int PRIV(utf8_table3)[]; -extern const uint8_t PRIV(utf8_table4)[]; -#endif - -#define _pcre2_OP_lengths PCRE2_SUFFIX(_pcre2_OP_lengths_) -#define _pcre2_callout_end_delims PCRE2_SUFFIX(_pcre2_callout_end_delims_) -#define _pcre2_callout_start_delims PCRE2_SUFFIX(_pcre2_callout_start_delims_) -#define _pcre2_default_compile_context PCRE2_SUFFIX(_pcre2_default_compile_context_) -#define _pcre2_default_convert_context PCRE2_SUFFIX(_pcre2_default_convert_context_) -#define _pcre2_default_match_context PCRE2_SUFFIX(_pcre2_default_match_context_) -#define _pcre2_default_tables PCRE2_SUFFIX(_pcre2_default_tables_) -#if PCRE2_CODE_UNIT_WIDTH == 32 -#define _pcre2_dummy_ucd_record PCRE2_SUFFIX(_pcre2_dummy_ucd_record_) -#endif -#define _pcre2_hspace_list PCRE2_SUFFIX(_pcre2_hspace_list_) -#define _pcre2_vspace_list PCRE2_SUFFIX(_pcre2_vspace_list_) -#define _pcre2_ucd_caseless_sets PCRE2_SUFFIX(_pcre2_ucd_caseless_sets_) -#define _pcre2_ucd_digit_sets PCRE2_SUFFIX(_pcre2_ucd_digit_sets_) -#define _pcre2_ucd_script_sets PCRE2_SUFFIX(_pcre2_ucd_script_sets_) -#define _pcre2_ucd_records PCRE2_SUFFIX(_pcre2_ucd_records_) -#define _pcre2_ucd_stage1 PCRE2_SUFFIX(_pcre2_ucd_stage1_) -#define _pcre2_ucd_stage2 PCRE2_SUFFIX(_pcre2_ucd_stage2_) -#define _pcre2_ucp_gbtable PCRE2_SUFFIX(_pcre2_ucp_gbtable_) -#define _pcre2_ucp_gentype PCRE2_SUFFIX(_pcre2_ucp_gentype_) -#define _pcre2_ucp_typerange PCRE2_SUFFIX(_pcre2_ucp_typerange_) -#define _pcre2_unicode_version PCRE2_SUFFIX(_pcre2_unicode_version_) -#define _pcre2_utt PCRE2_SUFFIX(_pcre2_utt_) -#define _pcre2_utt_names PCRE2_SUFFIX(_pcre2_utt_names_) -#define _pcre2_utt_size PCRE2_SUFFIX(_pcre2_utt_size_) - -extern const uint8_t PRIV(OP_lengths)[]; -extern const uint32_t PRIV(callout_end_delims)[]; -extern const uint32_t PRIV(callout_start_delims)[]; -extern const pcre2_compile_context PRIV(default_compile_context); -extern const pcre2_convert_context PRIV(default_convert_context); -extern const pcre2_match_context PRIV(default_match_context); -extern const uint8_t PRIV(default_tables)[]; -extern const uint32_t PRIV(hspace_list)[]; -extern const uint32_t PRIV(vspace_list)[]; -extern const uint32_t PRIV(ucd_caseless_sets)[]; -extern const uint32_t PRIV(ucd_digit_sets)[]; -extern const uint8_t PRIV(ucd_script_sets)[]; -extern const ucd_record PRIV(ucd_records)[]; -#if PCRE2_CODE_UNIT_WIDTH == 32 -extern const ucd_record PRIV(dummy_ucd_record)[]; -#endif -extern const uint16_t PRIV(ucd_stage1)[]; -extern const uint16_t PRIV(ucd_stage2)[]; -extern const uint32_t PRIV(ucp_gbtable)[]; -extern const uint32_t PRIV(ucp_gentype)[]; -#ifdef SUPPORT_JIT -extern const int PRIV(ucp_typerange)[]; -#endif -extern const char *PRIV(unicode_version); -extern const ucp_type_table PRIV(utt)[]; -extern const char PRIV(utt_names)[]; -extern const size_t PRIV(utt_size); - -/* Mode-dependent macros and hidden and private structures are defined in a -separate file so that pcre2test can include them at all supported widths. When -compiling the library, PCRE2_CODE_UNIT_WIDTH will be defined, and we can -include them at the appropriate width, after setting up suffix macros for the -private structures. */ - -#define branch_chain PCRE2_SUFFIX(branch_chain_) -#define compile_block PCRE2_SUFFIX(compile_block_) -#define dfa_match_block PCRE2_SUFFIX(dfa_match_block_) -#define match_block PCRE2_SUFFIX(match_block_) -#define named_group PCRE2_SUFFIX(named_group_) - -#include "pcre2_intmodedep.h" - -/* Private "external" functions. These are internal functions that are called -from modules other than the one in which they are defined. They have to be -"external" in the C sense, but are not part of the PCRE2 public API. They are -not referenced from pcre2test, and must not be defined when no code unit width -is available. */ - -#define _pcre2_auto_possessify PCRE2_SUFFIX(_pcre2_auto_possessify_) -#define _pcre2_check_escape PCRE2_SUFFIX(_pcre2_check_escape_) -#define _pcre2_extuni PCRE2_SUFFIX(_pcre2_extuni_) -#define _pcre2_find_bracket PCRE2_SUFFIX(_pcre2_find_bracket_) -#define _pcre2_is_newline PCRE2_SUFFIX(_pcre2_is_newline_) -#define _pcre2_jit_free_rodata PCRE2_SUFFIX(_pcre2_jit_free_rodata_) -#define _pcre2_jit_free PCRE2_SUFFIX(_pcre2_jit_free_) -#define _pcre2_jit_get_size PCRE2_SUFFIX(_pcre2_jit_get_size_) -#define _pcre2_jit_get_target PCRE2_SUFFIX(_pcre2_jit_get_target_) -#define _pcre2_memctl_malloc PCRE2_SUFFIX(_pcre2_memctl_malloc_) -#define _pcre2_ord2utf PCRE2_SUFFIX(_pcre2_ord2utf_) -#define _pcre2_script_run PCRE2_SUFFIX(_pcre2_script_run_) -#define _pcre2_strcmp PCRE2_SUFFIX(_pcre2_strcmp_) -#define _pcre2_strcmp_c8 PCRE2_SUFFIX(_pcre2_strcmp_c8_) -#define _pcre2_strcpy_c8 PCRE2_SUFFIX(_pcre2_strcpy_c8_) -#define _pcre2_strlen PCRE2_SUFFIX(_pcre2_strlen_) -#define _pcre2_strncmp PCRE2_SUFFIX(_pcre2_strncmp_) -#define _pcre2_strncmp_c8 PCRE2_SUFFIX(_pcre2_strncmp_c8_) -#define _pcre2_study PCRE2_SUFFIX(_pcre2_study_) -#define _pcre2_valid_utf PCRE2_SUFFIX(_pcre2_valid_utf_) -#define _pcre2_was_newline PCRE2_SUFFIX(_pcre2_was_newline_) -#define _pcre2_xclass PCRE2_SUFFIX(_pcre2_xclass_) - -extern int _pcre2_auto_possessify(PCRE2_UCHAR *, - const compile_block *); -extern int _pcre2_check_escape(PCRE2_SPTR *, PCRE2_SPTR, uint32_t *, - int *, uint32_t, uint32_t, BOOL, compile_block *); -extern PCRE2_SPTR _pcre2_extuni(uint32_t, PCRE2_SPTR, PCRE2_SPTR, PCRE2_SPTR, - BOOL, int *); -extern PCRE2_SPTR _pcre2_find_bracket(PCRE2_SPTR, BOOL, int); -extern BOOL _pcre2_is_newline(PCRE2_SPTR, uint32_t, PCRE2_SPTR, - uint32_t *, BOOL); -extern void _pcre2_jit_free_rodata(void *, void *); -extern void _pcre2_jit_free(void *, pcre2_memctl *); -extern size_t _pcre2_jit_get_size(void *); -const char * _pcre2_jit_get_target(void); -extern void * _pcre2_memctl_malloc(size_t, pcre2_memctl *); -extern unsigned int _pcre2_ord2utf(uint32_t, PCRE2_UCHAR *); -extern BOOL _pcre2_script_run(PCRE2_SPTR, PCRE2_SPTR, BOOL); -extern int _pcre2_strcmp(PCRE2_SPTR, PCRE2_SPTR); -extern int _pcre2_strcmp_c8(PCRE2_SPTR, const char *); -extern PCRE2_SIZE _pcre2_strcpy_c8(PCRE2_UCHAR *, const char *); -extern PCRE2_SIZE _pcre2_strlen(PCRE2_SPTR); -extern int _pcre2_strncmp(PCRE2_SPTR, PCRE2_SPTR, size_t); -extern int _pcre2_strncmp_c8(PCRE2_SPTR, const char *, size_t); -extern int _pcre2_study(pcre2_real_code *); -extern int _pcre2_valid_utf(PCRE2_SPTR, PCRE2_SIZE, PCRE2_SIZE *); -extern BOOL _pcre2_was_newline(PCRE2_SPTR, uint32_t, PCRE2_SPTR, - uint32_t *, BOOL); -extern BOOL _pcre2_xclass(uint32_t, PCRE2_SPTR, BOOL); - -/* This function is needed only when memmove() is not available. */ - -#if !defined(VPCOMPAT) && !defined(HAVE_MEMMOVE) -#define _pcre2_memmove PCRE2_SUFFIX(_pcre2_memmove) -extern void * _pcre2_memmove(void *, const void *, size_t); -#endif - -#endif /* PCRE2_CODE_UNIT_WIDTH */ -#endif /* PCRE2_INTERNAL_H_IDEMPOTENT_GUARD */ - -/* End of pcre2_internal.h */ diff --git a/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_intmodedep.h b/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_intmodedep.h deleted file mode 100644 index ea3b3ec..0000000 --- a/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_intmodedep.h +++ /dev/null @@ -1,923 +0,0 @@ -/************************************************* -* Perl-Compatible Regular Expressions * -*************************************************/ - -/* PCRE is a library of functions to support regular expressions whose syntax -and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel - Original API code Copyright (c) 1997-2012 University of Cambridge - New API code Copyright (c) 2016-2018 University of Cambridge - ------------------------------------------------------------------------------ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of the University of Cambridge nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------ -*/ - - -/* This module contains mode-dependent macro and structure definitions. The -file is #included by pcre2_internal.h if PCRE2_CODE_UNIT_WIDTH is defined. -These mode-dependent items are kept in a separate file so that they can also be -#included multiple times for different code unit widths by pcre2test in order -to have access to the hidden structures at all supported widths. - -Some of the mode-dependent macros are required at different widths for -different parts of the pcre2test code (in particular, the included -pcre_printint.c file). We undefine them here so that they can be re-defined for -multiple inclusions. Not all of these are used in pcre2test, but it's easier -just to undefine them all. */ - -#undef ACROSSCHAR -#undef BACKCHAR -#undef BYTES2CU -#undef CHMAX_255 -#undef CU2BYTES -#undef FORWARDCHAR -#undef FORWARDCHARTEST -#undef GET -#undef GET2 -#undef GETCHAR -#undef GETCHARINC -#undef GETCHARINCTEST -#undef GETCHARLEN -#undef GETCHARLENTEST -#undef GETCHARTEST -#undef GET_EXTRALEN -#undef HAS_EXTRALEN -#undef IMM2_SIZE -#undef MAX_255 -#undef MAX_MARK -#undef MAX_PATTERN_SIZE -#undef MAX_UTF_SINGLE_CU -#undef NOT_FIRSTCU -#undef PUT -#undef PUT2 -#undef PUT2INC -#undef PUTCHAR -#undef PUTINC -#undef TABLE_GET - - - -/* -------------------------- MACROS ----------------------------- */ - -/* PCRE keeps offsets in its compiled code as at least 16-bit quantities -(always stored in big-endian order in 8-bit mode) by default. These are used, -for example, to link from the start of a subpattern to its alternatives and its -end. The use of 16 bits per offset limits the size of an 8-bit compiled regex -to around 64K, which is big enough for almost everybody. However, I received a -request for an even bigger limit. For this reason, and also to make the code -easier to maintain, the storing and loading of offsets from the compiled code -unit string is now handled by the macros that are defined here. - -The macros are controlled by the value of LINK_SIZE. This defaults to 2, but -values of 3 or 4 are also supported. */ - -/* ------------------- 8-bit support ------------------ */ - -#if PCRE2_CODE_UNIT_WIDTH == 8 - -#if LINK_SIZE == 2 -#define PUT(a,n,d) \ - (a[n] = (PCRE2_UCHAR)((d) >> 8)), \ - (a[(n)+1] = (PCRE2_UCHAR)((d) & 255)) -#define GET(a,n) \ - (unsigned int)(((a)[n] << 8) | (a)[(n)+1]) -#define MAX_PATTERN_SIZE (1 << 16) - -#elif LINK_SIZE == 3 -#define PUT(a,n,d) \ - (a[n] = (PCRE2_UCHAR)((d) >> 16)), \ - (a[(n)+1] = (PCRE2_UCHAR)((d) >> 8)), \ - (a[(n)+2] = (PCRE2_UCHAR)((d) & 255)) -#define GET(a,n) \ - (unsigned int)(((a)[n] << 16) | ((a)[(n)+1] << 8) | (a)[(n)+2]) -#define MAX_PATTERN_SIZE (1 << 24) - -#elif LINK_SIZE == 4 -#define PUT(a,n,d) \ - (a[n] = (PCRE2_UCHAR)((d) >> 24)), \ - (a[(n)+1] = (PCRE2_UCHAR)((d) >> 16)), \ - (a[(n)+2] = (PCRE2_UCHAR)((d) >> 8)), \ - (a[(n)+3] = (PCRE2_UCHAR)((d) & 255)) -#define GET(a,n) \ - (unsigned int)(((a)[n] << 24) | ((a)[(n)+1] << 16) | ((a)[(n)+2] << 8) | (a)[(n)+3]) -#define MAX_PATTERN_SIZE (1 << 30) /* Keep it positive */ - -#else -#error LINK_SIZE must be 2, 3, or 4 -#endif - - -/* ------------------- 16-bit support ------------------ */ - -#elif PCRE2_CODE_UNIT_WIDTH == 16 - -#if LINK_SIZE == 2 -#undef LINK_SIZE -#define LINK_SIZE 1 -#define PUT(a,n,d) \ - (a[n] = (PCRE2_UCHAR)(d)) -#define GET(a,n) \ - (a[n]) -#define MAX_PATTERN_SIZE (1 << 16) - -#elif LINK_SIZE == 3 || LINK_SIZE == 4 -#undef LINK_SIZE -#define LINK_SIZE 2 -#define PUT(a,n,d) \ - (a[n] = (PCRE2_UCHAR)((d) >> 16)), \ - (a[(n)+1] = (PCRE2_UCHAR)((d) & 65535)) -#define GET(a,n) \ - (unsigned int)(((a)[n] << 16) | (a)[(n)+1]) -#define MAX_PATTERN_SIZE (1 << 30) /* Keep it positive */ - -#else -#error LINK_SIZE must be 2, 3, or 4 -#endif - - -/* ------------------- 32-bit support ------------------ */ - -#elif PCRE2_CODE_UNIT_WIDTH == 32 -#undef LINK_SIZE -#define LINK_SIZE 1 -#define PUT(a,n,d) \ - (a[n] = (d)) -#define GET(a,n) \ - (a[n]) -#define MAX_PATTERN_SIZE (1 << 30) /* Keep it positive */ - -#else -#error Unsupported compiling mode -#endif - - -/* --------------- Other mode-specific macros ----------------- */ - -/* PCRE uses some other (at least) 16-bit quantities that do not change when -the size of offsets changes. There are used for repeat counts and for other -things such as capturing parenthesis numbers in back references. - -Define the number of code units required to hold a 16-bit count/offset, and -macros to load and store such a value. For reasons that I do not understand, -the expression in the 8-bit GET2 macro is treated by gcc as a signed -expression, even when a is declared as unsigned. It seems that any kind of -arithmetic results in a signed value. Hence the cast. */ - -#if PCRE2_CODE_UNIT_WIDTH == 8 -#define IMM2_SIZE 2 -#define GET2(a,n) (unsigned int)(((a)[n] << 8) | (a)[(n)+1]) -#define PUT2(a,n,d) a[n] = (d) >> 8, a[(n)+1] = (d) & 255 - -#else /* Code units are 16 or 32 bits */ -#define IMM2_SIZE 1 -#define GET2(a,n) a[n] -#define PUT2(a,n,d) a[n] = d -#endif - -/* Other macros that are different for 8-bit mode. The MAX_255 macro checks -whether its argument, which is assumed to be one code unit, is less than 256. -The CHMAX_255 macro does not assume one code unit. The maximum length of a MARK -name must fit in one code unit; currently it is set to 255 or 65535. The -TABLE_GET macro is used to access elements of tables containing exactly 256 -items. Its argument is a code unit. When code points can be greater than 255, a -check is needed before accessing these tables. */ - -#if PCRE2_CODE_UNIT_WIDTH == 8 -#define MAX_255(c) TRUE -#define MAX_MARK ((1u << 8) - 1) -#define TABLE_GET(c, table, default) ((table)[c]) -#ifdef SUPPORT_UNICODE -#define SUPPORT_WIDE_CHARS -#define CHMAX_255(c) ((c) <= 255u) -#else -#define CHMAX_255(c) TRUE -#endif /* SUPPORT_UNICODE */ - -#else /* Code units are 16 or 32 bits */ -#define CHMAX_255(c) ((c) <= 255u) -#define MAX_255(c) ((c) <= 255u) -#define MAX_MARK ((1u << 16) - 1) -#define SUPPORT_WIDE_CHARS -#define TABLE_GET(c, table, default) (MAX_255(c)? ((table)[c]):(default)) -#endif - - -/* ----------------- Character-handling macros ----------------- */ - -/* There is a proposed future special "UTF-21" mode, in which only the lowest -21 bits of a 32-bit character are interpreted as UTF, with the remaining 11 -high-order bits available to the application for other uses. In preparation for -the future implementation of this mode, there are macros that load a data item -and, if in this special mode, mask it to 21 bits. These macros all have names -starting with UCHAR21. In all other modes, including the normal 32-bit -library, the macros all have the same simple definitions. When the new mode is -implemented, it is expected that these definitions will be varied appropriately -using #ifdef when compiling the library that supports the special mode. */ - -#define UCHAR21(eptr) (*(eptr)) -#define UCHAR21TEST(eptr) (*(eptr)) -#define UCHAR21INC(eptr) (*(eptr)++) -#define UCHAR21INCTEST(eptr) (*(eptr)++) - -/* When UTF encoding is being used, a character is no longer just a single -byte in 8-bit mode or a single short in 16-bit mode. The macros for character -handling generate simple sequences when used in the basic mode, and more -complicated ones for UTF characters. GETCHARLENTEST and other macros are not -used when UTF is not supported. To make sure they can never even appear when -UTF support is omitted, we don't even define them. */ - -#ifndef SUPPORT_UNICODE - -/* #define MAX_UTF_SINGLE_CU */ -/* #define HAS_EXTRALEN(c) */ -/* #define GET_EXTRALEN(c) */ -/* #define NOT_FIRSTCU(c) */ -#define GETCHAR(c, eptr) c = *eptr; -#define GETCHARTEST(c, eptr) c = *eptr; -#define GETCHARINC(c, eptr) c = *eptr++; -#define GETCHARINCTEST(c, eptr) c = *eptr++; -#define GETCHARLEN(c, eptr, len) c = *eptr; -#define PUTCHAR(c, p) (*p = c, 1) -/* #define GETCHARLENTEST(c, eptr, len) */ -/* #define BACKCHAR(eptr) */ -/* #define FORWARDCHAR(eptr) */ -/* #define FORWARCCHARTEST(eptr,end) */ -/* #define ACROSSCHAR(condition, eptr, action) */ - -#else /* SUPPORT_UNICODE */ - -/* ------------------- 8-bit support ------------------ */ - -#if PCRE2_CODE_UNIT_WIDTH == 8 -#define MAYBE_UTF_MULTI /* UTF chars may use multiple code units */ - -/* The largest UTF code point that can be encoded as a single code unit. */ - -#define MAX_UTF_SINGLE_CU 127 - -/* Tests whether the code point needs extra characters to decode. */ - -#define HAS_EXTRALEN(c) HASUTF8EXTRALEN(c) - -/* Returns with the additional number of characters if IS_MULTICHAR(c) is TRUE. -Otherwise it has an undefined behaviour. */ - -#define GET_EXTRALEN(c) (PRIV(utf8_table4)[(c) & 0x3fu]) - -/* Returns TRUE, if the given value is not the first code unit of a UTF -sequence. */ - -#define NOT_FIRSTCU(c) (((c) & 0xc0u) == 0x80u) - -/* Get the next UTF-8 character, not advancing the pointer. This is called when -we know we are in UTF-8 mode. */ - -#define GETCHAR(c, eptr) \ - c = *eptr; \ - if (c >= 0xc0u) GETUTF8(c, eptr); - -/* Get the next UTF-8 character, testing for UTF-8 mode, and not advancing the -pointer. */ - -#define GETCHARTEST(c, eptr) \ - c = *eptr; \ - if (utf && c >= 0xc0u) GETUTF8(c, eptr); - -/* Get the next UTF-8 character, advancing the pointer. This is called when we -know we are in UTF-8 mode. */ - -#define GETCHARINC(c, eptr) \ - c = *eptr++; \ - if (c >= 0xc0u) GETUTF8INC(c, eptr); - -/* Get the next character, testing for UTF-8 mode, and advancing the pointer. -This is called when we don't know if we are in UTF-8 mode. */ - -#define GETCHARINCTEST(c, eptr) \ - c = *eptr++; \ - if (utf && c >= 0xc0u) GETUTF8INC(c, eptr); - -/* Get the next UTF-8 character, not advancing the pointer, incrementing length -if there are extra bytes. This is called when we know we are in UTF-8 mode. */ - -#define GETCHARLEN(c, eptr, len) \ - c = *eptr; \ - if (c >= 0xc0u) GETUTF8LEN(c, eptr, len); - -/* Get the next UTF-8 character, testing for UTF-8 mode, not advancing the -pointer, incrementing length if there are extra bytes. This is called when we -do not know if we are in UTF-8 mode. */ - -#define GETCHARLENTEST(c, eptr, len) \ - c = *eptr; \ - if (utf && c >= 0xc0u) GETUTF8LEN(c, eptr, len); - -/* If the pointer is not at the start of a character, move it back until -it is. This is called only in UTF-8 mode - we don't put a test within the macro -because almost all calls are already within a block of UTF-8 only code. */ - -#define BACKCHAR(eptr) while((*eptr & 0xc0u) == 0x80u) eptr-- - -/* Same as above, just in the other direction. */ -#define FORWARDCHAR(eptr) while((*eptr & 0xc0u) == 0x80u) eptr++ -#define FORWARDCHARTEST(eptr,end) while(eptr < end && (*eptr & 0xc0u) == 0x80u) eptr++ - -/* Same as above, but it allows a fully customizable form. */ -#define ACROSSCHAR(condition, eptr, action) \ - while((condition) && ((*eptr) & 0xc0u) == 0x80u) action - -/* Deposit a character into memory, returning the number of code units. */ - -#define PUTCHAR(c, p) ((utf && c > MAX_UTF_SINGLE_CU)? \ - PRIV(ord2utf)(c,p) : (*p = c, 1)) - - -/* ------------------- 16-bit support ------------------ */ - -#elif PCRE2_CODE_UNIT_WIDTH == 16 -#define MAYBE_UTF_MULTI /* UTF chars may use multiple code units */ - -/* The largest UTF code point that can be encoded as a single code unit. */ - -#define MAX_UTF_SINGLE_CU 65535 - -/* Tests whether the code point needs extra characters to decode. */ - -#define HAS_EXTRALEN(c) (((c) & 0xfc00u) == 0xd800u) - -/* Returns with the additional number of characters if IS_MULTICHAR(c) is TRUE. -Otherwise it has an undefined behaviour. */ - -#define GET_EXTRALEN(c) 1 - -/* Returns TRUE, if the given value is not the first code unit of a UTF -sequence. */ - -#define NOT_FIRSTCU(c) (((c) & 0xfc00u) == 0xdc00u) - -/* Base macro to pick up the low surrogate of a UTF-16 character, not -advancing the pointer. */ - -#define GETUTF16(c, eptr) \ - { c = (((c & 0x3ffu) << 10) | (eptr[1] & 0x3ffu)) + 0x10000u; } - -/* Get the next UTF-16 character, not advancing the pointer. This is called when -we know we are in UTF-16 mode. */ - -#define GETCHAR(c, eptr) \ - c = *eptr; \ - if ((c & 0xfc00u) == 0xd800u) GETUTF16(c, eptr); - -/* Get the next UTF-16 character, testing for UTF-16 mode, and not advancing the -pointer. */ - -#define GETCHARTEST(c, eptr) \ - c = *eptr; \ - if (utf && (c & 0xfc00u) == 0xd800u) GETUTF16(c, eptr); - -/* Base macro to pick up the low surrogate of a UTF-16 character, advancing -the pointer. */ - -#define GETUTF16INC(c, eptr) \ - { c = (((c & 0x3ffu) << 10) | (*eptr++ & 0x3ffu)) + 0x10000u; } - -/* Get the next UTF-16 character, advancing the pointer. This is called when we -know we are in UTF-16 mode. */ - -#define GETCHARINC(c, eptr) \ - c = *eptr++; \ - if ((c & 0xfc00u) == 0xd800u) GETUTF16INC(c, eptr); - -/* Get the next character, testing for UTF-16 mode, and advancing the pointer. -This is called when we don't know if we are in UTF-16 mode. */ - -#define GETCHARINCTEST(c, eptr) \ - c = *eptr++; \ - if (utf && (c & 0xfc00u) == 0xd800u) GETUTF16INC(c, eptr); - -/* Base macro to pick up the low surrogate of a UTF-16 character, not -advancing the pointer, incrementing the length. */ - -#define GETUTF16LEN(c, eptr, len) \ - { c = (((c & 0x3ffu) << 10) | (eptr[1] & 0x3ffu)) + 0x10000u; len++; } - -/* Get the next UTF-16 character, not advancing the pointer, incrementing -length if there is a low surrogate. This is called when we know we are in -UTF-16 mode. */ - -#define GETCHARLEN(c, eptr, len) \ - c = *eptr; \ - if ((c & 0xfc00u) == 0xd800u) GETUTF16LEN(c, eptr, len); - -/* Get the next UTF-816character, testing for UTF-16 mode, not advancing the -pointer, incrementing length if there is a low surrogate. This is called when -we do not know if we are in UTF-16 mode. */ - -#define GETCHARLENTEST(c, eptr, len) \ - c = *eptr; \ - if (utf && (c & 0xfc00u) == 0xd800u) GETUTF16LEN(c, eptr, len); - -/* If the pointer is not at the start of a character, move it back until -it is. This is called only in UTF-16 mode - we don't put a test within the -macro because almost all calls are already within a block of UTF-16 only -code. */ - -#define BACKCHAR(eptr) if ((*eptr & 0xfc00u) == 0xdc00u) eptr-- - -/* Same as above, just in the other direction. */ -#define FORWARDCHAR(eptr) if ((*eptr & 0xfc00u) == 0xdc00u) eptr++ -#define FORWARDCHARTEST(eptr,end) if (eptr < end && (*eptr & 0xfc00u) == 0xdc00u) eptr++ - -/* Same as above, but it allows a fully customizable form. */ -#define ACROSSCHAR(condition, eptr, action) \ - if ((condition) && ((*eptr) & 0xfc00u) == 0xdc00u) action - -/* Deposit a character into memory, returning the number of code units. */ - -#define PUTCHAR(c, p) ((utf && c > MAX_UTF_SINGLE_CU)? \ - PRIV(ord2utf)(c,p) : (*p = c, 1)) - - -/* ------------------- 32-bit support ------------------ */ - -#else - -/* These are trivial for the 32-bit library, since all UTF-32 characters fit -into one PCRE2_UCHAR unit. */ - -#define MAX_UTF_SINGLE_CU (0x10ffffu) -#define HAS_EXTRALEN(c) (0) -#define GET_EXTRALEN(c) (0) -#define NOT_FIRSTCU(c) (0) - -/* Get the next UTF-32 character, not advancing the pointer. This is called when -we know we are in UTF-32 mode. */ - -#define GETCHAR(c, eptr) \ - c = *(eptr); - -/* Get the next UTF-32 character, testing for UTF-32 mode, and not advancing the -pointer. */ - -#define GETCHARTEST(c, eptr) \ - c = *(eptr); - -/* Get the next UTF-32 character, advancing the pointer. This is called when we -know we are in UTF-32 mode. */ - -#define GETCHARINC(c, eptr) \ - c = *((eptr)++); - -/* Get the next character, testing for UTF-32 mode, and advancing the pointer. -This is called when we don't know if we are in UTF-32 mode. */ - -#define GETCHARINCTEST(c, eptr) \ - c = *((eptr)++); - -/* Get the next UTF-32 character, not advancing the pointer, not incrementing -length (since all UTF-32 is of length 1). This is called when we know we are in -UTF-32 mode. */ - -#define GETCHARLEN(c, eptr, len) \ - GETCHAR(c, eptr) - -/* Get the next UTF-32character, testing for UTF-32 mode, not advancing the -pointer, not incrementing the length (since all UTF-32 is of length 1). -This is called when we do not know if we are in UTF-32 mode. */ - -#define GETCHARLENTEST(c, eptr, len) \ - GETCHARTEST(c, eptr) - -/* If the pointer is not at the start of a character, move it back until -it is. This is called only in UTF-32 mode - we don't put a test within the -macro because almost all calls are already within a block of UTF-32 only -code. - -These are all no-ops since all UTF-32 characters fit into one pcre_uchar. */ - -#define BACKCHAR(eptr) do { } while (0) - -/* Same as above, just in the other direction. */ - -#define FORWARDCHAR(eptr) do { } while (0) -#define FORWARDCHARTEST(eptr,end) do { } while (0) - -/* Same as above, but it allows a fully customizable form. */ - -#define ACROSSCHAR(condition, eptr, action) do { } while (0) - -/* Deposit a character into memory, returning the number of code units. */ - -#define PUTCHAR(c, p) (*p = c, 1) - -#endif /* UTF-32 character handling */ -#endif /* SUPPORT_UNICODE */ - - -/* Mode-dependent macros that have the same definition in all modes. */ - -#define CU2BYTES(x) ((x)*((PCRE2_CODE_UNIT_WIDTH/8))) -#define BYTES2CU(x) ((x)/((PCRE2_CODE_UNIT_WIDTH/8))) -#define PUTINC(a,n,d) PUT(a,n,d), a += LINK_SIZE -#define PUT2INC(a,n,d) PUT2(a,n,d), a += IMM2_SIZE - - -/* ----------------------- HIDDEN STRUCTURES ----------------------------- */ - -/* NOTE: All these structures *must* start with a pcre2_memctl structure. The -code that uses them is simpler because it assumes this. */ - -/* The real general context structure. At present it holds only data for custom -memory control. */ - -typedef struct pcre2_real_general_context { - pcre2_memctl memctl; -} pcre2_real_general_context; - -/* The real compile context structure */ - -typedef struct pcre2_real_compile_context { - pcre2_memctl memctl; - int (*stack_guard)(uint32_t, void *); - void *stack_guard_data; - const uint8_t *tables; - PCRE2_SIZE max_pattern_length; - uint16_t bsr_convention; - uint16_t newline_convention; - uint32_t parens_nest_limit; - uint32_t extra_options; -} pcre2_real_compile_context; - -/* The real match context structure. */ - -typedef struct pcre2_real_match_context { - pcre2_memctl memctl; -#ifdef SUPPORT_JIT - pcre2_jit_callback jit_callback; - void *jit_callback_data; -#endif - int (*callout)(pcre2_callout_block *, void *); - void *callout_data; - int (*substitute_callout)(pcre2_substitute_callout_block *, void *); - void *substitute_callout_data; - PCRE2_SIZE offset_limit; - uint32_t heap_limit; - uint32_t match_limit; - uint32_t depth_limit; -} pcre2_real_match_context; - -/* The real convert context structure. */ - -typedef struct pcre2_real_convert_context { - pcre2_memctl memctl; - uint32_t glob_separator; - uint32_t glob_escape; -} pcre2_real_convert_context; - -/* The real compiled code structure. The type for the blocksize field is -defined specially because it is required in pcre2_serialize_decode() when -copying the size from possibly unaligned memory into a variable of the same -type. Use a macro rather than a typedef to avoid compiler warnings when this -file is included multiple times by pcre2test. LOOKBEHIND_MAX specifies the -largest lookbehind that is supported. (OP_REVERSE in a pattern has a 16-bit -argument in 8-bit and 16-bit modes, so we need no more than a 16-bit field -here.) */ - -#undef CODE_BLOCKSIZE_TYPE -#define CODE_BLOCKSIZE_TYPE size_t - -#undef LOOKBEHIND_MAX -#define LOOKBEHIND_MAX UINT16_MAX - -typedef struct pcre2_real_code { - pcre2_memctl memctl; /* Memory control fields */ - const uint8_t *tables; /* The character tables */ - void *executable_jit; /* Pointer to JIT code */ - uint8_t start_bitmap[32]; /* Bitmap for starting code unit < 256 */ - CODE_BLOCKSIZE_TYPE blocksize; /* Total (bytes) that was malloc-ed */ - uint32_t magic_number; /* Paranoid and endianness check */ - uint32_t compile_options; /* Options passed to pcre2_compile() */ - uint32_t overall_options; /* Options after processing the pattern */ - uint32_t extra_options; /* Taken from compile_context */ - uint32_t flags; /* Various state flags */ - uint32_t limit_heap; /* Limit set in the pattern */ - uint32_t limit_match; /* Limit set in the pattern */ - uint32_t limit_depth; /* Limit set in the pattern */ - uint32_t first_codeunit; /* Starting code unit */ - uint32_t last_codeunit; /* This codeunit must be seen */ - uint16_t bsr_convention; /* What \R matches */ - uint16_t newline_convention; /* What is a newline? */ - uint16_t max_lookbehind; /* Longest lookbehind (characters) */ - uint16_t minlength; /* Minimum length of match */ - uint16_t top_bracket; /* Highest numbered group */ - uint16_t top_backref; /* Highest numbered back reference */ - uint16_t name_entry_size; /* Size (code units) of table entries */ - uint16_t name_count; /* Number of name entries in the table */ -} pcre2_real_code; - -/* The real match data structure. Define ovector as large as it can ever -actually be so that array bound checkers don't grumble. Memory for this -structure is obtained by calling pcre2_match_data_create(), which sets the size -as the offset of ovector plus a pair of elements for each capturable string, so -the size varies from call to call. As the maximum number of capturing -subpatterns is 65535 we must allow for 65536 strings to include the overall -match. (See also the heapframe structure below.) */ - -typedef struct pcre2_real_match_data { - pcre2_memctl memctl; - const pcre2_real_code *code; /* The pattern used for the match */ - PCRE2_SPTR subject; /* The subject that was matched */ - PCRE2_SPTR mark; /* Pointer to last mark */ - PCRE2_SIZE leftchar; /* Offset to leftmost code unit */ - PCRE2_SIZE rightchar; /* Offset to rightmost code unit */ - PCRE2_SIZE startchar; /* Offset to starting code unit */ - uint8_t matchedby; /* Type of match (normal, JIT, DFA) */ - uint8_t flags; /* Various flags */ - uint16_t oveccount; /* Number of pairs */ - int rc; /* The return code from the match */ - PCRE2_SIZE ovector[131072]; /* Must be last in the structure */ -} pcre2_real_match_data; - - -/* ----------------------- PRIVATE STRUCTURES ----------------------------- */ - -/* These structures are not needed for pcre2test. */ - -#ifndef PCRE2_PCRE2TEST - -/* Structures for checking for mutual recursion when scanning compiled or -parsed code. */ - -typedef struct recurse_check { - struct recurse_check *prev; - PCRE2_SPTR group; -} recurse_check; - -typedef struct parsed_recurse_check { - struct parsed_recurse_check *prev; - uint32_t *groupptr; -} parsed_recurse_check; - -/* Structure for building a cache when filling in recursion offsets. */ - -typedef struct recurse_cache { - PCRE2_SPTR group; - int groupnumber; -} recurse_cache; - -/* Structure for maintaining a chain of pointers to the currently incomplete -branches, for testing for left recursion while compiling. */ - -typedef struct branch_chain { - struct branch_chain *outer; - PCRE2_UCHAR *current_branch; -} branch_chain; - -/* Structure for building a list of named groups during the first pass of -compiling. */ - -typedef struct named_group { - PCRE2_SPTR name; /* Points to the name in the pattern */ - uint32_t number; /* Group number */ - uint16_t length; /* Length of the name */ - uint16_t isdup; /* TRUE if a duplicate */ -} named_group; - -/* Structure for passing "static" information around between the functions -doing the compiling, so that they are thread-safe. */ - -typedef struct compile_block { - pcre2_real_compile_context *cx; /* Points to the compile context */ - const uint8_t *lcc; /* Points to lower casing table */ - const uint8_t *fcc; /* Points to case-flipping table */ - const uint8_t *cbits; /* Points to character type table */ - const uint8_t *ctypes; /* Points to table of type maps */ - PCRE2_SPTR start_workspace; /* The start of working space */ - PCRE2_SPTR start_code; /* The start of the compiled code */ - PCRE2_SPTR start_pattern; /* The start of the pattern */ - PCRE2_SPTR end_pattern; /* The end of the pattern */ - PCRE2_UCHAR *name_table; /* The name/number table */ - PCRE2_SIZE workspace_size; /* Size of workspace */ - PCRE2_SIZE small_ref_offset[10]; /* Offsets for \1 to \9 */ - PCRE2_SIZE erroroffset; /* Offset of error in pattern */ - uint16_t names_found; /* Number of entries so far */ - uint16_t name_entry_size; /* Size of each entry */ - uint16_t parens_depth; /* Depth of nested parentheses */ - uint16_t assert_depth; /* Depth of nested assertions */ - open_capitem *open_caps; /* Chain of open capture items */ - named_group *named_groups; /* Points to vector in pre-compile */ - uint32_t named_group_list_size; /* Number of entries in the list */ - uint32_t external_options; /* External (initial) options */ - uint32_t external_flags; /* External flag bits to be set */ - uint32_t bracount; /* Count of capturing parentheses */ - uint32_t lastcapture; /* Last capture encountered */ - uint32_t *parsed_pattern; /* Parsed pattern buffer */ - uint32_t *parsed_pattern_end; /* Parsed pattern should not get here */ - uint32_t *groupinfo; /* Group info vector */ - uint32_t top_backref; /* Maximum back reference */ - uint32_t backref_map; /* Bitmap of low back refs */ - uint32_t nltype; /* Newline type */ - uint32_t nllen; /* Newline string length */ - uint32_t class_range_start; /* Overall class range start */ - uint32_t class_range_end; /* Overall class range end */ - PCRE2_UCHAR nl[4]; /* Newline string when fixed length */ - int max_lookbehind; /* Maximum lookbehind (characters) */ - int req_varyopt; /* "After variable item" flag for reqbyte */ - BOOL had_accept; /* (*ACCEPT) encountered */ - BOOL had_pruneorskip; /* (*PRUNE) or (*SKIP) encountered */ - BOOL had_recurse; /* Had a recursion or subroutine call */ - BOOL dupnames; /* Duplicate names exist */ -} compile_block; - -/* Structure for keeping the properties of the in-memory stack used -by the JIT matcher. */ - -typedef struct pcre2_real_jit_stack { - pcre2_memctl memctl; - void* stack; -} pcre2_real_jit_stack; - -/* Structure for items in a linked list that represents an explicit recursive -call within the pattern when running pcre_dfa_match(). */ - -typedef struct dfa_recursion_info { - struct dfa_recursion_info *prevrec; - PCRE2_SPTR subject_position; - uint32_t group_num; -} dfa_recursion_info; - -/* Structure for "stack" frames that are used for remembering backtracking -positions during matching. As these are used in a vector, with the ovector item -being extended, the size of the structure must be a multiple of PCRE2_SIZE. The -only way to check this at compile time is to force an error by generating an -array with a negative size. By putting this in a typedef (which is never used), -we don't generate any code when all is well. */ - -typedef struct heapframe { - - /* The first set of fields are variables that have to be preserved over calls - to RRMATCH(), but which do not need to be copied to new frames. */ - - PCRE2_SPTR ecode; /* The current position in the pattern */ - PCRE2_SPTR temp_sptr[2]; /* Used for short-term PCRE_SPTR values */ - PCRE2_SIZE length; /* Used for character, string, or code lengths */ - PCRE2_SIZE back_frame; /* Amount to subtract on RRETURN */ - PCRE2_SIZE temp_size; /* Used for short-term PCRE2_SIZE values */ - uint32_t rdepth; /* "Recursion" depth */ - uint32_t group_frame_type; /* Type information for group frames */ - uint32_t temp_32[4]; /* Used for short-term 32-bit or BOOL values */ - uint8_t return_id; /* Where to go on in internal "return" */ - uint8_t op; /* Processing opcode */ - - /* At this point, the structure is 16-bit aligned. On most architectures - the alignment requirement for a pointer will ensure that the eptr field below - is 32-bit or 64-bit aligned. However, on m68k it is fine to have a pointer - that is 16-bit aligned. We must therefore ensure that what comes between here - and eptr is an odd multiple of 16 bits so as to get back into 32-bit - alignment. This happens naturally when PCRE2_UCHAR is 8 bits wide, but needs - fudges in the other cases. In the 32-bit case the padding comes first so that - the occu field itself is 32-bit aligned. Without the padding, this structure - is no longer a multiple of PCRE2_SIZE on m68k, and the check below fails. */ - -#if PCRE2_CODE_UNIT_WIDTH == 8 - PCRE2_UCHAR occu[6]; /* Used for other case code units */ -#elif PCRE2_CODE_UNIT_WIDTH == 16 - PCRE2_UCHAR occu[2]; /* Used for other case code units */ - uint8_t unused[2]; /* Ensure 32-bit alignment (see above) */ -#else - uint8_t unused[2]; /* Ensure 32-bit alignment (see above) */ - PCRE2_UCHAR occu[1]; /* Used for other case code units */ -#endif - - /* The rest have to be copied from the previous frame whenever a new frame - becomes current. The final field is specified as a large vector so that - runtime array bound checks don't catch references to it. However, for any - specific call to pcre2_match() the memory allocated for each frame structure - allows for exactly the right size ovector for the number of capturing - parentheses. (See also the comment for pcre2_real_match_data above.) */ - - PCRE2_SPTR eptr; /* MUST BE FIRST */ - PCRE2_SPTR start_match; /* Can be adjusted by \K */ - PCRE2_SPTR mark; /* Most recent mark on the success path */ - uint32_t current_recurse; /* Current (deepest) recursion number */ - uint32_t capture_last; /* Most recent capture */ - PCRE2_SIZE last_group_offset; /* Saved offset to most recent group frame */ - PCRE2_SIZE offset_top; /* Offset after highest capture */ - PCRE2_SIZE ovector[131072]; /* Must be last in the structure */ -} heapframe; - -/* This typedef is a check that the size of the heapframe structure is a -multiple of PCRE2_SIZE. See various comments above. */ - -typedef char check_heapframe_size[ - ((sizeof(heapframe) % sizeof(PCRE2_SIZE)) == 0)? (+1):(-1)]; - -/* Structure for passing "static" information around between the functions -doing traditional NFA matching (pcre2_match() and friends). */ - -typedef struct match_block { - pcre2_memctl memctl; /* For general use */ - PCRE2_SIZE frame_vector_size; /* Size of a backtracking frame */ - heapframe *match_frames; /* Points to vector of frames */ - heapframe *match_frames_top; /* Points after the end of the vector */ - heapframe *stack_frames; /* The original vector on the stack */ - PCRE2_SIZE heap_limit; /* As it says */ - uint32_t match_limit; /* As it says */ - uint32_t match_limit_depth; /* As it says */ - uint32_t match_call_count; /* Number of times a new frame is created */ - BOOL hitend; /* Hit the end of the subject at some point */ - BOOL hasthen; /* Pattern contains (*THEN) */ - BOOL allowemptypartial; /* Allow empty hard partial */ - const uint8_t *lcc; /* Points to lower casing table */ - const uint8_t *fcc; /* Points to case-flipping table */ - const uint8_t *ctypes; /* Points to table of type maps */ - PCRE2_SIZE start_offset; /* The start offset value */ - PCRE2_SIZE end_offset_top; /* Highwater mark at end of match */ - uint16_t partial; /* PARTIAL options */ - uint16_t bsr_convention; /* \R interpretation */ - uint16_t name_count; /* Number of names in name table */ - uint16_t name_entry_size; /* Size of entry in names table */ - PCRE2_SPTR name_table; /* Table of group names */ - PCRE2_SPTR start_code; /* For use when recursing */ - PCRE2_SPTR start_subject; /* Start of the subject string */ - PCRE2_SPTR check_subject; /* Where UTF-checked from */ - PCRE2_SPTR end_subject; /* End of the subject string */ - PCRE2_SPTR end_match_ptr; /* Subject position at end match */ - PCRE2_SPTR start_used_ptr; /* Earliest consulted character */ - PCRE2_SPTR last_used_ptr; /* Latest consulted character */ - PCRE2_SPTR mark; /* Mark pointer to pass back on success */ - PCRE2_SPTR nomatch_mark; /* Mark pointer to pass back on failure */ - PCRE2_SPTR verb_ecode_ptr; /* For passing back info */ - PCRE2_SPTR verb_skip_ptr; /* For passing back a (*SKIP) name */ - uint32_t verb_current_recurse; /* Current recurse when (*VERB) happens */ - uint32_t moptions; /* Match options */ - uint32_t poptions; /* Pattern options */ - uint32_t skip_arg_count; /* For counting SKIP_ARGs */ - uint32_t ignore_skip_arg; /* For re-run when SKIP arg name not found */ - uint32_t nltype; /* Newline type */ - uint32_t nllen; /* Newline string length */ - PCRE2_UCHAR nl[4]; /* Newline string when fixed */ - pcre2_callout_block *cb; /* Points to a callout block */ - void *callout_data; /* To pass back to callouts */ - int (*callout)(pcre2_callout_block *,void *); /* Callout function or NULL */ -} match_block; - -/* A similar structure is used for the same purpose by the DFA matching -functions. */ - -typedef struct dfa_match_block { - pcre2_memctl memctl; /* For general use */ - PCRE2_SPTR start_code; /* Start of the compiled pattern */ - PCRE2_SPTR start_subject ; /* Start of the subject string */ - PCRE2_SPTR end_subject; /* End of subject string */ - PCRE2_SPTR start_used_ptr; /* Earliest consulted character */ - PCRE2_SPTR last_used_ptr; /* Latest consulted character */ - const uint8_t *tables; /* Character tables */ - PCRE2_SIZE start_offset; /* The start offset value */ - PCRE2_SIZE heap_limit; /* As it says */ - PCRE2_SIZE heap_used; /* As it says */ - uint32_t match_limit; /* As it says */ - uint32_t match_limit_depth; /* As it says */ - uint32_t match_call_count; /* Number of calls of internal function */ - uint32_t moptions; /* Match options */ - uint32_t poptions; /* Pattern options */ - uint32_t nltype; /* Newline type */ - uint32_t nllen; /* Newline string length */ - BOOL allowemptypartial; /* Allow empty hard partial */ - PCRE2_UCHAR nl[4]; /* Newline string when fixed */ - uint16_t bsr_convention; /* \R interpretation */ - pcre2_callout_block *cb; /* Points to a callout block */ - void *callout_data; /* To pass back to callouts */ - int (*callout)(pcre2_callout_block *,void *); /* Callout function or NULL */ - dfa_recursion_info *recursive; /* Linked list of recursion data */ -} dfa_match_block; - -#endif /* PCRE2_PCRE2TEST */ - -/* End of pcre2_intmodedep.h */ diff --git a/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_jit_neon_inc.h b/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_jit_neon_inc.h deleted file mode 100644 index 66373b6..0000000 --- a/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_jit_neon_inc.h +++ /dev/null @@ -1,343 +0,0 @@ -/************************************************* -* Perl-Compatible Regular Expressions * -*************************************************/ - -/* PCRE is a library of functions to support regular expressions whose syntax -and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel - This module by Zoltan Herczeg and Sebastian Pop - Original API code Copyright (c) 1997-2012 University of Cambridge - New API code Copyright (c) 2016-2019 University of Cambridge - ------------------------------------------------------------------------------ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of the University of Cambridge nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------ -*/ - -# if defined(FFCS) -# if defined(FF_UTF) -# define FF_FUN ffcs_utf -# else -# define FF_FUN ffcs -# endif - -# elif defined(FFCS_2) -# if defined(FF_UTF) -# define FF_FUN ffcs_2_utf -# else -# define FF_FUN ffcs_2 -# endif - -# elif defined(FFCS_MASK) -# if defined(FF_UTF) -# define FF_FUN ffcs_mask_utf -# else -# define FF_FUN ffcs_mask -# endif - -# elif defined(FFCPS_0) -# if defined (FF_UTF) -# define FF_FUN ffcps_0_utf -# else -# define FF_FUN ffcps_0 -# endif - -# elif defined (FFCPS_1) -# if defined (FF_UTF) -# define FF_FUN ffcps_1_utf -# else -# define FF_FUN ffcps_1 -# endif - -# elif defined (FFCPS_DEFAULT) -# if defined (FF_UTF) -# define FF_FUN ffcps_default_utf -# else -# define FF_FUN ffcps_default -# endif -# endif - -static sljit_u8* SLJIT_FUNC FF_FUN(sljit_u8 *str_end, sljit_u8 *str_ptr, sljit_uw offs1, sljit_uw offs2, sljit_uw chars) -#undef FF_FUN -{ -quad_word qw; -int_char ic; -ic.x = chars; - -#if defined(FFCS) -sljit_u8 c1 = ic.c.c1; -vect_t vc1 = VDUPQ(c1); - -#elif defined(FFCS_2) -sljit_u8 c1 = ic.c.c1; -vect_t vc1 = VDUPQ(c1); -sljit_u8 c2 = ic.c.c2; -vect_t vc2 = VDUPQ(c2); - -#elif defined(FFCS_MASK) -sljit_u8 c1 = ic.c.c1; -vect_t vc1 = VDUPQ(c1); -sljit_u8 mask = ic.c.c2; -vect_t vmask = VDUPQ(mask); -#endif - -#if defined(FFCPS) -compare_type compare1_type = compare_match1; -compare_type compare2_type = compare_match1; -vect_t cmp1a, cmp1b, cmp2a, cmp2b; -const sljit_u32 diff = IN_UCHARS(offs1 - offs2); -PCRE2_UCHAR char1a = ic.c.c1; -PCRE2_UCHAR char2a = ic.c.c3; - -# ifdef FFCPS_CHAR1A2A -cmp1a = VDUPQ(char1a); -cmp2a = VDUPQ(char2a); -cmp1b = VDUPQ(0); /* to avoid errors on older compilers -Werror=maybe-uninitialized */ -cmp2b = VDUPQ(0); /* to avoid errors on older compilers -Werror=maybe-uninitialized */ -# else -PCRE2_UCHAR char1b = ic.c.c2; -PCRE2_UCHAR char2b = ic.c.c4; -if (char1a == char1b) - { - cmp1a = VDUPQ(char1a); - cmp1b = VDUPQ(0); /* to avoid errors on older compilers -Werror=maybe-uninitialized */ - } -else - { - sljit_u32 bit1 = char1a ^ char1b; - if (is_powerof2(bit1)) - { - compare1_type = compare_match1i; - cmp1a = VDUPQ(char1a | bit1); - cmp1b = VDUPQ(bit1); - } - else - { - compare1_type = compare_match2; - cmp1a = VDUPQ(char1a); - cmp1b = VDUPQ(char1b); - } - } - -if (char2a == char2b) - { - cmp2a = VDUPQ(char2a); - cmp2b = VDUPQ(0); /* to avoid errors on older compilers -Werror=maybe-uninitialized */ - } -else - { - sljit_u32 bit2 = char2a ^ char2b; - if (is_powerof2(bit2)) - { - compare2_type = compare_match1i; - cmp2a = VDUPQ(char2a | bit2); - cmp2b = VDUPQ(bit2); - } - else - { - compare2_type = compare_match2; - cmp2a = VDUPQ(char2a); - cmp2b = VDUPQ(char2b); - } - } -# endif - -str_ptr += IN_UCHARS(offs1); -#endif - -#if PCRE2_CODE_UNIT_WIDTH != 8 -vect_t char_mask = VDUPQ(0xff); -#endif - -#if defined(FF_UTF) -restart:; -#endif - -#if defined(FFCPS) -sljit_u8 *p1 = str_ptr - diff; -#endif -sljit_s32 align_offset = ((uint64_t)str_ptr & 0xf); -str_ptr = (sljit_u8 *) ((uint64_t)str_ptr & ~0xf); -vect_t data = VLD1Q(str_ptr); -#if PCRE2_CODE_UNIT_WIDTH != 8 -data = VANDQ(data, char_mask); -#endif - -#if defined(FFCS) -vect_t eq = VCEQQ(data, vc1); - -#elif defined(FFCS_2) -vect_t eq1 = VCEQQ(data, vc1); -vect_t eq2 = VCEQQ(data, vc2); -vect_t eq = VORRQ(eq1, eq2); - -#elif defined(FFCS_MASK) -vect_t eq = VORRQ(data, vmask); -eq = VCEQQ(eq, vc1); - -#elif defined(FFCPS) -# if defined(FFCPS_DIFF1) -vect_t prev_data = data; -# endif - -vect_t data2; -if (p1 < str_ptr) - { - data2 = VLD1Q(str_ptr - diff); -#if PCRE2_CODE_UNIT_WIDTH != 8 - data2 = VANDQ(data2, char_mask); -#endif - } -else - data2 = shift_left_n_lanes(data, offs1 - offs2); - -if (compare1_type == compare_match1) - data = VCEQQ(data, cmp1a); -else - data = fast_forward_char_pair_compare(compare1_type, data, cmp1a, cmp1b); - -if (compare2_type == compare_match1) - data2 = VCEQQ(data2, cmp2a); -else - data2 = fast_forward_char_pair_compare(compare2_type, data2, cmp2a, cmp2b); - -vect_t eq = VANDQ(data, data2); -#endif - -VST1Q(qw.mem, eq); -/* Ignore matches before the first STR_PTR. */ -if (align_offset < 8) - { - qw.dw[0] >>= align_offset * 8; - if (qw.dw[0]) - { - str_ptr += align_offset + __builtin_ctzll(qw.dw[0]) / 8; - goto match; - } - if (qw.dw[1]) - { - str_ptr += 8 + __builtin_ctzll(qw.dw[1]) / 8; - goto match; - } - } -else - { - qw.dw[1] >>= (align_offset - 8) * 8; - if (qw.dw[1]) - { - str_ptr += align_offset + __builtin_ctzll(qw.dw[1]) / 8; - goto match; - } - } -str_ptr += 16; - -while (str_ptr < str_end) - { - vect_t orig_data = VLD1Q(str_ptr); -#if PCRE2_CODE_UNIT_WIDTH != 8 - orig_data = VANDQ(orig_data, char_mask); -#endif - data = orig_data; - -#if defined(FFCS) - eq = VCEQQ(data, vc1); - -#elif defined(FFCS_2) - eq1 = VCEQQ(data, vc1); - eq2 = VCEQQ(data, vc2); - eq = VORRQ(eq1, eq2); - -#elif defined(FFCS_MASK) - eq = VORRQ(data, vmask); - eq = VCEQQ(eq, vc1); -#endif - -#if defined(FFCPS) -# if defined (FFCPS_DIFF1) - data2 = VEXTQ(prev_data, data, VECTOR_FACTOR - 1); -# else - data2 = VLD1Q(str_ptr - diff); -# if PCRE2_CODE_UNIT_WIDTH != 8 - data2 = VANDQ(data2, char_mask); -# endif -# endif - -# ifdef FFCPS_CHAR1A2A - data = VCEQQ(data, cmp1a); - data2 = VCEQQ(data2, cmp2a); -# else - if (compare1_type == compare_match1) - data = VCEQQ(data, cmp1a); - else - data = fast_forward_char_pair_compare(compare1_type, data, cmp1a, cmp1b); - if (compare2_type == compare_match1) - data2 = VCEQQ(data2, cmp2a); - else - data2 = fast_forward_char_pair_compare(compare2_type, data2, cmp2a, cmp2b); -# endif - - eq = VANDQ(data, data2); -#endif - - VST1Q(qw.mem, eq); - if (qw.dw[0]) - str_ptr += __builtin_ctzll(qw.dw[0]) / 8; - else if (qw.dw[1]) - str_ptr += 8 + __builtin_ctzll(qw.dw[1]) / 8; - else { - str_ptr += 16; -#if defined (FFCPS_DIFF1) - prev_data = orig_data; -#endif - continue; - } - -match:; - if (str_ptr >= str_end) - /* Failed match. */ - return NULL; - -#if defined(FF_UTF) - if (utf_continue(str_ptr + IN_UCHARS(-offs1))) - { - /* Not a match. */ - str_ptr += IN_UCHARS(1); - goto restart; - } -#endif - - /* Match. */ -#if defined (FFCPS) - str_ptr -= IN_UCHARS(offs1); -#endif - return str_ptr; - } - -/* Failed match. */ -return NULL; -} diff --git a/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_jit_simd_inc.h b/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_jit_simd_inc.h deleted file mode 100644 index 5673d33..0000000 --- a/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_jit_simd_inc.h +++ /dev/null @@ -1,1123 +0,0 @@ -/************************************************* -* Perl-Compatible Regular Expressions * -*************************************************/ - -/* PCRE is a library of functions to support regular expressions whose syntax -and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel - This module by Zoltan Herczeg - Original API code Copyright (c) 1997-2012 University of Cambridge - New API code Copyright (c) 2016-2019 University of Cambridge - ------------------------------------------------------------------------------ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of the University of Cambridge nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------ -*/ - -#if (defined SLJIT_CONFIG_X86 && SLJIT_CONFIG_X86) && !(defined SUPPORT_VALGRIND) - -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -static struct sljit_jump *jump_if_utf_char_start(struct sljit_compiler *compiler, sljit_s32 reg) -{ -#if PCRE2_CODE_UNIT_WIDTH == 8 -OP2(SLJIT_AND, reg, 0, reg, 0, SLJIT_IMM, 0xc0); -return CMP(SLJIT_NOT_EQUAL, reg, 0, SLJIT_IMM, 0x80); -#elif PCRE2_CODE_UNIT_WIDTH == 16 -OP2(SLJIT_AND, reg, 0, reg, 0, SLJIT_IMM, 0xfc00); -return CMP(SLJIT_NOT_EQUAL, reg, 0, SLJIT_IMM, 0xdc00); -#else -#error "Unknown code width" -#endif -} -#endif - -static sljit_s32 character_to_int32(PCRE2_UCHAR chr) -{ -sljit_u32 value = chr; -#if PCRE2_CODE_UNIT_WIDTH == 8 -#define SSE2_COMPARE_TYPE_INDEX 0 -return (sljit_s32)((value << 24) | (value << 16) | (value << 8) | value); -#elif PCRE2_CODE_UNIT_WIDTH == 16 -#define SSE2_COMPARE_TYPE_INDEX 1 -return (sljit_s32)((value << 16) | value); -#elif PCRE2_CODE_UNIT_WIDTH == 32 -#define SSE2_COMPARE_TYPE_INDEX 2 -return (sljit_s32)(value); -#else -#error "Unsupported unit width" -#endif -} - -static void load_from_mem_sse2(struct sljit_compiler *compiler, sljit_s32 dst_xmm_reg, sljit_s32 src_general_reg, sljit_s8 offset) -{ -sljit_u8 instruction[5]; - -SLJIT_ASSERT(dst_xmm_reg < 8); -SLJIT_ASSERT(src_general_reg < 8); - -/* MOVDQA xmm1, xmm2/m128 */ -instruction[0] = ((sljit_u8)offset & 0xf) == 0 ? 0x66 : 0xf3; -instruction[1] = 0x0f; -instruction[2] = 0x6f; - -if (offset == 0) - { - instruction[3] = (dst_xmm_reg << 3) | src_general_reg; - sljit_emit_op_custom(compiler, instruction, 4); - return; - } - -instruction[3] = 0x40 | (dst_xmm_reg << 3) | src_general_reg; -instruction[4] = (sljit_u8)offset; -sljit_emit_op_custom(compiler, instruction, 5); -} - -typedef enum { - sse2_compare_match1, - sse2_compare_match1i, - sse2_compare_match2, -} sse2_compare_type; - -static void fast_forward_char_pair_sse2_compare(struct sljit_compiler *compiler, sse2_compare_type compare_type, - int step, sljit_s32 dst_ind, sljit_s32 cmp1_ind, sljit_s32 cmp2_ind, sljit_s32 tmp_ind) -{ -sljit_u8 instruction[4]; -instruction[0] = 0x66; -instruction[1] = 0x0f; - -SLJIT_ASSERT(step >= 0 && step <= 3); - -if (compare_type != sse2_compare_match2) - { - if (step == 0) - { - if (compare_type == sse2_compare_match1i) - { - /* POR xmm1, xmm2/m128 */ - /* instruction[0] = 0x66; */ - /* instruction[1] = 0x0f; */ - instruction[2] = 0xeb; - instruction[3] = 0xc0 | (dst_ind << 3) | cmp2_ind; - sljit_emit_op_custom(compiler, instruction, 4); - } - return; - } - - if (step != 2) - return; - - /* PCMPEQB/W/D xmm1, xmm2/m128 */ - /* instruction[0] = 0x66; */ - /* instruction[1] = 0x0f; */ - instruction[2] = 0x74 + SSE2_COMPARE_TYPE_INDEX; - instruction[3] = 0xc0 | (dst_ind << 3) | cmp1_ind; - sljit_emit_op_custom(compiler, instruction, 4); - return; - } - -switch (step) - { - case 0: - /* MOVDQA xmm1, xmm2/m128 */ - /* instruction[0] = 0x66; */ - /* instruction[1] = 0x0f; */ - instruction[2] = 0x6f; - instruction[3] = 0xc0 | (tmp_ind << 3) | dst_ind; - sljit_emit_op_custom(compiler, instruction, 4); - return; - - case 1: - /* PCMPEQB/W/D xmm1, xmm2/m128 */ - /* instruction[0] = 0x66; */ - /* instruction[1] = 0x0f; */ - instruction[2] = 0x74 + SSE2_COMPARE_TYPE_INDEX; - instruction[3] = 0xc0 | (dst_ind << 3) | cmp1_ind; - sljit_emit_op_custom(compiler, instruction, 4); - return; - - case 2: - /* PCMPEQB/W/D xmm1, xmm2/m128 */ - /* instruction[0] = 0x66; */ - /* instruction[1] = 0x0f; */ - instruction[2] = 0x74 + SSE2_COMPARE_TYPE_INDEX; - instruction[3] = 0xc0 | (tmp_ind << 3) | cmp2_ind; - sljit_emit_op_custom(compiler, instruction, 4); - return; - - case 3: - /* POR xmm1, xmm2/m128 */ - /* instruction[0] = 0x66; */ - /* instruction[1] = 0x0f; */ - instruction[2] = 0xeb; - instruction[3] = 0xc0 | (dst_ind << 3) | tmp_ind; - sljit_emit_op_custom(compiler, instruction, 4); - return; - } -} - -#define JIT_HAS_FAST_FORWARD_CHAR_SIMD (sljit_has_cpu_feature(SLJIT_HAS_SSE2)) - -static void fast_forward_char_simd(compiler_common *common, PCRE2_UCHAR char1, PCRE2_UCHAR char2, sljit_s32 offset) -{ -DEFINE_COMPILER; -struct sljit_label *start; -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -struct sljit_label *restart; -#endif -struct sljit_jump *quit; -struct sljit_jump *partial_quit[2]; -sse2_compare_type compare_type = sse2_compare_match1; -sljit_u8 instruction[8]; -sljit_s32 tmp1_reg_ind = sljit_get_register_index(TMP1); -sljit_s32 str_ptr_reg_ind = sljit_get_register_index(STR_PTR); -sljit_s32 data_ind = 0; -sljit_s32 tmp_ind = 1; -sljit_s32 cmp1_ind = 2; -sljit_s32 cmp2_ind = 3; -sljit_u32 bit = 0; -int i; - -SLJIT_UNUSED_ARG(offset); - -if (char1 != char2) - { - bit = char1 ^ char2; - compare_type = sse2_compare_match1i; - - if (!is_powerof2(bit)) - { - bit = 0; - compare_type = sse2_compare_match2; - } - } - -partial_quit[0] = CMP(SLJIT_GREATER_EQUAL, STR_PTR, 0, STR_END, 0); -if (common->mode == PCRE2_JIT_COMPLETE) - add_jump(compiler, &common->failed_match, partial_quit[0]); - -/* First part (unaligned start) */ - -OP1(SLJIT_MOV, TMP1, 0, SLJIT_IMM, character_to_int32(char1 | bit)); - -SLJIT_ASSERT(tmp1_reg_ind < 8); - -/* MOVD xmm, r/m32 */ -instruction[0] = 0x66; -instruction[1] = 0x0f; -instruction[2] = 0x6e; -instruction[3] = 0xc0 | (cmp1_ind << 3) | tmp1_reg_ind; -sljit_emit_op_custom(compiler, instruction, 4); - -if (char1 != char2) - { - OP1(SLJIT_MOV, TMP1, 0, SLJIT_IMM, character_to_int32(bit != 0 ? bit : char2)); - - /* MOVD xmm, r/m32 */ - instruction[3] = 0xc0 | (cmp2_ind << 3) | tmp1_reg_ind; - sljit_emit_op_custom(compiler, instruction, 4); - } - -OP1(SLJIT_MOV, TMP2, 0, STR_PTR, 0); - -/* PSHUFD xmm1, xmm2/m128, imm8 */ -/* instruction[0] = 0x66; */ -/* instruction[1] = 0x0f; */ -instruction[2] = 0x70; -instruction[3] = 0xc0 | (cmp1_ind << 3) | cmp1_ind; -instruction[4] = 0; -sljit_emit_op_custom(compiler, instruction, 5); - -if (char1 != char2) - { - /* PSHUFD xmm1, xmm2/m128, imm8 */ - instruction[3] = 0xc0 | (cmp2_ind << 3) | cmp2_ind; - sljit_emit_op_custom(compiler, instruction, 5); - } - -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -restart = LABEL(); -#endif -OP2(SLJIT_AND, STR_PTR, 0, STR_PTR, 0, SLJIT_IMM, ~0xf); -OP2(SLJIT_AND, TMP2, 0, TMP2, 0, SLJIT_IMM, 0xf); - -load_from_mem_sse2(compiler, data_ind, str_ptr_reg_ind, 0); -for (i = 0; i < 4; i++) - fast_forward_char_pair_sse2_compare(compiler, compare_type, i, data_ind, cmp1_ind, cmp2_ind, tmp_ind); - -/* PMOVMSKB reg, xmm */ -/* instruction[0] = 0x66; */ -/* instruction[1] = 0x0f; */ -instruction[2] = 0xd7; -instruction[3] = 0xc0 | (tmp1_reg_ind << 3) | data_ind; -sljit_emit_op_custom(compiler, instruction, 4); - -OP2(SLJIT_ADD, STR_PTR, 0, STR_PTR, 0, TMP2, 0); -OP2(SLJIT_LSHR, TMP1, 0, TMP1, 0, TMP2, 0); - -quit = CMP(SLJIT_NOT_ZERO, TMP1, 0, SLJIT_IMM, 0); - -OP2(SLJIT_SUB, STR_PTR, 0, STR_PTR, 0, TMP2, 0); - -/* Second part (aligned) */ -start = LABEL(); - -OP2(SLJIT_ADD, STR_PTR, 0, STR_PTR, 0, SLJIT_IMM, 16); - -partial_quit[1] = CMP(SLJIT_GREATER_EQUAL, STR_PTR, 0, STR_END, 0); -if (common->mode == PCRE2_JIT_COMPLETE) - add_jump(compiler, &common->failed_match, partial_quit[1]); - -load_from_mem_sse2(compiler, data_ind, str_ptr_reg_ind, 0); -for (i = 0; i < 4; i++) - fast_forward_char_pair_sse2_compare(compiler, compare_type, i, data_ind, cmp1_ind, cmp2_ind, tmp_ind); - -/* PMOVMSKB reg, xmm */ -/* instruction[0] = 0x66; */ -/* instruction[1] = 0x0f; */ -instruction[2] = 0xd7; -instruction[3] = 0xc0 | (tmp1_reg_ind << 3) | data_ind; -sljit_emit_op_custom(compiler, instruction, 4); - -CMPTO(SLJIT_ZERO, TMP1, 0, SLJIT_IMM, 0, start); - -JUMPHERE(quit); - -/* BSF r32, r/m32 */ -instruction[0] = 0x0f; -instruction[1] = 0xbc; -instruction[2] = 0xc0 | (tmp1_reg_ind << 3) | tmp1_reg_ind; -sljit_emit_op_custom(compiler, instruction, 3); - -OP2(SLJIT_ADD, STR_PTR, 0, STR_PTR, 0, TMP1, 0); - -if (common->mode != PCRE2_JIT_COMPLETE) - { - JUMPHERE(partial_quit[0]); - JUMPHERE(partial_quit[1]); - OP2(SLJIT_SUB | SLJIT_SET_GREATER, SLJIT_UNUSED, 0, STR_PTR, 0, STR_END, 0); - CMOV(SLJIT_GREATER, STR_PTR, STR_END, 0); - } -else - add_jump(compiler, &common->failed_match, CMP(SLJIT_GREATER_EQUAL, STR_PTR, 0, STR_END, 0)); - -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -if (common->utf && offset > 0) - { - SLJIT_ASSERT(common->mode == PCRE2_JIT_COMPLETE); - - OP1(MOV_UCHAR, TMP1, 0, SLJIT_MEM1(STR_PTR), IN_UCHARS(-offset)); - - quit = jump_if_utf_char_start(compiler, TMP1); - - OP2(SLJIT_ADD, STR_PTR, 0, STR_PTR, 0, SLJIT_IMM, IN_UCHARS(1)); - add_jump(compiler, &common->failed_match, CMP(SLJIT_GREATER_EQUAL, STR_PTR, 0, STR_END, 0)); - OP1(SLJIT_MOV, TMP2, 0, STR_PTR, 0); - JUMPTO(SLJIT_JUMP, restart); - - JUMPHERE(quit); - } -#endif -} - -#define JIT_HAS_FAST_REQUESTED_CHAR_SIMD (sljit_has_cpu_feature(SLJIT_HAS_SSE2)) - -static jump_list *fast_requested_char_simd(compiler_common *common, PCRE2_UCHAR char1, PCRE2_UCHAR char2) -{ -DEFINE_COMPILER; -struct sljit_label *start; -struct sljit_jump *quit; -jump_list *not_found = NULL; -sse2_compare_type compare_type = sse2_compare_match1; -sljit_u8 instruction[8]; -sljit_s32 tmp1_reg_ind = sljit_get_register_index(TMP1); -sljit_s32 str_ptr_reg_ind = sljit_get_register_index(STR_PTR); -sljit_s32 data_ind = 0; -sljit_s32 tmp_ind = 1; -sljit_s32 cmp1_ind = 2; -sljit_s32 cmp2_ind = 3; -sljit_u32 bit = 0; -int i; - -if (char1 != char2) - { - bit = char1 ^ char2; - compare_type = sse2_compare_match1i; - - if (!is_powerof2(bit)) - { - bit = 0; - compare_type = sse2_compare_match2; - } - } - -add_jump(compiler, ¬_found, CMP(SLJIT_GREATER_EQUAL, TMP1, 0, STR_END, 0)); -OP1(SLJIT_MOV, TMP2, 0, TMP1, 0); -OP1(SLJIT_MOV, TMP3, 0, STR_PTR, 0); - -/* First part (unaligned start) */ - -OP1(SLJIT_MOV, TMP1, 0, SLJIT_IMM, character_to_int32(char1 | bit)); - -SLJIT_ASSERT(tmp1_reg_ind < 8); - -/* MOVD xmm, r/m32 */ -instruction[0] = 0x66; -instruction[1] = 0x0f; -instruction[2] = 0x6e; -instruction[3] = 0xc0 | (cmp1_ind << 3) | tmp1_reg_ind; -sljit_emit_op_custom(compiler, instruction, 4); - -if (char1 != char2) - { - OP1(SLJIT_MOV, TMP1, 0, SLJIT_IMM, character_to_int32(bit != 0 ? bit : char2)); - - /* MOVD xmm, r/m32 */ - instruction[3] = 0xc0 | (cmp2_ind << 3) | tmp1_reg_ind; - sljit_emit_op_custom(compiler, instruction, 4); - } - -OP1(SLJIT_MOV, STR_PTR, 0, TMP2, 0); - -/* PSHUFD xmm1, xmm2/m128, imm8 */ -/* instruction[0] = 0x66; */ -/* instruction[1] = 0x0f; */ -instruction[2] = 0x70; -instruction[3] = 0xc0 | (cmp1_ind << 3) | cmp1_ind; -instruction[4] = 0; -sljit_emit_op_custom(compiler, instruction, 5); - -if (char1 != char2) - { - /* PSHUFD xmm1, xmm2/m128, imm8 */ - instruction[3] = 0xc0 | (cmp2_ind << 3) | cmp2_ind; - sljit_emit_op_custom(compiler, instruction, 5); - } - -OP2(SLJIT_AND, STR_PTR, 0, STR_PTR, 0, SLJIT_IMM, ~0xf); -OP2(SLJIT_AND, TMP2, 0, TMP2, 0, SLJIT_IMM, 0xf); - -load_from_mem_sse2(compiler, data_ind, str_ptr_reg_ind, 0); -for (i = 0; i < 4; i++) - fast_forward_char_pair_sse2_compare(compiler, compare_type, i, data_ind, cmp1_ind, cmp2_ind, tmp_ind); - -/* PMOVMSKB reg, xmm */ -/* instruction[0] = 0x66; */ -/* instruction[1] = 0x0f; */ -instruction[2] = 0xd7; -instruction[3] = 0xc0 | (tmp1_reg_ind << 3) | data_ind; -sljit_emit_op_custom(compiler, instruction, 4); - -OP2(SLJIT_ADD, STR_PTR, 0, STR_PTR, 0, TMP2, 0); -OP2(SLJIT_LSHR, TMP1, 0, TMP1, 0, TMP2, 0); - -quit = CMP(SLJIT_NOT_ZERO, TMP1, 0, SLJIT_IMM, 0); - -OP2(SLJIT_SUB, STR_PTR, 0, STR_PTR, 0, TMP2, 0); - -/* Second part (aligned) */ -start = LABEL(); - -OP2(SLJIT_ADD, STR_PTR, 0, STR_PTR, 0, SLJIT_IMM, 16); - -add_jump(compiler, ¬_found, CMP(SLJIT_GREATER_EQUAL, STR_PTR, 0, STR_END, 0)); - -load_from_mem_sse2(compiler, data_ind, str_ptr_reg_ind, 0); -for (i = 0; i < 4; i++) - fast_forward_char_pair_sse2_compare(compiler, compare_type, i, data_ind, cmp1_ind, cmp2_ind, tmp_ind); - -/* PMOVMSKB reg, xmm */ -/* instruction[0] = 0x66; */ -/* instruction[1] = 0x0f; */ -instruction[2] = 0xd7; -instruction[3] = 0xc0 | (tmp1_reg_ind << 3) | data_ind; -sljit_emit_op_custom(compiler, instruction, 4); - -CMPTO(SLJIT_ZERO, TMP1, 0, SLJIT_IMM, 0, start); - -JUMPHERE(quit); - -/* BSF r32, r/m32 */ -instruction[0] = 0x0f; -instruction[1] = 0xbc; -instruction[2] = 0xc0 | (tmp1_reg_ind << 3) | tmp1_reg_ind; -sljit_emit_op_custom(compiler, instruction, 3); - -OP2(SLJIT_ADD, TMP1, 0, TMP1, 0, STR_PTR, 0); -add_jump(compiler, ¬_found, CMP(SLJIT_GREATER_EQUAL, TMP1, 0, STR_END, 0)); - -OP1(SLJIT_MOV, STR_PTR, 0, TMP3, 0); -return not_found; -} - -#ifndef _WIN64 - -static SLJIT_INLINE sljit_u32 max_fast_forward_char_pair_offset(void) -{ -#if PCRE2_CODE_UNIT_WIDTH == 8 -return 15; -#elif PCRE2_CODE_UNIT_WIDTH == 16 -return 7; -#elif PCRE2_CODE_UNIT_WIDTH == 32 -return 3; -#else -#error "Unsupported unit width" -#endif -} - -#define JIT_HAS_FAST_FORWARD_CHAR_PAIR_SIMD (sljit_has_cpu_feature(SLJIT_HAS_SSE2)) - -static void fast_forward_char_pair_simd(compiler_common *common, sljit_s32 offs1, - PCRE2_UCHAR char1a, PCRE2_UCHAR char1b, sljit_s32 offs2, PCRE2_UCHAR char2a, PCRE2_UCHAR char2b) -{ -DEFINE_COMPILER; -sse2_compare_type compare1_type = sse2_compare_match1; -sse2_compare_type compare2_type = sse2_compare_match1; -sljit_u32 bit1 = 0; -sljit_u32 bit2 = 0; -sljit_u32 diff = IN_UCHARS(offs1 - offs2); -sljit_s32 tmp1_reg_ind = sljit_get_register_index(TMP1); -sljit_s32 tmp2_reg_ind = sljit_get_register_index(TMP2); -sljit_s32 str_ptr_reg_ind = sljit_get_register_index(STR_PTR); -sljit_s32 data1_ind = 0; -sljit_s32 data2_ind = 1; -sljit_s32 tmp1_ind = 2; -sljit_s32 tmp2_ind = 3; -sljit_s32 cmp1a_ind = 4; -sljit_s32 cmp1b_ind = 5; -sljit_s32 cmp2a_ind = 6; -sljit_s32 cmp2b_ind = 7; -struct sljit_label *start; -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -struct sljit_label *restart; -#endif -struct sljit_jump *jump[2]; -sljit_u8 instruction[8]; -int i; - -SLJIT_ASSERT(common->mode == PCRE2_JIT_COMPLETE && offs1 > offs2); -SLJIT_ASSERT(diff <= IN_UCHARS(max_fast_forward_char_pair_offset())); -SLJIT_ASSERT(tmp1_reg_ind < 8 && tmp2_reg_ind == 1); - -/* Initialize. */ -if (common->match_end_ptr != 0) - { - OP1(SLJIT_MOV, TMP1, 0, SLJIT_MEM1(SLJIT_SP), common->match_end_ptr); - OP1(SLJIT_MOV, TMP3, 0, STR_END, 0); - OP2(SLJIT_ADD, TMP1, 0, TMP1, 0, SLJIT_IMM, IN_UCHARS(offs1 + 1)); - - OP2(SLJIT_SUB | SLJIT_SET_LESS, SLJIT_UNUSED, 0, TMP1, 0, STR_END, 0); - CMOV(SLJIT_LESS, STR_END, TMP1, 0); - } - -OP2(SLJIT_ADD, STR_PTR, 0, STR_PTR, 0, SLJIT_IMM, IN_UCHARS(offs1)); -add_jump(compiler, &common->failed_match, CMP(SLJIT_GREATER_EQUAL, STR_PTR, 0, STR_END, 0)); - -/* MOVD xmm, r/m32 */ -instruction[0] = 0x66; -instruction[1] = 0x0f; -instruction[2] = 0x6e; - -if (char1a == char1b) - OP1(SLJIT_MOV, TMP1, 0, SLJIT_IMM, character_to_int32(char1a)); -else - { - bit1 = char1a ^ char1b; - if (is_powerof2(bit1)) - { - compare1_type = sse2_compare_match1i; - OP1(SLJIT_MOV, TMP1, 0, SLJIT_IMM, character_to_int32(char1a | bit1)); - OP1(SLJIT_MOV, TMP2, 0, SLJIT_IMM, character_to_int32(bit1)); - } - else - { - compare1_type = sse2_compare_match2; - bit1 = 0; - OP1(SLJIT_MOV, TMP1, 0, SLJIT_IMM, character_to_int32(char1a)); - OP1(SLJIT_MOV, TMP2, 0, SLJIT_IMM, character_to_int32(char1b)); - } - } - -instruction[3] = 0xc0 | (cmp1a_ind << 3) | tmp1_reg_ind; -sljit_emit_op_custom(compiler, instruction, 4); - -if (char1a != char1b) - { - instruction[3] = 0xc0 | (cmp1b_ind << 3) | tmp2_reg_ind; - sljit_emit_op_custom(compiler, instruction, 4); - } - -if (char2a == char2b) - OP1(SLJIT_MOV, TMP1, 0, SLJIT_IMM, character_to_int32(char2a)); -else - { - bit2 = char2a ^ char2b; - if (is_powerof2(bit2)) - { - compare2_type = sse2_compare_match1i; - OP1(SLJIT_MOV, TMP1, 0, SLJIT_IMM, character_to_int32(char2a | bit2)); - OP1(SLJIT_MOV, TMP2, 0, SLJIT_IMM, character_to_int32(bit2)); - } - else - { - compare2_type = sse2_compare_match2; - bit2 = 0; - OP1(SLJIT_MOV, TMP1, 0, SLJIT_IMM, character_to_int32(char2a)); - OP1(SLJIT_MOV, TMP2, 0, SLJIT_IMM, character_to_int32(char2b)); - } - } - -instruction[3] = 0xc0 | (cmp2a_ind << 3) | tmp1_reg_ind; -sljit_emit_op_custom(compiler, instruction, 4); - -if (char2a != char2b) - { - instruction[3] = 0xc0 | (cmp2b_ind << 3) | tmp2_reg_ind; - sljit_emit_op_custom(compiler, instruction, 4); - } - -/* PSHUFD xmm1, xmm2/m128, imm8 */ -/* instruction[0] = 0x66; */ -/* instruction[1] = 0x0f; */ -instruction[2] = 0x70; -instruction[4] = 0; - -instruction[3] = 0xc0 | (cmp1a_ind << 3) | cmp1a_ind; -sljit_emit_op_custom(compiler, instruction, 5); - -if (char1a != char1b) - { - instruction[3] = 0xc0 | (cmp1b_ind << 3) | cmp1b_ind; - sljit_emit_op_custom(compiler, instruction, 5); - } - -instruction[3] = 0xc0 | (cmp2a_ind << 3) | cmp2a_ind; -sljit_emit_op_custom(compiler, instruction, 5); - -if (char2a != char2b) - { - instruction[3] = 0xc0 | (cmp2b_ind << 3) | cmp2b_ind; - sljit_emit_op_custom(compiler, instruction, 5); - } - -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -restart = LABEL(); -#endif - -OP2(SLJIT_SUB, TMP1, 0, STR_PTR, 0, SLJIT_IMM, diff); -OP1(SLJIT_MOV, TMP2, 0, STR_PTR, 0); -OP2(SLJIT_AND, STR_PTR, 0, STR_PTR, 0, SLJIT_IMM, ~0xf); - -load_from_mem_sse2(compiler, data1_ind, str_ptr_reg_ind, 0); - -jump[0] = CMP(SLJIT_GREATER_EQUAL, TMP1, 0, STR_PTR, 0); - -load_from_mem_sse2(compiler, data2_ind, str_ptr_reg_ind, -(sljit_s8)diff); -jump[1] = JUMP(SLJIT_JUMP); - -JUMPHERE(jump[0]); - -/* MOVDQA xmm1, xmm2/m128 */ -/* instruction[0] = 0x66; */ -/* instruction[1] = 0x0f; */ -instruction[2] = 0x6f; -instruction[3] = 0xc0 | (data2_ind << 3) | data1_ind; -sljit_emit_op_custom(compiler, instruction, 4); - -/* PSLLDQ xmm1, imm8 */ -/* instruction[0] = 0x66; */ -/* instruction[1] = 0x0f; */ -instruction[2] = 0x73; -instruction[3] = 0xc0 | (7 << 3) | data2_ind; -instruction[4] = diff; -sljit_emit_op_custom(compiler, instruction, 5); - -JUMPHERE(jump[1]); - -OP2(SLJIT_AND, TMP2, 0, TMP2, 0, SLJIT_IMM, 0xf); - -for (i = 0; i < 4; i++) - { - fast_forward_char_pair_sse2_compare(compiler, compare2_type, i, data2_ind, cmp2a_ind, cmp2b_ind, tmp2_ind); - fast_forward_char_pair_sse2_compare(compiler, compare1_type, i, data1_ind, cmp1a_ind, cmp1b_ind, tmp1_ind); - } - -/* PAND xmm1, xmm2/m128 */ -/* instruction[0] = 0x66; */ -/* instruction[1] = 0x0f; */ -instruction[2] = 0xdb; -instruction[3] = 0xc0 | (data1_ind << 3) | data2_ind; -sljit_emit_op_custom(compiler, instruction, 4); - -/* PMOVMSKB reg, xmm */ -/* instruction[0] = 0x66; */ -/* instruction[1] = 0x0f; */ -instruction[2] = 0xd7; -instruction[3] = 0xc0 | (tmp1_reg_ind << 3) | 0; -sljit_emit_op_custom(compiler, instruction, 4); - -/* Ignore matches before the first STR_PTR. */ -OP2(SLJIT_ADD, STR_PTR, 0, STR_PTR, 0, TMP2, 0); -OP2(SLJIT_LSHR, TMP1, 0, TMP1, 0, TMP2, 0); - -jump[0] = CMP(SLJIT_NOT_ZERO, TMP1, 0, SLJIT_IMM, 0); - -OP2(SLJIT_SUB, STR_PTR, 0, STR_PTR, 0, TMP2, 0); - -/* Main loop. */ -start = LABEL(); - -OP2(SLJIT_ADD, STR_PTR, 0, STR_PTR, 0, SLJIT_IMM, 16); -add_jump(compiler, &common->failed_match, CMP(SLJIT_GREATER_EQUAL, STR_PTR, 0, STR_END, 0)); - -load_from_mem_sse2(compiler, data1_ind, str_ptr_reg_ind, 0); -load_from_mem_sse2(compiler, data2_ind, str_ptr_reg_ind, -(sljit_s8)diff); - -for (i = 0; i < 4; i++) - { - fast_forward_char_pair_sse2_compare(compiler, compare1_type, i, data1_ind, cmp1a_ind, cmp1b_ind, tmp2_ind); - fast_forward_char_pair_sse2_compare(compiler, compare2_type, i, data2_ind, cmp2a_ind, cmp2b_ind, tmp1_ind); - } - -/* PAND xmm1, xmm2/m128 */ -/* instruction[0] = 0x66; */ -/* instruction[1] = 0x0f; */ -instruction[2] = 0xdb; -instruction[3] = 0xc0 | (data1_ind << 3) | data2_ind; -sljit_emit_op_custom(compiler, instruction, 4); - -/* PMOVMSKB reg, xmm */ -/* instruction[0] = 0x66; */ -/* instruction[1] = 0x0f; */ -instruction[2] = 0xd7; -instruction[3] = 0xc0 | (tmp1_reg_ind << 3) | 0; -sljit_emit_op_custom(compiler, instruction, 4); - -CMPTO(SLJIT_ZERO, TMP1, 0, SLJIT_IMM, 0, start); - -JUMPHERE(jump[0]); - -/* BSF r32, r/m32 */ -instruction[0] = 0x0f; -instruction[1] = 0xbc; -instruction[2] = 0xc0 | (tmp1_reg_ind << 3) | tmp1_reg_ind; -sljit_emit_op_custom(compiler, instruction, 3); - -OP2(SLJIT_ADD, STR_PTR, 0, STR_PTR, 0, TMP1, 0); - -add_jump(compiler, &common->failed_match, CMP(SLJIT_GREATER_EQUAL, STR_PTR, 0, STR_END, 0)); - -if (common->match_end_ptr != 0) - OP1(SLJIT_MOV, STR_END, 0, SLJIT_MEM1(SLJIT_SP), common->match_end_ptr); - -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -if (common->utf) - { - OP1(MOV_UCHAR, TMP1, 0, SLJIT_MEM1(STR_PTR), IN_UCHARS(-offs1)); - - jump[0] = jump_if_utf_char_start(compiler, TMP1); - - OP2(SLJIT_ADD, STR_PTR, 0, STR_PTR, 0, SLJIT_IMM, IN_UCHARS(1)); - CMPTO(SLJIT_LESS, STR_PTR, 0, STR_END, 0, restart); - - add_jump(compiler, &common->failed_match, JUMP(SLJIT_JUMP)); - - JUMPHERE(jump[0]); - } -#endif - -OP2(SLJIT_SUB, STR_PTR, 0, STR_PTR, 0, SLJIT_IMM, IN_UCHARS(offs1)); - -if (common->match_end_ptr != 0) - OP1(SLJIT_MOV, STR_END, 0, TMP3, 0); -} - -#endif /* !_WIN64 */ - -#undef SSE2_COMPARE_TYPE_INDEX - -#endif /* SLJIT_CONFIG_X86 && !SUPPORT_VALGRIND */ - -#if (defined SLJIT_CONFIG_ARM_64 && SLJIT_CONFIG_ARM_64 && (defined __ARM_NEON || defined __ARM_NEON__)) - -#include - -typedef union { - unsigned int x; - struct { unsigned char c1, c2, c3, c4; } c; -} int_char; - -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -static SLJIT_INLINE int utf_continue(sljit_u8 *s) -{ -#if PCRE2_CODE_UNIT_WIDTH == 8 -return (*s & 0xc0) == 0x80; -#elif PCRE2_CODE_UNIT_WIDTH == 16 -return (*s & 0xfc00) == 0xdc00; -#else -#error "Unknown code width" -#endif -} -#endif /* SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 */ - -#if PCRE2_CODE_UNIT_WIDTH == 8 -# define VECTOR_FACTOR 16 -# define vect_t uint8x16_t -# define VLD1Q(X) vld1q_u8((sljit_u8 *)(X)) -# define VCEQQ vceqq_u8 -# define VORRQ vorrq_u8 -# define VST1Q vst1q_u8 -# define VDUPQ vdupq_n_u8 -# define VEXTQ vextq_u8 -# define VANDQ vandq_u8 -typedef union { - uint8_t mem[16]; - uint64_t dw[2]; -} quad_word; -#elif PCRE2_CODE_UNIT_WIDTH == 16 -# define VECTOR_FACTOR 8 -# define vect_t uint16x8_t -# define VLD1Q(X) vld1q_u16((sljit_u16 *)(X)) -# define VCEQQ vceqq_u16 -# define VORRQ vorrq_u16 -# define VST1Q vst1q_u16 -# define VDUPQ vdupq_n_u16 -# define VEXTQ vextq_u16 -# define VANDQ vandq_u16 -typedef union { - uint16_t mem[8]; - uint64_t dw[2]; -} quad_word; -#else -# define VECTOR_FACTOR 4 -# define vect_t uint32x4_t -# define VLD1Q(X) vld1q_u32((sljit_u32 *)(X)) -# define VCEQQ vceqq_u32 -# define VORRQ vorrq_u32 -# define VST1Q vst1q_u32 -# define VDUPQ vdupq_n_u32 -# define VEXTQ vextq_u32 -# define VANDQ vandq_u32 -typedef union { - uint32_t mem[4]; - uint64_t dw[2]; -} quad_word; -#endif - -#define FFCS -#include "pcre2_jit_neon_inc.h" -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -# define FF_UTF -# include "pcre2_jit_neon_inc.h" -# undef FF_UTF -#endif -#undef FFCS - -#define FFCS_2 -#include "pcre2_jit_neon_inc.h" -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -# define FF_UTF -# include "pcre2_jit_neon_inc.h" -# undef FF_UTF -#endif -#undef FFCS_2 - -#define FFCS_MASK -#include "pcre2_jit_neon_inc.h" -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -# define FF_UTF -# include "pcre2_jit_neon_inc.h" -# undef FF_UTF -#endif -#undef FFCS_MASK - -#define JIT_HAS_FAST_FORWARD_CHAR_SIMD 1 - -static void fast_forward_char_simd(compiler_common *common, PCRE2_UCHAR char1, PCRE2_UCHAR char2, sljit_s32 offset) -{ -DEFINE_COMPILER; -int_char ic; -struct sljit_jump *partial_quit; -/* Save temporary registers. */ -OP1(SLJIT_MOV, SLJIT_MEM1(SLJIT_SP), LOCALS0, STR_PTR, 0); -OP1(SLJIT_MOV, SLJIT_MEM1(SLJIT_SP), LOCALS1, TMP3, 0); - -/* Prepare function arguments */ -OP1(SLJIT_MOV, SLJIT_R0, 0, STR_END, 0); -OP1(SLJIT_MOV, SLJIT_R1, 0, STR_PTR, 0); -OP1(SLJIT_MOV, SLJIT_R2, 0, SLJIT_IMM, offset); - -if (char1 == char2) - { - ic.c.c1 = char1; - ic.c.c2 = char2; - OP1(SLJIT_MOV, SLJIT_R4, 0, SLJIT_IMM, ic.x); - -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 - if (common->utf && offset > 0) - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(UW) | SLJIT_ARG3(UW) | SLJIT_ARG4(UW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcs_utf)); - else - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(UW) | SLJIT_ARG3(UW) | SLJIT_ARG4(UW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcs)); -#else - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(UW) | SLJIT_ARG3(UW) | SLJIT_ARG4(UW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcs)); -#endif - } -else - { - PCRE2_UCHAR mask = char1 ^ char2; - if (is_powerof2(mask)) - { - ic.c.c1 = char1 | mask; - ic.c.c2 = mask; - OP1(SLJIT_MOV, SLJIT_R4, 0, SLJIT_IMM, ic.x); - -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 - if (common->utf && offset > 0) - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(UW) | SLJIT_ARG3(UW) | SLJIT_ARG4(UW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcs_mask_utf)); - else - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(UW) | SLJIT_ARG3(UW) | SLJIT_ARG4(UW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcs_mask)); -#else - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(UW) | SLJIT_ARG3(UW) | SLJIT_ARG4(UW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcs_mask)); -#endif - } - else - { - ic.c.c1 = char1; - ic.c.c2 = char2; - OP1(SLJIT_MOV, SLJIT_R4, 0, SLJIT_IMM, ic.x); - -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 - if (common->utf && offset > 0) - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(UW) | SLJIT_ARG3(UW) | SLJIT_ARG4(UW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcs_2_utf)); - else - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(UW) | SLJIT_ARG3(UW) | SLJIT_ARG4(UW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcs_2)); -#else - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(UW) | SLJIT_ARG3(UW) | SLJIT_ARG4(UW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcs_2)); -#endif - } - } -/* Restore registers. */ -OP1(SLJIT_MOV, STR_PTR, 0, SLJIT_MEM1(SLJIT_SP), LOCALS0); -OP1(SLJIT_MOV, TMP3, 0, SLJIT_MEM1(SLJIT_SP), LOCALS1); - -/* Check return value. */ -partial_quit = CMP(SLJIT_EQUAL, SLJIT_RETURN_REG, 0, SLJIT_IMM, 0); -if (common->mode == PCRE2_JIT_COMPLETE) - add_jump(compiler, &common->failed_match, partial_quit); - -/* Fast forward STR_PTR to the result of memchr. */ -OP1(SLJIT_MOV, STR_PTR, 0, SLJIT_RETURN_REG, 0); - -if (common->mode != PCRE2_JIT_COMPLETE) - JUMPHERE(partial_quit); -} - -typedef enum { - compare_match1, - compare_match1i, - compare_match2, -} compare_type; - -static inline vect_t fast_forward_char_pair_compare(compare_type ctype, vect_t dst, vect_t cmp1, vect_t cmp2) -{ -if (ctype == compare_match2) - { - vect_t tmp = dst; - dst = VCEQQ(dst, cmp1); - tmp = VCEQQ(tmp, cmp2); - dst = VORRQ(dst, tmp); - return dst; - } - -if (ctype == compare_match1i) - dst = VORRQ(dst, cmp2); -dst = VCEQQ(dst, cmp1); -return dst; -} - -static SLJIT_INLINE sljit_u32 max_fast_forward_char_pair_offset(void) -{ -#if PCRE2_CODE_UNIT_WIDTH == 8 -return 15; -#elif PCRE2_CODE_UNIT_WIDTH == 16 -return 7; -#elif PCRE2_CODE_UNIT_WIDTH == 32 -return 3; -#else -#error "Unsupported unit width" -#endif -} - -/* ARM doesn't have a shift left across lanes. */ -static SLJIT_INLINE vect_t shift_left_n_lanes(vect_t a, sljit_u8 n) -{ -vect_t zero = VDUPQ(0); -SLJIT_ASSERT(0 < n && n < VECTOR_FACTOR); -/* VEXTQ takes an immediate as last argument. */ -#define C(X) case X: return VEXTQ(zero, a, VECTOR_FACTOR - X); -switch (n) - { - C(1); C(2); C(3); -#if PCRE2_CODE_UNIT_WIDTH != 32 - C(4); C(5); C(6); C(7); -# if PCRE2_CODE_UNIT_WIDTH != 16 - C(8); C(9); C(10); C(11); C(12); C(13); C(14); C(15); -# endif -#endif - default: - /* Based on the ASSERT(0 < n && n < VECTOR_FACTOR) above, this won't - happen. The return is still here for compilers to not warn. */ - return a; - } -} - -#define FFCPS -#define FFCPS_DIFF1 -#define FFCPS_CHAR1A2A - -#define FFCPS_0 -#include "pcre2_jit_neon_inc.h" -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -# define FF_UTF -# include "pcre2_jit_neon_inc.h" -# undef FF_UTF -#endif -#undef FFCPS_0 - -#undef FFCPS_CHAR1A2A - -#define FFCPS_1 -#include "pcre2_jit_neon_inc.h" -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -# define FF_UTF -# include "pcre2_jit_neon_inc.h" -# undef FF_UTF -#endif -#undef FFCPS_1 - -#undef FFCPS_DIFF1 - -#define FFCPS_DEFAULT -#include "pcre2_jit_neon_inc.h" -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 -# define FF_UTF -# include "pcre2_jit_neon_inc.h" -# undef FF_UTF -#endif -#undef FFCPS - -#define JIT_HAS_FAST_FORWARD_CHAR_PAIR_SIMD 1 - -static void fast_forward_char_pair_simd(compiler_common *common, sljit_s32 offs1, - PCRE2_UCHAR char1a, PCRE2_UCHAR char1b, sljit_s32 offs2, PCRE2_UCHAR char2a, PCRE2_UCHAR char2b) -{ -DEFINE_COMPILER; -sljit_u32 diff = IN_UCHARS(offs1 - offs2); -struct sljit_jump *partial_quit; -int_char ic; -SLJIT_ASSERT(common->mode == PCRE2_JIT_COMPLETE && offs1 > offs2); -SLJIT_ASSERT(diff <= IN_UCHARS(max_fast_forward_char_pair_offset())); -SLJIT_ASSERT(compiler->scratches == 5); - -/* Save temporary register STR_PTR. */ -OP1(SLJIT_MOV, SLJIT_MEM1(SLJIT_SP), LOCALS0, STR_PTR, 0); - -/* Prepare arguments for the function call. */ -if (common->match_end_ptr == 0) - OP1(SLJIT_MOV, SLJIT_R0, 0, STR_END, 0); -else - { - OP1(SLJIT_MOV, SLJIT_R0, 0, SLJIT_MEM1(SLJIT_SP), common->match_end_ptr); - OP2(SLJIT_ADD, SLJIT_R0, 0, SLJIT_R0, 0, SLJIT_IMM, IN_UCHARS(offs1 + 1)); - - OP2(SLJIT_SUB | SLJIT_SET_LESS, SLJIT_UNUSED, 0, STR_END, 0, SLJIT_R0, 0); - CMOV(SLJIT_LESS, SLJIT_R0, STR_END, 0); - } - -OP1(SLJIT_MOV, SLJIT_R1, 0, STR_PTR, 0); -OP1(SLJIT_MOV_S32, SLJIT_R2, 0, SLJIT_IMM, offs1); -OP1(SLJIT_MOV_S32, SLJIT_R3, 0, SLJIT_IMM, offs2); -ic.c.c1 = char1a; -ic.c.c2 = char1b; -ic.c.c3 = char2a; -ic.c.c4 = char2b; -OP1(SLJIT_MOV_U32, SLJIT_R4, 0, SLJIT_IMM, ic.x); - -if (diff == 1) { - if (char1a == char1b && char2a == char2b) { -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 - if (common->utf) - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(SW) | SLJIT_ARG3(SW) | SLJIT_ARG4(SW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcps_0_utf)); - else -#endif - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(SW) | SLJIT_ARG3(SW) | SLJIT_ARG4(SW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcps_0)); - } else { -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 - if (common->utf) - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(SW) | SLJIT_ARG3(SW) | SLJIT_ARG4(SW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcps_1_utf)); - else -#endif - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(SW) | SLJIT_ARG3(SW) | SLJIT_ARG4(SW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcps_1)); - } -} else { -#if defined SUPPORT_UNICODE && PCRE2_CODE_UNIT_WIDTH != 32 - if (common->utf) - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(SW) | SLJIT_ARG3(SW) | SLJIT_ARG4(SW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcps_default_utf)); - else -#endif - sljit_emit_icall(compiler, SLJIT_CALL, SLJIT_RET(SW) | SLJIT_ARG1(SW) | SLJIT_ARG2(SW) | SLJIT_ARG3(SW) | SLJIT_ARG4(SW), - SLJIT_IMM, SLJIT_FUNC_OFFSET(ffcps_default)); -} - -/* Restore STR_PTR register. */ -OP1(SLJIT_MOV, STR_PTR, 0, SLJIT_MEM1(SLJIT_SP), LOCALS0); - -/* Check return value. */ -partial_quit = CMP(SLJIT_EQUAL, SLJIT_RETURN_REG, 0, SLJIT_IMM, 0); -add_jump(compiler, &common->failed_match, partial_quit); - -/* Fast forward STR_PTR to the result of memchr. */ -OP1(SLJIT_MOV, STR_PTR, 0, SLJIT_RETURN_REG, 0); - -JUMPHERE(partial_quit); -} - -#endif /* SLJIT_CONFIG_ARM_64 && SLJIT_CONFIG_ARM_64 */ diff --git a/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_ucp.h b/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_ucp.h deleted file mode 100644 index 9538062..0000000 --- a/7.4.27/mac/include/php/ext/pcre/pcre2lib/pcre2_ucp.h +++ /dev/null @@ -1,299 +0,0 @@ -/************************************************* -* Perl-Compatible Regular Expressions * -*************************************************/ - -/* PCRE is a library of functions to support regular expressions whose syntax -and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel - Original API code Copyright (c) 1997-2012 University of Cambridge - New API code Copyright (c) 2016-2018 University of Cambridge - ------------------------------------------------------------------------------ -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - - * Redistributions of source code must retain the above copyright notice, - this list of conditions and the following disclaimer. - - * Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - - * Neither the name of the University of Cambridge nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE -LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -POSSIBILITY OF SUCH DAMAGE. ------------------------------------------------------------------------------ -*/ - - -#ifndef PCRE2_UCP_H_IDEMPOTENT_GUARD -#define PCRE2_UCP_H_IDEMPOTENT_GUARD - -/* This file contains definitions of the property values that are returned by -the UCD access macros. New values that are added for new releases of Unicode -should always be at the end of each enum, for backwards compatibility. - -IMPORTANT: Note also that the specific numeric values of the enums have to be -the same as the values that are generated by the maint/MultiStage2.py script, -where the equivalent property descriptive names are listed in vectors. - -ALSO: The specific values of the first two enums are assumed for the table -called catposstab in pcre2_compile.c. */ - -/* These are the general character categories. */ - -enum { - ucp_C, /* Other */ - ucp_L, /* Letter */ - ucp_M, /* Mark */ - ucp_N, /* Number */ - ucp_P, /* Punctuation */ - ucp_S, /* Symbol */ - ucp_Z /* Separator */ -}; - -/* These are the particular character categories. */ - -enum { - ucp_Cc, /* Control */ - ucp_Cf, /* Format */ - ucp_Cn, /* Unassigned */ - ucp_Co, /* Private use */ - ucp_Cs, /* Surrogate */ - ucp_Ll, /* Lower case letter */ - ucp_Lm, /* Modifier letter */ - ucp_Lo, /* Other letter */ - ucp_Lt, /* Title case letter */ - ucp_Lu, /* Upper case letter */ - ucp_Mc, /* Spacing mark */ - ucp_Me, /* Enclosing mark */ - ucp_Mn, /* Non-spacing mark */ - ucp_Nd, /* Decimal number */ - ucp_Nl, /* Letter number */ - ucp_No, /* Other number */ - ucp_Pc, /* Connector punctuation */ - ucp_Pd, /* Dash punctuation */ - ucp_Pe, /* Close punctuation */ - ucp_Pf, /* Final punctuation */ - ucp_Pi, /* Initial punctuation */ - ucp_Po, /* Other punctuation */ - ucp_Ps, /* Open punctuation */ - ucp_Sc, /* Currency symbol */ - ucp_Sk, /* Modifier symbol */ - ucp_Sm, /* Mathematical symbol */ - ucp_So, /* Other symbol */ - ucp_Zl, /* Line separator */ - ucp_Zp, /* Paragraph separator */ - ucp_Zs /* Space separator */ -}; - -/* These are grapheme break properties. The Extended Pictographic property -comes from the emoji-data.txt file. */ - -enum { - ucp_gbCR, /* 0 */ - ucp_gbLF, /* 1 */ - ucp_gbControl, /* 2 */ - ucp_gbExtend, /* 3 */ - ucp_gbPrepend, /* 4 */ - ucp_gbSpacingMark, /* 5 */ - ucp_gbL, /* 6 Hangul syllable type L */ - ucp_gbV, /* 7 Hangul syllable type V */ - ucp_gbT, /* 8 Hangul syllable type T */ - ucp_gbLV, /* 9 Hangul syllable type LV */ - ucp_gbLVT, /* 10 Hangul syllable type LVT */ - ucp_gbRegionalIndicator, /* 11 */ - ucp_gbOther, /* 12 */ - ucp_gbZWJ, /* 13 */ - ucp_gbExtended_Pictographic /* 14 */ -}; - -/* These are the script identifications. */ - -enum { - ucp_Unknown, - ucp_Arabic, - ucp_Armenian, - ucp_Bengali, - ucp_Bopomofo, - ucp_Braille, - ucp_Buginese, - ucp_Buhid, - ucp_Canadian_Aboriginal, - ucp_Cherokee, - ucp_Common, - ucp_Coptic, - ucp_Cypriot, - ucp_Cyrillic, - ucp_Deseret, - ucp_Devanagari, - ucp_Ethiopic, - ucp_Georgian, - ucp_Glagolitic, - ucp_Gothic, - ucp_Greek, - ucp_Gujarati, - ucp_Gurmukhi, - ucp_Han, - ucp_Hangul, - ucp_Hanunoo, - ucp_Hebrew, - ucp_Hiragana, - ucp_Inherited, - ucp_Kannada, - ucp_Katakana, - ucp_Kharoshthi, - ucp_Khmer, - ucp_Lao, - ucp_Latin, - ucp_Limbu, - ucp_Linear_B, - ucp_Malayalam, - ucp_Mongolian, - ucp_Myanmar, - ucp_New_Tai_Lue, - ucp_Ogham, - ucp_Old_Italic, - ucp_Old_Persian, - ucp_Oriya, - ucp_Osmanya, - ucp_Runic, - ucp_Shavian, - ucp_Sinhala, - ucp_Syloti_Nagri, - ucp_Syriac, - ucp_Tagalog, - ucp_Tagbanwa, - ucp_Tai_Le, - ucp_Tamil, - ucp_Telugu, - ucp_Thaana, - ucp_Thai, - ucp_Tibetan, - ucp_Tifinagh, - ucp_Ugaritic, - ucp_Yi, - /* New for Unicode 5.0 */ - ucp_Balinese, - ucp_Cuneiform, - ucp_Nko, - ucp_Phags_Pa, - ucp_Phoenician, - /* New for Unicode 5.1 */ - ucp_Carian, - ucp_Cham, - ucp_Kayah_Li, - ucp_Lepcha, - ucp_Lycian, - ucp_Lydian, - ucp_Ol_Chiki, - ucp_Rejang, - ucp_Saurashtra, - ucp_Sundanese, - ucp_Vai, - /* New for Unicode 5.2 */ - ucp_Avestan, - ucp_Bamum, - ucp_Egyptian_Hieroglyphs, - ucp_Imperial_Aramaic, - ucp_Inscriptional_Pahlavi, - ucp_Inscriptional_Parthian, - ucp_Javanese, - ucp_Kaithi, - ucp_Lisu, - ucp_Meetei_Mayek, - ucp_Old_South_Arabian, - ucp_Old_Turkic, - ucp_Samaritan, - ucp_Tai_Tham, - ucp_Tai_Viet, - /* New for Unicode 6.0.0 */ - ucp_Batak, - ucp_Brahmi, - ucp_Mandaic, - /* New for Unicode 6.1.0 */ - ucp_Chakma, - ucp_Meroitic_Cursive, - ucp_Meroitic_Hieroglyphs, - ucp_Miao, - ucp_Sharada, - ucp_Sora_Sompeng, - ucp_Takri, - /* New for Unicode 7.0.0 */ - ucp_Bassa_Vah, - ucp_Caucasian_Albanian, - ucp_Duployan, - ucp_Elbasan, - ucp_Grantha, - ucp_Khojki, - ucp_Khudawadi, - ucp_Linear_A, - ucp_Mahajani, - ucp_Manichaean, - ucp_Mende_Kikakui, - ucp_Modi, - ucp_Mro, - ucp_Nabataean, - ucp_Old_North_Arabian, - ucp_Old_Permic, - ucp_Pahawh_Hmong, - ucp_Palmyrene, - ucp_Psalter_Pahlavi, - ucp_Pau_Cin_Hau, - ucp_Siddham, - ucp_Tirhuta, - ucp_Warang_Citi, - /* New for Unicode 8.0.0 */ - ucp_Ahom, - ucp_Anatolian_Hieroglyphs, - ucp_Hatran, - ucp_Multani, - ucp_Old_Hungarian, - ucp_SignWriting, - /* New for Unicode 10.0.0 (no update since 8.0.0) */ - ucp_Adlam, - ucp_Bhaiksuki, - ucp_Marchen, - ucp_Newa, - ucp_Osage, - ucp_Tangut, - ucp_Masaram_Gondi, - ucp_Nushu, - ucp_Soyombo, - ucp_Zanabazar_Square, - /* New for Unicode 11.0.0 */ - ucp_Dogra, - ucp_Gunjala_Gondi, - ucp_Hanifi_Rohingya, - ucp_Makasar, - ucp_Medefaidrin, - ucp_Old_Sogdian, - ucp_Sogdian, - /* New for Unicode 12.0.0 */ - ucp_Elymaic, - ucp_Nandinagari, - ucp_Nyiakeng_Puachue_Hmong, - ucp_Wancho, - /* New for Unicode 13.0.0 */ - ucp_Chorasmian, - ucp_Dives_Akuru, - ucp_Khitan_Small_Script, - ucp_Yezidi -}; - -#endif /* PCRE2_UCP_H_IDEMPOTENT_GUARD */ - -/* End of pcre2_ucp.h */ diff --git a/7.4.27/mac/include/php/ext/pcre/php_pcre.h b/7.4.27/mac/include/php/ext/pcre/php_pcre.h deleted file mode 100644 index b375981..0000000 --- a/7.4.27/mac/include/php/ext/pcre/php_pcre.h +++ /dev/null @@ -1,86 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Andrei Zmievski | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_PCRE_H -#define PHP_PCRE_H - -#if HAVE_BUNDLED_PCRE -#include "pcre2lib/pcre2.h" -#else -#include "pcre2.h" -#endif - -#include - -PHPAPI zend_string *php_pcre_replace(zend_string *regex, zend_string *subject_str, char *subject, size_t subject_len, zend_string *replace_str, size_t limit, size_t *replace_count); -PHPAPI pcre2_code* pcre_get_compiled_regex(zend_string *regex, uint32_t *capture_count); -PHPAPI pcre2_code* pcre_get_compiled_regex_ex(zend_string *regex, uint32_t *capture_count, uint32_t *preg_options, uint32_t *coptions); - -extern zend_module_entry pcre_module_entry; -#define pcre_module_ptr &pcre_module_entry - -#include "php_version.h" -#define PHP_PCRE_VERSION PHP_VERSION - -typedef struct _pcre_cache_entry pcre_cache_entry; - -PHPAPI pcre_cache_entry* pcre_get_compiled_regex_cache(zend_string *regex); -PHPAPI pcre_cache_entry* pcre_get_compiled_regex_cache_ex(zend_string *regex, int locale_aware); - -PHPAPI void php_pcre_match_impl(pcre_cache_entry *pce, zend_string *subject_str, zval *return_value, - zval *subpats, int global, int use_flags, zend_long flags, zend_off_t start_offset); - -PHPAPI zend_string *php_pcre_replace_impl(pcre_cache_entry *pce, zend_string *subject_str, char *subject, size_t subject_len, zend_string *replace_str, - size_t limit, size_t *replace_count); - -PHPAPI void php_pcre_split_impl( pcre_cache_entry *pce, zend_string *subject_str, zval *return_value, - zend_long limit_val, zend_long flags); - -PHPAPI void php_pcre_grep_impl( pcre_cache_entry *pce, zval *input, zval *return_value, - zend_long flags); - -PHPAPI pcre2_match_context *php_pcre_mctx(void); -PHPAPI pcre2_general_context *php_pcre_gctx(void); -PHPAPI pcre2_compile_context *php_pcre_cctx(void); -PHPAPI void php_pcre_pce_incref(pcre_cache_entry *); -PHPAPI void php_pcre_pce_decref(pcre_cache_entry *); -PHPAPI pcre2_code *php_pcre_pce_re(pcre_cache_entry *); -/* capture_count can be ignored, re is required. */ -PHPAPI pcre2_match_data *php_pcre_create_match_data(uint32_t, pcre2_code *); -PHPAPI void php_pcre_free_match_data(pcre2_match_data *); - -ZEND_BEGIN_MODULE_GLOBALS(pcre) - HashTable pcre_cache; - zend_long backtrack_limit; - zend_long recursion_limit; -#ifdef HAVE_PCRE_JIT_SUPPORT - zend_bool jit; -#endif - zend_bool per_request_cache; - int error_code; - /* Used for unmatched subpatterns in OFFSET_CAPTURE mode */ - zval unmatched_null_pair; - zval unmatched_empty_pair; -ZEND_END_MODULE_GLOBALS(pcre) - -PHPAPI ZEND_EXTERN_MODULE_GLOBALS(pcre) -#define PCRE_G(v) ZEND_MODULE_GLOBALS_ACCESSOR(pcre, v) - -#define phpext_pcre_ptr pcre_module_ptr - -#endif /* PHP_PCRE_H */ diff --git a/7.4.27/mac/include/php/ext/pdo/php_pdo.h b/7.4.27/mac/include/php/ext/pdo/php_pdo.h deleted file mode 100644 index 27c9c98..0000000 --- a/7.4.27/mac/include/php/ext/pdo/php_pdo.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Wez Furlong | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_PDO_H -#define PHP_PDO_H - -#include "zend.h" - -extern zend_module_entry pdo_module_entry; -#define phpext_pdo_ptr &pdo_module_entry - -#include "php_version.h" -#define PHP_PDO_VERSION PHP_VERSION - -#ifdef PHP_WIN32 -# if defined(PDO_EXPORTS) || (!defined(COMPILE_DL_PDO)) -# define PDO_API __declspec(dllexport) -# elif defined(COMPILE_DL_PDO) -# define PDO_API __declspec(dllimport) -# else -# define PDO_API /* nothing special */ -# endif -#elif defined(__GNUC__) && __GNUC__ >= 4 -# define PDO_API __attribute__ ((visibility("default"))) -#else -# define PDO_API /* nothing special */ -#endif - -#ifdef ZTS -# include "TSRM.h" -#endif - -PHP_MINIT_FUNCTION(pdo); -PHP_MSHUTDOWN_FUNCTION(pdo); -PHP_MINFO_FUNCTION(pdo); - -#define REGISTER_PDO_CLASS_CONST_LONG(const_name, value) \ - zend_declare_class_constant_long(php_pdo_get_dbh_ce(), const_name, sizeof(const_name)-1, (zend_long)value); - -#define REGISTER_PDO_CLASS_CONST_STRING(const_name, value) \ - zend_declare_class_constant_stringl(php_pdo_get_dbh_ce(), const_name, sizeof(const_name)-1, value, sizeof(value)-1); - -#define PDO_CONSTRUCT_CHECK \ - if (!dbh->driver) { \ - pdo_raise_impl_error(dbh, NULL, "00000", "PDO constructor was not called"); \ - return; \ - } \ - - -#endif /* PHP_PDO_H */ diff --git a/7.4.27/mac/include/php/ext/pdo/php_pdo_driver.h b/7.4.27/mac/include/php/ext/pdo/php_pdo_driver.h deleted file mode 100644 index aaf3cf7..0000000 --- a/7.4.27/mac/include/php/ext/pdo/php_pdo_driver.h +++ /dev/null @@ -1,698 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Wez Furlong | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_PDO_DRIVER_H -#define PHP_PDO_DRIVER_H - -#include "php_pdo.h" - -/* forward declarations */ -typedef struct _pdo_dbh_t pdo_dbh_t; -typedef struct _pdo_dbh_object_t pdo_dbh_object_t; -typedef struct _pdo_stmt_t pdo_stmt_t; -typedef struct _pdo_row_t pdo_row_t; -struct pdo_bound_param_data; - -#ifdef PHP_WIN32 -typedef __int64 pdo_int64_t; -typedef unsigned __int64 pdo_uint64_t; -#else -typedef long long int pdo_int64_t; -typedef unsigned long long int pdo_uint64_t; -#endif -PDO_API char *php_pdo_int64_to_str(pdo_int64_t i64); - -#ifndef TRUE -# define TRUE 1 -#endif -#ifndef FALSE -# define FALSE 0 -#endif - -#define PDO_DRIVER_API 20170320 - -enum pdo_param_type { - PDO_PARAM_NULL, - - /* int as in long (the php native int type). - * If you mark a column as an int, PDO expects get_col to return - * a pointer to a long */ - PDO_PARAM_INT, - - /* get_col ptr should point to start of the string buffer */ - PDO_PARAM_STR, - - /* get_col: when len is 0 ptr should point to a php_stream *, - * otherwise it should behave like a string. Indicate a NULL field - * value by setting the ptr to NULL */ - PDO_PARAM_LOB, - - /* get_col: will expect the ptr to point to a new PDOStatement object handle, - * but this isn't wired up yet */ - PDO_PARAM_STMT, /* hierarchical result set */ - - /* get_col ptr should point to a zend_bool */ - PDO_PARAM_BOOL, - - /* get_col ptr should point to a zval* - and the driver is responsible for adding correct type information to get_column_meta() - */ - PDO_PARAM_ZVAL, - - /* magic flag to denote a parameter as being input/output */ - PDO_PARAM_INPUT_OUTPUT = 0x80000000, - - /* magic flag to denote a string that uses the national character set - see section 4.2.1 of SQL-92: http://www.contrib.andrew.cmu.edu/~shadow/sql/sql1992.txt - */ - PDO_PARAM_STR_NATL = 0x40000000, - - /* magic flag to denote a string that uses the regular character set */ - PDO_PARAM_STR_CHAR = 0x20000000, -}; - -#define PDO_PARAM_FLAGS 0xFFFF0000 - -#define PDO_PARAM_TYPE(x) ((x) & ~PDO_PARAM_FLAGS) - -enum pdo_fetch_type { - PDO_FETCH_USE_DEFAULT, - PDO_FETCH_LAZY, - PDO_FETCH_ASSOC, - PDO_FETCH_NUM, - PDO_FETCH_BOTH, - PDO_FETCH_OBJ, - PDO_FETCH_BOUND, /* return true/false only; rely on bound columns */ - PDO_FETCH_COLUMN, /* fetch a numbered column only */ - PDO_FETCH_CLASS, /* create an instance of named class, call ctor and set properties */ - PDO_FETCH_INTO, /* fetch row into an existing object */ - PDO_FETCH_FUNC, /* fetch into function and return its result */ - PDO_FETCH_NAMED, /* like PDO_FETCH_ASSOC, but can handle duplicate names */ - PDO_FETCH_KEY_PAIR, /* fetch into an array where the 1st column is a key and all subsequent columns are values */ - PDO_FETCH__MAX /* must be last */ -}; - -#define PDO_FETCH_FLAGS 0xFFFF0000 /* fetchAll() modes or'd to PDO_FETCH_XYZ */ -#define PDO_FETCH_GROUP 0x00010000 /* fetch into groups */ -#define PDO_FETCH_UNIQUE 0x00030000 /* fetch into groups assuming first col is unique */ -#define PDO_FETCH_CLASSTYPE 0x00040000 /* fetch class gets its class name from 1st column */ -#define PDO_FETCH_SERIALIZE 0x00080000 /* fetch class instances by calling serialize */ -#define PDO_FETCH_PROPS_LATE 0x00100000 /* fetch props after calling ctor */ - -/* fetch orientation for scrollable cursors */ -enum pdo_fetch_orientation { - PDO_FETCH_ORI_NEXT, /* default: fetch the next available row */ - PDO_FETCH_ORI_PRIOR, /* scroll back to prior row and fetch that */ - PDO_FETCH_ORI_FIRST, /* scroll to the first row and fetch that */ - PDO_FETCH_ORI_LAST, /* scroll to the last row and fetch that */ - PDO_FETCH_ORI_ABS, /* scroll to an absolute numbered row and fetch that */ - PDO_FETCH_ORI_REL /* scroll relative to the current row, and fetch that */ -}; - -enum pdo_attribute_type { - PDO_ATTR_AUTOCOMMIT, /* use to turn on or off auto-commit mode */ - PDO_ATTR_PREFETCH, /* configure the prefetch size for drivers that support it. Size is in KB */ - PDO_ATTR_TIMEOUT, /* connection timeout in seconds */ - PDO_ATTR_ERRMODE, /* control how errors are handled */ - PDO_ATTR_SERVER_VERSION, /* database server version */ - PDO_ATTR_CLIENT_VERSION, /* client library version */ - PDO_ATTR_SERVER_INFO, /* server information */ - PDO_ATTR_CONNECTION_STATUS, /* connection status */ - PDO_ATTR_CASE, /* control case folding for portability */ - PDO_ATTR_CURSOR_NAME, /* name a cursor for use in "WHERE CURRENT OF " */ - PDO_ATTR_CURSOR, /* cursor type */ - PDO_ATTR_ORACLE_NULLS, /* convert empty strings to NULL */ - PDO_ATTR_PERSISTENT, /* pconnect style connection */ - PDO_ATTR_STATEMENT_CLASS, /* array(classname, array(ctor_args)) to specify the class of the constructed statement */ - PDO_ATTR_FETCH_TABLE_NAMES, /* include table names in the column names, where available */ - PDO_ATTR_FETCH_CATALOG_NAMES, /* include the catalog/db name names in the column names, where available */ - PDO_ATTR_DRIVER_NAME, /* name of the driver (as used in the constructor) */ - PDO_ATTR_STRINGIFY_FETCHES, /* converts integer/float types to strings during fetch */ - PDO_ATTR_MAX_COLUMN_LEN, /* make database calculate maximum length of data found in a column */ - PDO_ATTR_DEFAULT_FETCH_MODE, /* Set the default fetch mode */ - PDO_ATTR_EMULATE_PREPARES, /* use query emulation rather than native */ - PDO_ATTR_DEFAULT_STR_PARAM, /* set the default string parameter type (see the PDO::PARAM_STR_* magic flags) */ - - /* this defines the start of the range for driver specific options. - * Drivers should define their own attribute constants beginning with this - * value. */ - PDO_ATTR_DRIVER_SPECIFIC = 1000 -}; - -enum pdo_cursor_type { - PDO_CURSOR_FWDONLY, /* forward only cursor (default) */ - PDO_CURSOR_SCROLL /* scrollable cursor */ -}; - -/* SQL-92 SQLSTATE error codes. - -The character string value returned for an SQLSTATE consists of a two-character -class value followed by a three-character subclass value. A class value of 01 -indicates a warning and is accompanied by a return code of -SQL_SUCCESS_WITH_INFO. - -Class values other than '01', except for the class 'IM', -indicate an error and are accompanied by a return code of SQL_ERROR. The class -'IM' is specific to warnings and errors that derive from the implementation of -ODBC itself. - -The subclass value '000' in any class indicates that there is no -subclass for that SQLSTATE. The assignment of class and subclass values is -defined by SQL-92. -*/ - -typedef char pdo_error_type[6]; /* SQLSTATE */ - - -#define PDO_ERR_NONE "00000" - -enum pdo_error_mode { - PDO_ERRMODE_SILENT, /* just set error codes */ - PDO_ERRMODE_WARNING, /* raise E_WARNING */ - PDO_ERRMODE_EXCEPTION /* throw exceptions */ -}; - -enum pdo_case_conversion { - PDO_CASE_NATURAL, - PDO_CASE_UPPER, - PDO_CASE_LOWER -}; - -/* oracle interop settings */ -enum pdo_null_handling { - PDO_NULL_NATURAL = 0, - PDO_NULL_EMPTY_STRING = 1, - PDO_NULL_TO_STRING = 2 -}; - -/* {{{ utils for reading attributes set as driver_options */ -static inline zend_long pdo_attr_lval(zval *options, enum pdo_attribute_type option_name, zend_long defval) -{ - zval *v; - - if (options && (v = zend_hash_index_find(Z_ARRVAL_P(options), option_name))) { - return zval_get_long(v); - } - return defval; -} -static inline zend_string *pdo_attr_strval(zval *options, enum pdo_attribute_type option_name, zend_string *defval) -{ - zval *v; - - if (options && (v = zend_hash_index_find(Z_ARRVAL_P(options), option_name))) { - return zval_try_get_string(v); - } - return defval ? zend_string_copy(defval) : NULL; -} -/* }}} */ - -/* This structure is registered with PDO when a PDO driver extension is - * initialized */ -typedef struct { - const char *driver_name; - size_t driver_name_len; - zend_ulong api_version; /* needs to be compatible with PDO */ - -#define PDO_DRIVER_HEADER(name) \ - #name, sizeof(#name)-1, \ - PDO_DRIVER_API - - /* create driver specific portion of the database handle and stash it into - * the dbh. dbh contains the data source string and flags for this - * instance. You MUST respect dbh->is_persistent and pass that flag to - * pemalloc() for all allocations that are stored in the dbh or your instance - * data in the db, otherwise you will crash PHP when persistent connections - * are used. - */ - int (*db_handle_factory)(pdo_dbh_t *dbh, zval *driver_options); - -} pdo_driver_t; - -/* {{{ methods for a database handle */ - -/* close or otherwise disconnect the database */ -typedef int (*pdo_dbh_close_func)(pdo_dbh_t *dbh); - -/* prepare a statement and stash driver specific portion into stmt */ -typedef int (*pdo_dbh_prepare_func)(pdo_dbh_t *dbh, const char *sql, size_t sql_len, pdo_stmt_t *stmt, zval *driver_options); - -/* execute a statement (that does not return a result set) */ -typedef zend_long (*pdo_dbh_do_func)(pdo_dbh_t *dbh, const char *sql, size_t sql_len); - -/* quote a string */ -typedef int (*pdo_dbh_quote_func)(pdo_dbh_t *dbh, const char *unquoted, size_t unquotedlen, char **quoted, size_t *quotedlen, enum pdo_param_type paramtype); - -/* transaction related */ -typedef int (*pdo_dbh_txn_func)(pdo_dbh_t *dbh); - -/* setting of attributes */ -typedef int (*pdo_dbh_set_attr_func)(pdo_dbh_t *dbh, zend_long attr, zval *val); - -/* return last insert id. NULL indicates error condition, otherwise, the return value - * MUST be an emalloc'd NULL terminated string. */ -typedef char *(*pdo_dbh_last_id_func)(pdo_dbh_t *dbh, const char *name, size_t *len); - -/* fetch error information. if stmt is not null, fetch information pertaining - * to the statement, otherwise fetch global error information. The driver - * should add the following information to the array "info" in this order: - * - native error code - * - string representation of the error code ... any other optional driver - * specific data ... */ -typedef int (*pdo_dbh_fetch_error_func)(pdo_dbh_t *dbh, pdo_stmt_t *stmt, zval *info); - -/* fetching of attributes */ -typedef int (*pdo_dbh_get_attr_func)(pdo_dbh_t *dbh, zend_long attr, zval *val); - -/* checking/pinging persistent connections; return SUCCESS if the connection - * is still alive and ready to be used, FAILURE otherwise. - * You may set this handler to NULL, which is equivalent to returning SUCCESS. */ -typedef int (*pdo_dbh_check_liveness_func)(pdo_dbh_t *dbh); - -/* called at request end for each persistent dbh; this gives the driver - * the opportunity to safely release resources that only have per-request - * scope */ -typedef void (*pdo_dbh_request_shutdown)(pdo_dbh_t *dbh); - -/* for adding methods to the dbh or stmt objects -pointer to a list of driver specific functions. The convention is -to prefix the function names using the PDO driver name; this will -reduce the chance of collisions with future functionality in the -PDO class or in user code (they can extend the PDO object). -*/ -enum { - PDO_DBH_DRIVER_METHOD_KIND_DBH = 0, - PDO_DBH_DRIVER_METHOD_KIND_STMT, - PDO_DBH_DRIVER_METHOD_KIND__MAX -}; - -typedef const zend_function_entry *(*pdo_dbh_get_driver_methods_func)(pdo_dbh_t *dbh, int kind); - -struct pdo_dbh_methods { - pdo_dbh_close_func closer; - pdo_dbh_prepare_func preparer; - pdo_dbh_do_func doer; - pdo_dbh_quote_func quoter; - pdo_dbh_txn_func begin; - pdo_dbh_txn_func commit; - pdo_dbh_txn_func rollback; - pdo_dbh_set_attr_func set_attribute; - pdo_dbh_last_id_func last_id; - pdo_dbh_fetch_error_func fetch_err; - pdo_dbh_get_attr_func get_attribute; - pdo_dbh_check_liveness_func check_liveness; - pdo_dbh_get_driver_methods_func get_driver_methods; - pdo_dbh_request_shutdown persistent_shutdown; - pdo_dbh_txn_func in_transaction; -}; - -/* }}} */ - -/* {{{ methods for a statement handle */ - -/* free the statement handle */ -typedef int (*pdo_stmt_dtor_func)(pdo_stmt_t *stmt); - -/* start the query */ -typedef int (*pdo_stmt_execute_func)(pdo_stmt_t *stmt); - -/* causes the next row in the set to be fetched; indicates if there are no - * more rows. The ori and offset params modify which row should be returned, - * if the stmt represents a scrollable cursor */ -typedef int (*pdo_stmt_fetch_func)(pdo_stmt_t *stmt, - enum pdo_fetch_orientation ori, zend_long offset); - -/* queries information about the type of a column, by index (0 based). - * Driver should populate stmt->columns[colno] with appropriate info */ -typedef int (*pdo_stmt_describe_col_func)(pdo_stmt_t *stmt, int colno); - -/* retrieves pointer and size of the value for a column. - * Note that PDO expects the driver to manage the lifetime of this data; - * it will copy the value into a zval on behalf of the script. - * If the driver sets caller_frees, ptr should point to emalloc'd memory - * and PDO will free it as soon as it is done using it. - */ -typedef int (*pdo_stmt_get_col_data_func)(pdo_stmt_t *stmt, int colno, char **ptr, size_t *len, int *caller_frees); - -/* hook for bound params */ -enum pdo_param_event { - PDO_PARAM_EVT_ALLOC, - PDO_PARAM_EVT_FREE, - PDO_PARAM_EVT_EXEC_PRE, - PDO_PARAM_EVT_EXEC_POST, - PDO_PARAM_EVT_FETCH_PRE, - PDO_PARAM_EVT_FETCH_POST, - PDO_PARAM_EVT_NORMALIZE -}; - -typedef int (*pdo_stmt_param_hook_func)(pdo_stmt_t *stmt, struct pdo_bound_param_data *param, enum pdo_param_event event_type); - -/* setting of attributes */ -typedef int (*pdo_stmt_set_attr_func)(pdo_stmt_t *stmt, zend_long attr, zval *val); - -/* fetching of attributes */ -typedef int (*pdo_stmt_get_attr_func)(pdo_stmt_t *stmt, zend_long attr, zval *val); - -/* retrieves meta data for a numbered column. - * Returns SUCCESS/FAILURE. - * On SUCCESS, fill in return_value with an array with the following fields. - * If a particular field is not supported, then the driver simply does not add it to - * the array, so that scripts can use isset() to check for it. - * - * ### this is just a rough first cut, and subject to change ### - * - * these are added by PDO itself, based on data from the describe handler: - * name => the column name - * len => the length/size of the column - * precision => precision of the column - * pdo_type => an integer, one of the PDO_PARAM_XXX values - * - * scale => the floating point scale - * table => the table for that column - * type => a string representation of the type, mapped to the PHP equivalent type name - * native_type => a string representation of the type, native style, if different from - * the mapped name. - * flags => an array of flags including zero or more of the following: - * primary_key, not_null, unique_key, multiple_key, unsigned, auto_increment, blob - * - * Any driver specific data should be returned using a prefixed key or value. - * Eg: custom data for the mysql driver would use either - * 'mysql:foobar' => 'some data' // to add a new key to the array - * or - * 'flags' => array('not_null', 'mysql:some_flag'); // to add data to an existing key - */ -typedef int (*pdo_stmt_get_column_meta_func)(pdo_stmt_t *stmt, zend_long colno, zval *return_value); - -/* advances the statement to the next rowset of the batch. - * If it returns 1, PDO will tear down its idea of columns - * and meta data. If it returns 0, PDO will indicate an error - * to the caller. */ -typedef int (*pdo_stmt_next_rowset_func)(pdo_stmt_t *stmt); - -/* closes the active cursor on a statement, leaving the prepared - * statement ready for re-execution. Useful to explicitly state - * that you are done with a given rowset, without having to explicitly - * fetch all the rows. */ -typedef int (*pdo_stmt_cursor_closer_func)(pdo_stmt_t *stmt); - -struct pdo_stmt_methods { - pdo_stmt_dtor_func dtor; - pdo_stmt_execute_func executer; - pdo_stmt_fetch_func fetcher; - pdo_stmt_describe_col_func describer; - pdo_stmt_get_col_data_func get_col; - pdo_stmt_param_hook_func param_hook; - pdo_stmt_set_attr_func set_attribute; - pdo_stmt_get_attr_func get_attribute; - pdo_stmt_get_column_meta_func get_column_meta; - pdo_stmt_next_rowset_func next_rowset; - pdo_stmt_cursor_closer_func cursor_closer; -}; - -/* }}} */ - -enum pdo_placeholder_support { - PDO_PLACEHOLDER_NONE=0, - PDO_PLACEHOLDER_NAMED=1, - PDO_PLACEHOLDER_POSITIONAL=2 -}; - -struct _pdo_dbh_t { - /* driver specific methods */ - const struct pdo_dbh_methods *methods; - /* driver specific data */ - void *driver_data; - - /* credentials */ - char *username, *password; - - /* if true, then data stored and pointed at by this handle must all be - * persistently allocated */ - unsigned is_persistent:1; - - /* if true, driver should act as though a COMMIT were executed between - * each executed statement; otherwise, COMMIT must be carried out manually - * */ - unsigned auto_commit:1; - - /* if true, the handle has been closed and will not function anymore */ - unsigned is_closed:1; - - /* if true, the driver requires that memory be allocated explicitly for - * the columns that are returned */ - unsigned alloc_own_columns:1; - - /* if true, commit or rollBack is allowed to be called */ - unsigned in_txn:1; - - /* max length a single character can become after correct quoting */ - unsigned max_escaped_char_length:3; - - /* oracle compat; see enum pdo_null_handling */ - unsigned oracle_nulls:2; - - /* when set, convert int/floats to strings */ - unsigned stringify:1; - - /* bitmap for pdo_param_event(s) to skip in dispatch_param_event */ - unsigned skip_param_evt:7; - - /* the sum of the number of bits here and the bit fields preceding should - * equal 32 */ - unsigned _reserved_flags:14; - - /* data source string used to open this handle */ - const char *data_source; - size_t data_source_len; - - /* the global error code. */ - pdo_error_type error_code; - - enum pdo_error_mode error_mode; - - enum pdo_case_conversion native_case, desired_case; - - /* persistent hash key associated with this handle */ - const char *persistent_id; - size_t persistent_id_len; - unsigned int refcount; - - /* driver specific "class" methods for the dbh and stmt */ - HashTable *cls_methods[PDO_DBH_DRIVER_METHOD_KIND__MAX]; - - pdo_driver_t *driver; - - zend_class_entry *def_stmt_ce; - - zval def_stmt_ctor_args; - - /* when calling PDO::query(), we need to keep the error - * context from the statement around until we next clear it. - * This will allow us to report the correct error message - * when PDO::query() fails */ - pdo_stmt_t *query_stmt; - zval query_stmt_zval; - - /* defaults for fetches */ - enum pdo_fetch_type default_fetch_type; -}; - -/* represents a connection to a database */ -struct _pdo_dbh_object_t { - pdo_dbh_t *inner; - /* these items must appear in this order at the beginning of the - struct so that this can be cast as a zend_object. we need this - to allow the extending class to escape all the custom handlers - that PDO declares. - */ - zend_object std; -}; - -static inline pdo_dbh_t *php_pdo_dbh_fetch_inner(zend_object *obj) { - return (pdo_dbh_t *)(((pdo_dbh_object_t *)((char*)(obj) - XtOffsetOf(pdo_dbh_object_t, std)))->inner); -} - -static inline pdo_dbh_object_t *php_pdo_dbh_fetch_object(zend_object *obj) { - return (pdo_dbh_object_t *)((char*)(obj) - XtOffsetOf(pdo_dbh_object_t, std)); -} - -#define Z_PDO_DBH_P(zv) php_pdo_dbh_fetch_inner(Z_OBJ_P((zv))) -#define Z_PDO_OBJECT_P(zv) php_pdo_dbh_fetch_object(Z_OBJ_P((zv))) - -/* describes a column */ -struct pdo_column_data { - zend_string *name; - size_t maxlen; - zend_ulong precision; - enum pdo_param_type param_type; -}; - -/* describes a bound parameter */ -struct pdo_bound_param_data { - zval parameter; /* the variable itself */ - - zval driver_params; /* optional parameter(s) for the driver */ - - zend_long paramno; /* if -1, then it has a name, and we don't know the index *yet* */ - zend_string *name; - - zend_long max_value_len; /* as a hint for pre-allocation */ - - void *driver_data; - - pdo_stmt_t *stmt; /* for convenience in dtor */ - - enum pdo_param_type param_type; /* desired or suggested variable type */ - - int is_param; /* parameter or column ? */ -}; - -/* represents a prepared statement */ -struct _pdo_stmt_t { - /* driver specifics */ - const struct pdo_stmt_methods *methods; - void *driver_data; - - /* if true, we've already successfully executed this statement at least - * once */ - unsigned executed:1; - /* if true, the statement supports placeholders and can implement - * bindParam() for its prepared statements, if false, PDO should - * emulate prepare and bind on its behalf */ - unsigned supports_placeholders:2; - - unsigned _reserved:29; - - /* the number of columns in the result set; not valid until after - * the statement has been executed at least once. In some cases, might - * not be valid until fetch (at the driver level) has been called at least once. - * */ - int column_count; - struct pdo_column_data *columns; - - /* we want to keep the dbh alive while we live, so we own a reference */ - zval database_object_handle; - pdo_dbh_t *dbh; - - /* keep track of bound input parameters. Some drivers support - * input/output parameters, but you can't rely on that working */ - HashTable *bound_params; - /* When rewriting from named to positional, this maps positions to names */ - HashTable *bound_param_map; - /* keep track of PHP variables bound to named (or positional) columns - * in the result set */ - HashTable *bound_columns; - - /* not always meaningful */ - zend_long row_count; - - /* used to hold the statement's current query */ - char *query_string; - size_t query_stringlen; - - /* the copy of the query with expanded binds ONLY for emulated-prepare drivers */ - char *active_query_string; - size_t active_query_stringlen; - - /* the cursor specific error code. */ - pdo_error_type error_code; - - /* for lazy fetches, we always return the same lazy object handle. - * Let's keep it here. */ - zval lazy_object_ref; - zend_ulong refcount; - - /* defaults for fetches */ - enum pdo_fetch_type default_fetch_type; - union { - int column; - struct { - zval ctor_args; /* freed */ - zend_fcall_info fci; - zend_fcall_info_cache fcc; - zval retval; - zend_class_entry *ce; - } cls; - struct { - zval fetch_args; /* freed */ - zend_fcall_info fci; - zend_fcall_info_cache fcc; - zval object; - zval function; - zval *values; /* freed */ - } func; - zval into; - } fetch; - - /* used by the query parser for driver specific - * parameter naming (see pgsql driver for example) */ - const char *named_rewrite_template; - - /* these items must appear in this order at the beginning of the - struct so that this can be cast as a zend_object. we need this - to allow the extending class to escape all the custom handlers - that PDO declares. - */ - zend_object std; -}; - -static inline pdo_stmt_t *php_pdo_stmt_fetch_object(zend_object *obj) { - return (pdo_stmt_t *)((char*)(obj) - XtOffsetOf(pdo_stmt_t, std)); -} - -#define Z_PDO_STMT_P(zv) php_pdo_stmt_fetch_object(Z_OBJ_P((zv))) - -struct _pdo_row_t { - zend_object std; - pdo_stmt_t *stmt; -}; - -/* call this in MINIT to register your PDO driver */ -PDO_API int php_pdo_register_driver(const pdo_driver_t *driver); -/* call this in MSHUTDOWN to unregister your PDO driver */ -PDO_API void php_pdo_unregister_driver(const pdo_driver_t *driver); - -/* For the convenience of drivers, this function will parse a data source - * string, of the form "name=value; name2=value2" and populate variables - * according to the data you pass in and array of pdo_data_src_parser structures */ -struct pdo_data_src_parser { - const char *optname; - char *optval; - int freeme; -}; - -PDO_API int php_pdo_parse_data_source(const char *data_source, - zend_ulong data_source_len, struct pdo_data_src_parser *parsed, - int nparams); - -PDO_API zend_class_entry *php_pdo_get_dbh_ce(void); -PDO_API zend_class_entry *php_pdo_get_exception(void); - -PDO_API int pdo_parse_params(pdo_stmt_t *stmt, char *inquery, size_t inquery_len, - char **outquery, size_t *outquery_len); - -PDO_API void pdo_raise_impl_error(pdo_dbh_t *dbh, pdo_stmt_t *stmt, - const char *sqlstate, const char *supp); - -PDO_API void php_pdo_dbh_addref(pdo_dbh_t *dbh); -PDO_API void php_pdo_dbh_delref(pdo_dbh_t *dbh); - -PDO_API void php_pdo_free_statement(pdo_stmt_t *stmt); - - -PDO_API void pdo_throw_exception(unsigned int driver_errcode, char *driver_errmsg, pdo_error_type *pdo_error); -#endif /* PHP_PDO_DRIVER_H */ diff --git a/7.4.27/mac/include/php/ext/pdo/php_pdo_error.h b/7.4.27/mac/include/php/ext/pdo/php_pdo_error.h deleted file mode 100644 index b970283..0000000 --- a/7.4.27/mac/include/php/ext/pdo/php_pdo_error.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Wez Furlong | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_PDO_ERROR_H -#define PHP_PDO_ERROR_H - -#include "php_pdo_driver.h" - -PDO_API void pdo_handle_error(pdo_dbh_t *dbh, pdo_stmt_t *stmt); - -#define PDO_DBH_CLEAR_ERR() do { \ - strlcpy(dbh->error_code, PDO_ERR_NONE, sizeof(PDO_ERR_NONE)); \ - if (dbh->query_stmt) { \ - dbh->query_stmt = NULL; \ - zval_ptr_dtor(&dbh->query_stmt_zval); \ - } \ -} while (0) -#define PDO_STMT_CLEAR_ERR() strcpy(stmt->error_code, PDO_ERR_NONE) -#define PDO_HANDLE_DBH_ERR() if (strcmp(dbh->error_code, PDO_ERR_NONE)) { pdo_handle_error(dbh, NULL); } -#define PDO_HANDLE_STMT_ERR() if (strcmp(stmt->error_code, PDO_ERR_NONE)) { pdo_handle_error(stmt->dbh, stmt); } - -#endif /* PHP_PDO_ERROR_H */ diff --git a/7.4.27/mac/include/php/ext/phar/php_phar.h b/7.4.27/mac/include/php/ext/phar/php_phar.h deleted file mode 100644 index c2220a7..0000000 --- a/7.4.27/mac/include/php/ext/phar/php_phar.h +++ /dev/null @@ -1,37 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | phar php single-file executable PHP extension | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt. | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Gregory Beaver | - | Marcus Boerger | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_PHAR_H -#define PHP_PHAR_H - -#define PHP_PHAR_VERSION PHP_VERSION - -#include "ext/standard/basic_functions.h" -extern zend_module_entry phar_module_entry; -#define phpext_phar_ptr &phar_module_entry - -#ifdef PHP_WIN32 -#define PHP_PHAR_API __declspec(dllexport) -#else -#define PHP_PHAR_API PHPAPI -#endif - -PHP_PHAR_API int phar_resolve_alias(char *alias, size_t alias_len, char **filename, size_t *filename_len); - -#endif /* PHP_PHAR_H */ diff --git a/7.4.27/mac/include/php/ext/session/mod_files.h b/7.4.27/mac/include/php/ext/session/mod_files.h deleted file mode 100644 index fc12f6d..0000000 --- a/7.4.27/mac/include/php/ext/session/mod_files.h +++ /dev/null @@ -1,27 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - +----------------------------------------------------------------------+ - */ - -#ifndef MOD_FILES_H -#define MOD_FILES_H - -extern const ps_module ps_mod_files; -#define ps_files_ptr &ps_mod_files - -PS_FUNCS_UPDATE_TIMESTAMP(files); - -#endif diff --git a/7.4.27/mac/include/php/ext/session/mod_user.h b/7.4.27/mac/include/php/ext/session/mod_user.h deleted file mode 100644 index af002c0..0000000 --- a/7.4.27/mac/include/php/ext/session/mod_user.h +++ /dev/null @@ -1,27 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - +----------------------------------------------------------------------+ - */ - -#ifndef MOD_USER_H -#define MOD_USER_H - -extern const ps_module ps_mod_user; -#define ps_user_ptr &ps_mod_user - -PS_FUNCS_UPDATE_TIMESTAMP(user); - -#endif diff --git a/7.4.27/mac/include/php/ext/session/php_session.h b/7.4.27/mac/include/php/ext/session/php_session.h deleted file mode 100644 index 4c795fd..0000000 --- a/7.4.27/mac/include/php/ext/session/php_session.h +++ /dev/null @@ -1,333 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_SESSION_H -#define PHP_SESSION_H - -#include "ext/standard/php_var.h" -#include "ext/hash/php_hash.h" - -#define PHP_SESSION_API 20161017 - -#include "php_version.h" -#define PHP_SESSION_VERSION PHP_VERSION - -/* save handler macros */ -#define PS_NUM_APIS 9 -#define PS_OPEN_ARGS void **mod_data, const char *save_path, const char *session_name -#define PS_CLOSE_ARGS void **mod_data -#define PS_READ_ARGS void **mod_data, zend_string *key, zend_string **val, zend_long maxlifetime -#define PS_WRITE_ARGS void **mod_data, zend_string *key, zend_string *val, zend_long maxlifetime -#define PS_DESTROY_ARGS void **mod_data, zend_string *key -#define PS_GC_ARGS void **mod_data, zend_long maxlifetime, zend_long *nrdels -#define PS_CREATE_SID_ARGS void **mod_data -#define PS_VALIDATE_SID_ARGS void **mod_data, zend_string *key -#define PS_UPDATE_TIMESTAMP_ARGS void **mod_data, zend_string *key, zend_string *val, zend_long maxlifetime - -typedef struct ps_module_struct { - const char *s_name; - int (*s_open)(PS_OPEN_ARGS); - int (*s_close)(PS_CLOSE_ARGS); - int (*s_read)(PS_READ_ARGS); - int (*s_write)(PS_WRITE_ARGS); - int (*s_destroy)(PS_DESTROY_ARGS); - zend_long (*s_gc)(PS_GC_ARGS); - zend_string *(*s_create_sid)(PS_CREATE_SID_ARGS); - int (*s_validate_sid)(PS_VALIDATE_SID_ARGS); - int (*s_update_timestamp)(PS_UPDATE_TIMESTAMP_ARGS); -} ps_module; - -#define PS_GET_MOD_DATA() *mod_data -#define PS_SET_MOD_DATA(a) *mod_data = (a) - -#define PS_OPEN_FUNC(x) int ps_open_##x(PS_OPEN_ARGS) -#define PS_CLOSE_FUNC(x) int ps_close_##x(PS_CLOSE_ARGS) -#define PS_READ_FUNC(x) int ps_read_##x(PS_READ_ARGS) -#define PS_WRITE_FUNC(x) int ps_write_##x(PS_WRITE_ARGS) -#define PS_DESTROY_FUNC(x) int ps_delete_##x(PS_DESTROY_ARGS) -#define PS_GC_FUNC(x) zend_long ps_gc_##x(PS_GC_ARGS) -#define PS_CREATE_SID_FUNC(x) zend_string *ps_create_sid_##x(PS_CREATE_SID_ARGS) -#define PS_VALIDATE_SID_FUNC(x) int ps_validate_sid_##x(PS_VALIDATE_SID_ARGS) -#define PS_UPDATE_TIMESTAMP_FUNC(x) int ps_update_timestamp_##x(PS_UPDATE_TIMESTAMP_ARGS) - -/* Legacy save handler module definitions */ -#define PS_FUNCS(x) \ - PS_OPEN_FUNC(x); \ - PS_CLOSE_FUNC(x); \ - PS_READ_FUNC(x); \ - PS_WRITE_FUNC(x); \ - PS_DESTROY_FUNC(x); \ - PS_GC_FUNC(x); \ - PS_CREATE_SID_FUNC(x) - -#define PS_MOD(x) \ - #x, ps_open_##x, ps_close_##x, ps_read_##x, ps_write_##x, \ - ps_delete_##x, ps_gc_##x, php_session_create_id, \ - php_session_validate_sid, php_session_update_timestamp - -/* Legacy SID creation enabled save handler module definitions */ -#define PS_FUNCS_SID(x) \ - PS_OPEN_FUNC(x); \ - PS_CLOSE_FUNC(x); \ - PS_READ_FUNC(x); \ - PS_WRITE_FUNC(x); \ - PS_DESTROY_FUNC(x); \ - PS_GC_FUNC(x); \ - PS_CREATE_SID_FUNC(x); \ - PS_VALIDATE_SID_FUNC(x); \ - PS_UPDATE_TIMESTAMP_FUNC(x); - -#define PS_MOD_SID(x) \ - #x, ps_open_##x, ps_close_##x, ps_read_##x, ps_write_##x, \ - ps_delete_##x, ps_gc_##x, ps_create_sid_##x, \ - php_session_validate_sid, php_session_update_timestamp - -/* Update timestamp enabled save handler module definitions - New save handlers should use this API */ -#define PS_FUNCS_UPDATE_TIMESTAMP(x) \ - PS_OPEN_FUNC(x); \ - PS_CLOSE_FUNC(x); \ - PS_READ_FUNC(x); \ - PS_WRITE_FUNC(x); \ - PS_DESTROY_FUNC(x); \ - PS_GC_FUNC(x); \ - PS_CREATE_SID_FUNC(x); \ - PS_VALIDATE_SID_FUNC(x); \ - PS_UPDATE_TIMESTAMP_FUNC(x); - -#define PS_MOD_UPDATE_TIMESTAMP(x) \ - #x, ps_open_##x, ps_close_##x, ps_read_##x, ps_write_##x, \ - ps_delete_##x, ps_gc_##x, ps_create_sid_##x, \ - ps_validate_sid_##x, ps_update_timestamp_##x - - -typedef enum { - php_session_disabled, - php_session_none, - php_session_active -} php_session_status; - -typedef struct _php_session_rfc1867_progress { - size_t sname_len; - zval sid; - smart_str key; - - zend_long update_step; - zend_long next_update; - double next_update_time; - zend_bool cancel_upload; - zend_bool apply_trans_sid; - size_t content_length; - - zval data; /* the array exported to session data */ - zval *post_bytes_processed; /* data["bytes_processed"] */ - zval files; /* data["files"] array */ - zval current_file; /* array of currently uploading file */ - zval *current_file_bytes_processed; -} php_session_rfc1867_progress; - -typedef struct _php_ps_globals { - char *save_path; - char *session_name; - zend_string *id; - char *extern_referer_chk; - char *cache_limiter; - zend_long cookie_lifetime; - char *cookie_path; - char *cookie_domain; - zend_bool cookie_secure; - zend_bool cookie_httponly; - char *cookie_samesite; - const ps_module *mod; - const ps_module *default_mod; - void *mod_data; - php_session_status session_status; - zend_long gc_probability; - zend_long gc_divisor; - zend_long gc_maxlifetime; - int module_number; - zend_long cache_expire; - union { - zval names[PS_NUM_APIS]; - struct { - zval ps_open; - zval ps_close; - zval ps_read; - zval ps_write; - zval ps_destroy; - zval ps_gc; - zval ps_create_sid; - zval ps_validate_sid; - zval ps_update_timestamp; - } name; - } mod_user_names; - int mod_user_implemented; - int mod_user_is_open; - const struct ps_serializer_struct *serializer; - zval http_session_vars; - zend_bool auto_start; - zend_bool use_cookies; - zend_bool use_only_cookies; - zend_bool use_trans_sid; /* contains the INI value of whether to use trans-sid */ - - zend_long sid_length; - zend_long sid_bits_per_character; - int send_cookie; - int define_sid; - - php_session_rfc1867_progress *rfc1867_progress; - zend_bool rfc1867_enabled; /* session.upload_progress.enabled */ - zend_bool rfc1867_cleanup; /* session.upload_progress.cleanup */ - char *rfc1867_prefix; /* session.upload_progress.prefix */ - char *rfc1867_name; /* session.upload_progress.name */ - zend_long rfc1867_freq; /* session.upload_progress.freq */ - double rfc1867_min_freq; /* session.upload_progress.min_freq */ - - zend_bool use_strict_mode; /* whether or not PHP accepts unknown session ids */ - zend_bool lazy_write; /* omit session write when it is possible */ - zend_bool in_save_handler; /* state if session is in save handler or not */ - zend_bool set_handler; /* state if session module i setting handler or not */ - zend_string *session_vars; /* serialized original session data */ -} php_ps_globals; - -typedef php_ps_globals zend_ps_globals; - -extern zend_module_entry session_module_entry; -#define phpext_session_ptr &session_module_entry - -#ifdef ZTS -#define PS(v) ZEND_TSRMG(ps_globals_id, php_ps_globals *, v) -#ifdef COMPILE_DL_SESSION -ZEND_TSRMLS_CACHE_EXTERN() -#endif -#else -#define PS(v) (ps_globals.v) -#endif - -#define PS_SERIALIZER_ENCODE_ARGS void -#define PS_SERIALIZER_DECODE_ARGS const char *val, size_t vallen - -typedef struct ps_serializer_struct { - const char *name; - zend_string *(*encode)(PS_SERIALIZER_ENCODE_ARGS); - int (*decode)(PS_SERIALIZER_DECODE_ARGS); -} ps_serializer; - -#define PS_SERIALIZER_ENCODE_NAME(x) ps_srlzr_encode_##x -#define PS_SERIALIZER_DECODE_NAME(x) ps_srlzr_decode_##x - -#define PS_SERIALIZER_ENCODE_FUNC(x) \ - zend_string *PS_SERIALIZER_ENCODE_NAME(x)(PS_SERIALIZER_ENCODE_ARGS) -#define PS_SERIALIZER_DECODE_FUNC(x) \ - int PS_SERIALIZER_DECODE_NAME(x)(PS_SERIALIZER_DECODE_ARGS) - -#define PS_SERIALIZER_FUNCS(x) \ - PS_SERIALIZER_ENCODE_FUNC(x); \ - PS_SERIALIZER_DECODE_FUNC(x) - -#define PS_SERIALIZER_ENTRY(x) \ - { #x, PS_SERIALIZER_ENCODE_NAME(x), PS_SERIALIZER_DECODE_NAME(x) } - -/* default create id function */ -PHPAPI zend_string *php_session_create_id(PS_CREATE_SID_ARGS); -/* Dummy PS module functions */ -PHPAPI int php_session_validate_sid(PS_VALIDATE_SID_ARGS); -PHPAPI int php_session_update_timestamp(PS_UPDATE_TIMESTAMP_ARGS); - -PHPAPI void session_adapt_url(const char *, size_t, char **, size_t *); - -PHPAPI int php_session_destroy(void); -PHPAPI void php_add_session_var(zend_string *name); -PHPAPI zval *php_set_session_var(zend_string *name, zval *state_val, php_unserialize_data_t *var_hash); -PHPAPI zval *php_get_session_var(zend_string *name); - -PHPAPI int php_session_register_module(const ps_module *); - -PHPAPI int php_session_register_serializer(const char *name, - zend_string *(*encode)(PS_SERIALIZER_ENCODE_ARGS), - int (*decode)(PS_SERIALIZER_DECODE_ARGS)); - -PHPAPI void php_session_set_id(char *id); -PHPAPI int php_session_start(void); -PHPAPI int php_session_flush(int write); - -PHPAPI const ps_module *_php_find_ps_module(char *name); -PHPAPI const ps_serializer *_php_find_ps_serializer(char *name); - -PHPAPI int php_session_valid_key(const char *key); -PHPAPI int php_session_reset_id(void); - -#define PS_ADD_VARL(name) do { \ - php_add_session_var(name); \ -} while (0) - -#define PS_ADD_VAR(name) PS_ADD_VARL(name) - -#define PS_DEL_VARL(name) do { \ - if (!Z_ISNULL(PS(http_session_vars))) { \ - zend_hash_del(Z_ARRVAL(PS(http_session_vars)), name); \ - } \ -} while (0) - - -#define PS_ENCODE_VARS \ - zend_string *key; \ - zend_ulong num_key; \ - zval *struc; - -#define PS_ENCODE_LOOP(code) do { \ - HashTable *_ht = Z_ARRVAL_P(Z_REFVAL(PS(http_session_vars))); \ - ZEND_HASH_FOREACH_KEY(_ht, num_key, key) { \ - if (key == NULL) { \ - php_error_docref(NULL, E_NOTICE, \ - "Skipping numeric key " ZEND_LONG_FMT, num_key);\ - continue; \ - } \ - if ((struc = php_get_session_var(key))) { \ - code; \ - } \ - } ZEND_HASH_FOREACH_END(); \ -} while(0) - -PHPAPI ZEND_EXTERN_MODULE_GLOBALS(ps) - -void php_session_auto_start(void *data); - -#define PS_CLASS_NAME "SessionHandler" -extern PHPAPI zend_class_entry *php_session_class_entry; - -#define PS_IFACE_NAME "SessionHandlerInterface" -extern PHPAPI zend_class_entry *php_session_iface_entry; - -#define PS_SID_IFACE_NAME "SessionIdInterface" -extern PHPAPI zend_class_entry *php_session_id_iface_entry; - -#define PS_UPDATE_TIMESTAMP_IFACE_NAME "SessionUpdateTimestampHandlerInterface" -extern PHPAPI zend_class_entry *php_session_update_timestamp_iface_entry; - -extern PHP_METHOD(SessionHandler, open); -extern PHP_METHOD(SessionHandler, close); -extern PHP_METHOD(SessionHandler, read); -extern PHP_METHOD(SessionHandler, write); -extern PHP_METHOD(SessionHandler, destroy); -extern PHP_METHOD(SessionHandler, gc); -extern PHP_METHOD(SessionHandler, create_sid); -extern PHP_METHOD(SessionHandler, validateId); -extern PHP_METHOD(SessionHandler, updateTimestamp); - -#endif diff --git a/7.4.27/mac/include/php/ext/simplexml/php_simplexml.h b/7.4.27/mac/include/php/ext/simplexml/php_simplexml.h deleted file mode 100644 index 0975222..0000000 --- a/7.4.27/mac/include/php/ext/simplexml/php_simplexml.h +++ /dev/null @@ -1,84 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sterling Hughes | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_SIMPLEXML_H -#define PHP_SIMPLEXML_H - -extern zend_module_entry simplexml_module_entry; -#define phpext_simplexml_ptr &simplexml_module_entry - -#include "php_version.h" -#define PHP_SIMPLEXML_VERSION PHP_VERSION - -#ifdef ZTS -#include "TSRM.h" -#endif - -#include "ext/libxml/php_libxml.h" -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include - -PHP_MINIT_FUNCTION(simplexml); -PHP_MSHUTDOWN_FUNCTION(simplexml); -PHP_MINFO_FUNCTION(simplexml); - -typedef enum { - SXE_ITER_NONE = 0, - SXE_ITER_ELEMENT = 1, - SXE_ITER_CHILD = 2, - SXE_ITER_ATTRLIST = 3 -} SXE_ITER; - -typedef struct { - php_libxml_node_ptr *node; - php_libxml_ref_obj *document; - HashTable *properties; - xmlXPathContextPtr xpath; - struct { - xmlChar *name; - xmlChar *nsprefix; - int isprefix; - SXE_ITER type; - zval data; - } iter; - zval tmp; - zend_function *fptr_count; - zend_object zo; -} php_sxe_object; - -#ifdef PHP_WIN32 -# ifdef PHP_SIMPLEXML_EXPORTS -# define PHP_SXE_API __declspec(dllexport) -# else -# define PHP_SXE_API __declspec(dllimport) -# endif -#else -# define PHP_SXE_API ZEND_API -#endif - -PHP_SXE_API zend_class_entry *sxe_get_element_class_entry(); - -#endif diff --git a/7.4.27/mac/include/php/ext/simplexml/php_simplexml_exports.h b/7.4.27/mac/include/php/ext/simplexml/php_simplexml_exports.h deleted file mode 100644 index 20e9785..0000000 --- a/7.4.27/mac/include/php/ext/simplexml/php_simplexml_exports.h +++ /dev/null @@ -1,57 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sterling Hughes | - | Marcus Boerger | - | Rob Richards | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_SIMPLEXML_EXPORTS_H -#define PHP_SIMPLEXML_EXPORTS_H - -#include "php_simplexml.h" - -#define SKIP_TEXT(__p) \ - if ((__p)->type == XML_TEXT_NODE) { \ - goto next_iter; \ - } - -#define GET_NODE(__s, __n) { \ - if ((__s)->node && (__s)->node->node) { \ - __n = (__s)->node->node; \ - } else { \ - __n = NULL; \ - php_error_docref(NULL, E_WARNING, "Node no longer exists"); \ - } \ -} - -PHP_SXE_API zend_object *sxe_object_new(zend_class_entry *ce); - -static inline php_sxe_object *php_sxe_fetch_object(zend_object *obj) /* {{{ */ { - return (php_sxe_object *)((char*)(obj) - XtOffsetOf(php_sxe_object, zo)); -} -/* }}} */ - -#define Z_SXEOBJ_P(zv) php_sxe_fetch_object(Z_OBJ_P((zv))) - -typedef struct { - zend_object_iterator intern; - php_sxe_object *sxe; -} php_sxe_iterator; - -PHP_SXE_API void php_sxe_rewind_iterator(php_sxe_object *sxe); -PHP_SXE_API void php_sxe_move_forward_iterator(php_sxe_object *sxe); - -#endif /* PHP_SIMPLEXML_EXPORTS_H */ diff --git a/7.4.27/mac/include/php/ext/sockets/php_sockets.h b/7.4.27/mac/include/php/ext/sockets/php_sockets.h deleted file mode 100644 index c1aba9d..0000000 --- a/7.4.27/mac/include/php/ext/sockets/php_sockets.h +++ /dev/null @@ -1,119 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Chris Vandomelen | - | Sterling Hughes | - | | - | WinSock: Daniel Beulshausen | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_SOCKETS_H -#define PHP_SOCKETS_H - -#if HAVE_CONFIG_H -# include "config.h" -#endif - -#if HAVE_SOCKETS - -#include -#ifdef PHP_WIN32 -# include "windows_common.h" -#endif - -#define PHP_SOCKETS_VERSION PHP_VERSION - -extern zend_module_entry sockets_module_entry; -#define phpext_sockets_ptr &sockets_module_entry - -#ifdef PHP_WIN32 -#include -#else -#if HAVE_SYS_SOCKET_H -#include -#endif -#endif - -#ifndef PHP_WIN32 -typedef int PHP_SOCKET; -# define PHP_SOCKETS_API PHPAPI -#else -# define PHP_SOCKETS_API __declspec(dllexport) -typedef SOCKET PHP_SOCKET; -#endif - -typedef struct { - PHP_SOCKET bsd_socket; - int type; - int error; - int blocking; - zval zstream; -} php_socket; - -#ifdef PHP_WIN32 -struct sockaddr_un { - short sun_family; - char sun_path[108]; -}; -#endif - -PHP_SOCKETS_API int php_sockets_le_socket(void); -PHP_SOCKETS_API php_socket *php_create_socket(void); -PHP_SOCKETS_API void php_destroy_socket(zend_resource *rsrc); -PHP_SOCKETS_API void php_destroy_sockaddr(zend_resource *rsrc); - -#define php_sockets_le_socket_name "Socket" -#define php_sockets_le_addrinfo_name "AddressInfo" - -#define PHP_SOCKET_ERROR(socket, msg, errn) \ - do { \ - int _err = (errn); /* save value to avoid repeated calls to WSAGetLastError() on Windows */ \ - (socket)->error = _err; \ - SOCKETS_G(last_error) = _err; \ - if (_err != EAGAIN && _err != EWOULDBLOCK && _err != EINPROGRESS) { \ - php_error_docref(NULL, E_WARNING, "%s [%d]: %s", msg, _err, sockets_strerror(_err)); \ - } \ - } while (0) - -ZEND_BEGIN_MODULE_GLOBALS(sockets) - int last_error; - char *strerror_buf; -#ifdef PHP_WIN32 - uint32_t wsa_child_count; - HashTable wsa_info; -#endif -ZEND_END_MODULE_GLOBALS(sockets) - -ZEND_EXTERN_MODULE_GLOBALS(sockets) -#define SOCKETS_G(v) ZEND_MODULE_GLOBALS_ACCESSOR(sockets, v) - -enum sockopt_return { - SOCKOPT_ERROR, - SOCKOPT_CONTINUE, - SOCKOPT_SUCCESS -}; - -char *sockets_strerror(int error); -php_socket *socket_import_file_descriptor(PHP_SOCKET sock); - -#else -#define phpext_sockets_ptr NULL -#endif - -#if defined(_AIX) && !defined(HAVE_SA_SS_FAMILY) -# define ss_family __ss_family -#endif - -#endif diff --git a/7.4.27/mac/include/php/ext/spl/php_spl.h b/7.4.27/mac/include/php/ext/spl/php_spl.h deleted file mode 100644 index 69ff65f..0000000 --- a/7.4.27/mac/include/php/ext/spl/php_spl.h +++ /dev/null @@ -1,75 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Marcus Boerger | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_SPL_H -#define PHP_SPL_H - -#include "php.h" -#include - -#define PHP_SPL_VERSION PHP_VERSION - -extern zend_module_entry spl_module_entry; -#define phpext_spl_ptr &spl_module_entry - -#ifdef PHP_WIN32 -# ifdef SPL_EXPORTS -# define SPL_API __declspec(dllexport) -# elif defined(COMPILE_DL_SPL) -# define SPL_API __declspec(dllimport) -# else -# define SPL_API /* nothing */ -# endif -#elif defined(__GNUC__) && __GNUC__ >= 4 -# define SPL_API __attribute__ ((visibility("default"))) -#else -# define SPL_API -#endif - -#if defined(PHP_WIN32) && !defined(COMPILE_DL_SPL) -#undef phpext_spl -#define phpext_spl NULL -#endif - -PHP_MINIT_FUNCTION(spl); -PHP_MSHUTDOWN_FUNCTION(spl); -PHP_RINIT_FUNCTION(spl); -PHP_RSHUTDOWN_FUNCTION(spl); -PHP_MINFO_FUNCTION(spl); - - -ZEND_BEGIN_MODULE_GLOBALS(spl) - zend_string *autoload_extensions; - HashTable *autoload_functions; - intptr_t hash_mask_handle; - intptr_t hash_mask_handlers; - int hash_mask_init; - int autoload_running; -ZEND_END_MODULE_GLOBALS(spl) - -ZEND_EXTERN_MODULE_GLOBALS(spl) -#define SPL_G(v) ZEND_MODULE_GLOBALS_ACCESSOR(spl, v) - -PHP_FUNCTION(spl_classes); -PHP_FUNCTION(class_parents); -PHP_FUNCTION(class_implements); -PHP_FUNCTION(class_uses); - -PHPAPI zend_string *php_spl_object_hash(zval *obj); - -#endif /* PHP_SPL_H */ diff --git a/7.4.27/mac/include/php/ext/spl/spl_array.h b/7.4.27/mac/include/php/ext/spl/spl_array.h deleted file mode 100644 index ed5dec3..0000000 --- a/7.4.27/mac/include/php/ext/spl/spl_array.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Marcus Boerger | - +----------------------------------------------------------------------+ - */ - -#ifndef SPL_ARRAY_H -#define SPL_ARRAY_H - -#include "php.h" -#include "php_spl.h" -#include "spl_iterators.h" - -extern PHPAPI zend_class_entry *spl_ce_ArrayObject; -extern PHPAPI zend_class_entry *spl_ce_ArrayIterator; -extern PHPAPI zend_class_entry *spl_ce_RecursiveArrayIterator; - -PHP_MINIT_FUNCTION(spl_array); - -extern void spl_array_iterator_append(zval *object, zval *append_value); -extern void spl_array_iterator_key(zval *object, zval *return_value); - -#endif /* SPL_ARRAY_H */ diff --git a/7.4.27/mac/include/php/ext/spl/spl_directory.h b/7.4.27/mac/include/php/ext/spl/spl_directory.h deleted file mode 100644 index 90e8945..0000000 --- a/7.4.27/mac/include/php/ext/spl/spl_directory.h +++ /dev/null @@ -1,149 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Marcus Boerger | - +----------------------------------------------------------------------+ - */ - -#ifndef SPL_DIRECTORY_H -#define SPL_DIRECTORY_H - -#include "php.h" -#include "php_spl.h" - -extern PHPAPI zend_class_entry *spl_ce_SplFileInfo; -extern PHPAPI zend_class_entry *spl_ce_DirectoryIterator; -extern PHPAPI zend_class_entry *spl_ce_FilesystemIterator; -extern PHPAPI zend_class_entry *spl_ce_RecursiveDirectoryIterator; -extern PHPAPI zend_class_entry *spl_ce_GlobIterator; -extern PHPAPI zend_class_entry *spl_ce_SplFileObject; -extern PHPAPI zend_class_entry *spl_ce_SplTempFileObject; - -PHP_MINIT_FUNCTION(spl_directory); - -typedef enum { - SPL_FS_INFO, /* must be 0 */ - SPL_FS_DIR, - SPL_FS_FILE -} SPL_FS_OBJ_TYPE; - -typedef struct _spl_filesystem_object spl_filesystem_object; - -typedef void (*spl_foreign_dtor_t)(spl_filesystem_object *object); -typedef void (*spl_foreign_clone_t)(spl_filesystem_object *src, spl_filesystem_object *dst); - -PHPAPI char* spl_filesystem_object_get_path(spl_filesystem_object *intern, size_t *len); - -typedef struct _spl_other_handler { - spl_foreign_dtor_t dtor; - spl_foreign_clone_t clone; -} spl_other_handler; - -/* define an overloaded iterator structure */ -typedef struct { - zend_object_iterator intern; - zval current; - void *object; -} spl_filesystem_iterator; - -struct _spl_filesystem_object { - void *oth; - const spl_other_handler *oth_handler; - char *_path; - size_t _path_len; - char *orig_path; - char *file_name; - size_t file_name_len; - SPL_FS_OBJ_TYPE type; - zend_long flags; - zend_class_entry *file_class; - zend_class_entry *info_class; - union { - struct { - php_stream *dirp; - php_stream_dirent entry; - char *sub_path; - size_t sub_path_len; - int index; - int is_recursive; - zend_function *func_rewind; - zend_function *func_next; - zend_function *func_valid; - } dir; - struct { - php_stream *stream; - php_stream_context *context; - zval *zcontext; - char *open_mode; - size_t open_mode_len; - zval current_zval; - char *current_line; - size_t current_line_len; - size_t max_line_len; - zend_long current_line_num; - zval zresource; - zend_function *func_getCurr; - char delimiter; - char enclosure; - int escape; - } file; - } u; - zend_object std; -}; - -static inline spl_filesystem_object *spl_filesystem_from_obj(zend_object *obj) /* {{{ */ { - return (spl_filesystem_object*)((char*)(obj) - XtOffsetOf(spl_filesystem_object, std)); -} -/* }}} */ - -#define Z_SPLFILESYSTEM_P(zv) spl_filesystem_from_obj(Z_OBJ_P((zv))) - -static inline spl_filesystem_iterator* spl_filesystem_object_to_iterator(spl_filesystem_object *obj) -{ - spl_filesystem_iterator *it; - - it = ecalloc(1, sizeof(spl_filesystem_iterator)); - it->object = (void *)obj; - zend_iterator_init(&it->intern); - return it; -} - -static inline spl_filesystem_object* spl_filesystem_iterator_to_object(spl_filesystem_iterator *it) -{ - return (spl_filesystem_object*)it->object; -} - -#define SPL_FILE_OBJECT_DROP_NEW_LINE 0x00000001 /* drop new lines */ -#define SPL_FILE_OBJECT_READ_AHEAD 0x00000002 /* read on rewind/next */ -#define SPL_FILE_OBJECT_SKIP_EMPTY 0x00000004 /* skip empty lines */ -#define SPL_FILE_OBJECT_READ_CSV 0x00000008 /* read via fgetcsv */ -#define SPL_FILE_OBJECT_MASK 0x0000000F /* read via fgetcsv */ - -#define SPL_FILE_DIR_CURRENT_AS_FILEINFO 0x00000000 /* make RecursiveDirectoryTree::current() return SplFileInfo */ -#define SPL_FILE_DIR_CURRENT_AS_SELF 0x00000010 /* make RecursiveDirectoryTree::current() return getSelf() */ -#define SPL_FILE_DIR_CURRENT_AS_PATHNAME 0x00000020 /* make RecursiveDirectoryTree::current() return getPathname() */ -#define SPL_FILE_DIR_CURRENT_MODE_MASK 0x000000F0 /* mask RecursiveDirectoryTree::current() */ -#define SPL_FILE_DIR_CURRENT(intern,mode) ((intern->flags&SPL_FILE_DIR_CURRENT_MODE_MASK)==mode) - -#define SPL_FILE_DIR_KEY_AS_PATHNAME 0x00000000 /* make RecursiveDirectoryTree::key() return getPathname() */ -#define SPL_FILE_DIR_KEY_AS_FILENAME 0x00000100 /* make RecursiveDirectoryTree::key() return getFilename() */ -#define SPL_FILE_DIR_FOLLOW_SYMLINKS 0x00000200 /* make RecursiveDirectoryTree::hasChildren() follow symlinks */ -#define SPL_FILE_DIR_KEY_MODE_MASK 0x00000F00 /* mask RecursiveDirectoryTree::key() */ -#define SPL_FILE_DIR_KEY(intern,mode) ((intern->flags&SPL_FILE_DIR_KEY_MODE_MASK)==mode) - -#define SPL_FILE_DIR_SKIPDOTS 0x00001000 /* Tells whether it should skip dots or not */ -#define SPL_FILE_DIR_UNIXPATHS 0x00002000 /* Whether to unixify path separators */ -#define SPL_FILE_DIR_OTHERS_MASK 0x00003000 /* mask used for get/setFlags */ - -#endif /* SPL_DIRECTORY_H */ diff --git a/7.4.27/mac/include/php/ext/spl/spl_dllist.h b/7.4.27/mac/include/php/ext/spl/spl_dllist.h deleted file mode 100644 index 3f53864..0000000 --- a/7.4.27/mac/include/php/ext/spl/spl_dllist.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Etienne Kneuss | - +----------------------------------------------------------------------+ - */ - -#ifndef SPL_DLLIST_H -#define SPL_DLLIST_H - -#include "php.h" -#include "php_spl.h" - -extern PHPAPI zend_class_entry *spl_ce_SplDoublyLinkedList; -extern PHPAPI zend_class_entry *spl_ce_SplQueue; -extern PHPAPI zend_class_entry *spl_ce_SplStack; - -PHP_MINIT_FUNCTION(spl_dllist); - -#endif /* SPL_DLLIST_H */ diff --git a/7.4.27/mac/include/php/ext/spl/spl_engine.h b/7.4.27/mac/include/php/ext/spl/spl_engine.h deleted file mode 100644 index c5614a6..0000000 --- a/7.4.27/mac/include/php/ext/spl/spl_engine.h +++ /dev/null @@ -1,78 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Marcus Boerger | - +----------------------------------------------------------------------+ - */ - -#ifndef SPL_ENGINE_H -#define SPL_ENGINE_H - -#include "php.h" -#include "php_spl.h" -#include "zend_interfaces.h" - -PHPAPI void spl_instantiate(zend_class_entry *pce, zval *object); - -PHPAPI zend_long spl_offset_convert_to_long(zval *offset); - -/* {{{ spl_instantiate_arg_ex1 */ -static inline int spl_instantiate_arg_ex1(zend_class_entry *pce, zval *retval, zval *arg1) -{ - zend_function *func = pce->constructor; - spl_instantiate(pce, retval); - - zend_call_method(retval, pce, &func, ZSTR_VAL(func->common.function_name), ZSTR_LEN(func->common.function_name), NULL, 1, arg1, NULL); - return 0; -} -/* }}} */ - -/* {{{ spl_instantiate_arg_ex2 */ -static inline int spl_instantiate_arg_ex2(zend_class_entry *pce, zval *retval, zval *arg1, zval *arg2) -{ - zend_function *func = pce->constructor; - spl_instantiate(pce, retval); - - zend_call_method(retval, pce, &func, ZSTR_VAL(func->common.function_name), ZSTR_LEN(func->common.function_name), NULL, 2, arg1, arg2); - return 0; -} -/* }}} */ - -/* {{{ spl_instantiate_arg_n */ -static inline void spl_instantiate_arg_n(zend_class_entry *pce, zval *retval, int argc, zval *argv) -{ - zend_function *func = pce->constructor; - zend_fcall_info fci; - zend_fcall_info_cache fcc; - zval dummy; - - spl_instantiate(pce, retval); - - fci.size = sizeof(zend_fcall_info); - ZVAL_STR(&fci.function_name, func->common.function_name); - fci.object = Z_OBJ_P(retval); - fci.retval = &dummy; - fci.param_count = argc; - fci.params = argv; - fci.no_separation = 1; - - fcc.function_handler = func; - fcc.called_scope = pce; - fcc.object = Z_OBJ_P(retval); - - zend_call_function(&fci, &fcc); -} -/* }}} */ - -#endif /* SPL_ENGINE_H */ diff --git a/7.4.27/mac/include/php/ext/spl/spl_exceptions.h b/7.4.27/mac/include/php/ext/spl/spl_exceptions.h deleted file mode 100644 index 2c36287..0000000 --- a/7.4.27/mac/include/php/ext/spl/spl_exceptions.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Marcus Boerger | - +----------------------------------------------------------------------+ - */ - -#ifndef SPL_EXCEPTIONS_H -#define SPL_EXCEPTIONS_H - -#include "php.h" -#include "php_spl.h" - -extern PHPAPI zend_class_entry *spl_ce_LogicException; -extern PHPAPI zend_class_entry *spl_ce_BadFunctionCallException; -extern PHPAPI zend_class_entry *spl_ce_BadMethodCallException; -extern PHPAPI zend_class_entry *spl_ce_DomainException; -extern PHPAPI zend_class_entry *spl_ce_InvalidArgumentException; -extern PHPAPI zend_class_entry *spl_ce_LengthException; -extern PHPAPI zend_class_entry *spl_ce_OutOfRangeException; - -extern PHPAPI zend_class_entry *spl_ce_RuntimeException; -extern PHPAPI zend_class_entry *spl_ce_OutOfBoundsException; -extern PHPAPI zend_class_entry *spl_ce_OverflowException; -extern PHPAPI zend_class_entry *spl_ce_RangeException; -extern PHPAPI zend_class_entry *spl_ce_UnderflowException; -extern PHPAPI zend_class_entry *spl_ce_UnexpectedValueException; - -PHP_MINIT_FUNCTION(spl_exceptions); - -#endif /* SPL_EXCEPTIONS_H */ diff --git a/7.4.27/mac/include/php/ext/spl/spl_fixedarray.h b/7.4.27/mac/include/php/ext/spl/spl_fixedarray.h deleted file mode 100644 index 9be62d4..0000000 --- a/7.4.27/mac/include/php/ext/spl/spl_fixedarray.h +++ /dev/null @@ -1,27 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Antony Dovgal | - | Etienne Kneuss | - +----------------------------------------------------------------------+ -*/ - -#ifndef SPL_FIXEDARRAY_H -#define SPL_FIXEDARRAY_H - -extern PHPAPI zend_class_entry *spl_ce_SplFixedArray; - -PHP_MINIT_FUNCTION(spl_fixedarray); - -#endif /* SPL_FIXEDARRAY_H */ diff --git a/7.4.27/mac/include/php/ext/spl/spl_functions.h b/7.4.27/mac/include/php/ext/spl/spl_functions.h deleted file mode 100644 index 2b9ff78..0000000 --- a/7.4.27/mac/include/php/ext/spl/spl_functions.h +++ /dev/null @@ -1,80 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Marcus Boerger | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_FUNCTIONS_H -#define PHP_FUNCTIONS_H - -#include "php.h" - -typedef zend_object* (*create_object_func_t)(zend_class_entry *class_type); - -#define REGISTER_SPL_STD_CLASS(class_name, obj_ctor) \ - spl_register_std_class(&spl_ce_ ## class_name, # class_name, obj_ctor, NULL); - -#define REGISTER_SPL_STD_CLASS_EX(class_name, obj_ctor, funcs) \ - spl_register_std_class(&spl_ce_ ## class_name, # class_name, obj_ctor, funcs); - -#define REGISTER_SPL_SUB_CLASS_EX(class_name, parent_class_name, obj_ctor, funcs) \ - spl_register_sub_class(&spl_ce_ ## class_name, spl_ce_ ## parent_class_name, # class_name, obj_ctor, funcs); - -#define REGISTER_SPL_INTERFACE(class_name) \ - spl_register_interface(&spl_ce_ ## class_name, # class_name, spl_funcs_ ## class_name); - -#define REGISTER_SPL_IMPLEMENTS(class_name, interface_name) \ - zend_class_implements(spl_ce_ ## class_name, 1, spl_ce_ ## interface_name); - -#define REGISTER_SPL_ITERATOR(class_name) \ - zend_class_implements(spl_ce_ ## class_name, 1, zend_ce_iterator); - -#define REGISTER_SPL_PROPERTY(class_name, prop_name, prop_flags) \ - spl_register_property(spl_ce_ ## class_name, prop_name, sizeof(prop_name)-1, prop_flags); - -#define REGISTER_SPL_CLASS_CONST_LONG(class_name, const_name, value) \ - zend_declare_class_constant_long(spl_ce_ ## class_name, const_name, sizeof(const_name)-1, (zend_long)value); - -void spl_register_std_class(zend_class_entry ** ppce, char * class_name, create_object_func_t ctor, const zend_function_entry * function_list); -void spl_register_sub_class(zend_class_entry ** ppce, zend_class_entry * parent_ce, char * class_name, create_object_func_t ctor, const zend_function_entry * function_list); -void spl_register_interface(zend_class_entry ** ppce, char * class_name, const zend_function_entry *functions); - -void spl_register_property( zend_class_entry * class_entry, char *prop_name, int prop_name_len, int prop_flags); - -/* sub: whether to allow subclasses/interfaces - allow = 0: allow all classes and interfaces - allow > 0: allow all that match and mask ce_flags - allow < 0: disallow all that match and mask ce_flags - */ -void spl_add_class_name(zval * list, zend_class_entry * pce, int allow, int ce_flags); -void spl_add_interfaces(zval * list, zend_class_entry * pce, int allow, int ce_flags); -void spl_add_traits(zval * list, zend_class_entry * pce, int allow, int ce_flags); -int spl_add_classes(zend_class_entry *pce, zval *list, int sub, int allow, int ce_flags); - -/* caller must efree(return) */ -zend_string *spl_gen_private_prop_name(zend_class_entry *ce, char *prop_name, int prop_len); - -#define SPL_ME(class_name, function_name, arg_info, flags) \ - PHP_ME( spl_ ## class_name, function_name, arg_info, flags) - -#define SPL_ABSTRACT_ME(class_name, function_name, arg_info) \ - ZEND_ABSTRACT_ME( spl_ ## class_name, function_name, arg_info) - -#define SPL_METHOD(class_name, function_name) \ - PHP_METHOD(spl_ ## class_name, function_name) - -#define SPL_MA(class_name, function_name, alias_class, alias_function, arg_info, flags) \ - PHP_MALIAS(spl_ ## alias_class, function_name, alias_function, arg_info, flags) -#endif /* PHP_FUNCTIONS_H */ diff --git a/7.4.27/mac/include/php/ext/spl/spl_heap.h b/7.4.27/mac/include/php/ext/spl/spl_heap.h deleted file mode 100644 index d73fca5..0000000 --- a/7.4.27/mac/include/php/ext/spl/spl_heap.h +++ /dev/null @@ -1,33 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Etienne Kneuss | - +----------------------------------------------------------------------+ - */ - -#ifndef SPL_HEAP_H -#define SPL_HEAP_H - -#include "php.h" -#include "php_spl.h" - -extern PHPAPI zend_class_entry *spl_ce_SplHeap; -extern PHPAPI zend_class_entry *spl_ce_SplMinHeap; -extern PHPAPI zend_class_entry *spl_ce_SplMaxHeap; - -extern PHPAPI zend_class_entry *spl_ce_SplPriorityQueue; - -PHP_MINIT_FUNCTION(spl_heap); - -#endif /* SPL_HEAP_H */ diff --git a/7.4.27/mac/include/php/ext/spl/spl_iterators.h b/7.4.27/mac/include/php/ext/spl/spl_iterators.h deleted file mode 100644 index af2f815..0000000 --- a/7.4.27/mac/include/php/ext/spl/spl_iterators.h +++ /dev/null @@ -1,172 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Marcus Boerger | - +----------------------------------------------------------------------+ - */ - -#ifndef SPL_ITERATORS_H -#define SPL_ITERATORS_H - -#include "php.h" -#include "php_spl.h" -#include "ext/pcre/php_pcre.h" - -#define spl_ce_Traversable zend_ce_traversable -#define spl_ce_Iterator zend_ce_iterator -#define spl_ce_Aggregate zend_ce_aggregate -#define spl_ce_ArrayAccess zend_ce_arrayaccess -#define spl_ce_Serializable zend_ce_serializable -#define spl_ce_Countable zend_ce_countable - -extern PHPAPI zend_class_entry *spl_ce_RecursiveIterator; -extern PHPAPI zend_class_entry *spl_ce_RecursiveIteratorIterator; -extern PHPAPI zend_class_entry *spl_ce_RecursiveTreeIterator; -extern PHPAPI zend_class_entry *spl_ce_FilterIterator; -extern PHPAPI zend_class_entry *spl_ce_RecursiveFilterIterator; -extern PHPAPI zend_class_entry *spl_ce_ParentIterator; -extern PHPAPI zend_class_entry *spl_ce_SeekableIterator; -extern PHPAPI zend_class_entry *spl_ce_LimitIterator; -extern PHPAPI zend_class_entry *spl_ce_CachingIterator; -extern PHPAPI zend_class_entry *spl_ce_RecursiveCachingIterator; -extern PHPAPI zend_class_entry *spl_ce_OuterIterator; -extern PHPAPI zend_class_entry *spl_ce_IteratorIterator; -extern PHPAPI zend_class_entry *spl_ce_NoRewindIterator; -extern PHPAPI zend_class_entry *spl_ce_InfiniteIterator; -extern PHPAPI zend_class_entry *spl_ce_EmptyIterator; -extern PHPAPI zend_class_entry *spl_ce_AppendIterator; -extern PHPAPI zend_class_entry *spl_ce_RegexIterator; -extern PHPAPI zend_class_entry *spl_ce_RecursiveRegexIterator; -extern PHPAPI zend_class_entry *spl_ce_CallbackFilterIterator; -extern PHPAPI zend_class_entry *spl_ce_RecursiveCallbackFilterIterator; - -PHP_MINIT_FUNCTION(spl_iterators); - -PHP_FUNCTION(iterator_to_array); -PHP_FUNCTION(iterator_count); -PHP_FUNCTION(iterator_apply); - -typedef enum { - DIT_Default = 0, - DIT_FilterIterator = DIT_Default, - DIT_RecursiveFilterIterator = DIT_Default, - DIT_ParentIterator = DIT_Default, - DIT_LimitIterator, - DIT_CachingIterator, - DIT_RecursiveCachingIterator, - DIT_IteratorIterator, - DIT_NoRewindIterator, - DIT_InfiniteIterator, - DIT_AppendIterator, - DIT_RegexIterator, - DIT_RecursiveRegexIterator, - DIT_CallbackFilterIterator, - DIT_RecursiveCallbackFilterIterator, - DIT_Unknown = ~0 -} dual_it_type; - -typedef enum { - RIT_Default = 0, - RIT_RecursiveIteratorIterator = RIT_Default, - RIT_RecursiveTreeIterator, - RIT_Unknow = ~0 -} recursive_it_it_type; - -enum { - /* public */ - CIT_CALL_TOSTRING = 0x00000001, - CIT_TOSTRING_USE_KEY = 0x00000002, - CIT_TOSTRING_USE_CURRENT = 0x00000004, - CIT_TOSTRING_USE_INNER = 0x00000008, - CIT_CATCH_GET_CHILD = 0x00000010, - CIT_FULL_CACHE = 0x00000100, - CIT_PUBLIC = 0x0000FFFF, - /* private */ - CIT_VALID = 0x00010000, - CIT_HAS_CHILDREN = 0x00020000 -}; - -enum { - /* public */ - REGIT_USE_KEY = 0x00000001, - REGIT_INVERTED = 0x00000002 -}; - -typedef enum { - REGIT_MODE_MATCH, - REGIT_MODE_GET_MATCH, - REGIT_MODE_ALL_MATCHES, - REGIT_MODE_SPLIT, - REGIT_MODE_REPLACE, - REGIT_MODE_MAX -} regex_mode; - -typedef struct _spl_cbfilter_it_intern { - zend_fcall_info fci; - zend_fcall_info_cache fcc; - zend_object *object; -} _spl_cbfilter_it_intern; - -typedef struct _spl_dual_it_object { - struct { - zval zobject; - zend_class_entry *ce; - zend_object *object; - zend_object_iterator *iterator; - } inner; - struct { - zval data; - zval key; - zend_long pos; - } current; - dual_it_type dit_type; - union { - struct { - zend_long offset; - zend_long count; - } limit; - struct { - zend_long flags; /* CIT_* */ - zval zstr; - zval zchildren; - zval zcache; - } caching; - struct { - zval zarrayit; - zend_object_iterator *iterator; - } append; - struct { - zend_long flags; - zend_long preg_flags; - pcre_cache_entry *pce; - zend_string *regex; - regex_mode mode; - int use_flags; - } regex; - _spl_cbfilter_it_intern *cbfilter; - } u; - zend_object std; -} spl_dual_it_object; - -static inline spl_dual_it_object *spl_dual_it_from_obj(zend_object *obj) /* {{{ */ { - return (spl_dual_it_object*)((char*)(obj) - XtOffsetOf(spl_dual_it_object, std)); -} /* }}} */ - -#define Z_SPLDUAL_IT_P(zv) spl_dual_it_from_obj(Z_OBJ_P((zv))) - -typedef int (*spl_iterator_apply_func_t)(zend_object_iterator *iter, void *puser); - -PHPAPI int spl_iterator_apply(zval *obj, spl_iterator_apply_func_t apply_func, void *puser); - -#endif /* SPL_ITERATORS_H */ diff --git a/7.4.27/mac/include/php/ext/spl/spl_observer.h b/7.4.27/mac/include/php/ext/spl/spl_observer.h deleted file mode 100644 index 50d65f6..0000000 --- a/7.4.27/mac/include/php/ext/spl/spl_observer.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Marcus Boerger | - +----------------------------------------------------------------------+ - */ - -#ifndef SPL_OBSERVER_H -#define SPL_OBSERVER_H - -#include "php.h" -#include "php_spl.h" - -extern PHPAPI zend_class_entry *spl_ce_SplObserver; -extern PHPAPI zend_class_entry *spl_ce_SplSubject; -extern PHPAPI zend_class_entry *spl_ce_SplObjectStorage; -extern PHPAPI zend_class_entry *spl_ce_MultipleIterator; - -PHP_MINIT_FUNCTION(spl_observer); - -#endif /* SPL_OBSERVER_H */ diff --git a/7.4.27/mac/include/php/ext/standard/base64.h b/7.4.27/mac/include/php/ext/standard/base64.h deleted file mode 100644 index faf245c..0000000 --- a/7.4.27/mac/include/php/ext/standard/base64.h +++ /dev/null @@ -1,83 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Jim Winstead | - | Xinchen Hui | - +----------------------------------------------------------------------+ -*/ - -#ifndef BASE64_H -#define BASE64_H - -/* - * NEON implementation is based on https://github.com/WojciechMula/base64simd - * which is copyrighted to: - * Copyright (c) 2015-2018, Wojciech Mula - * All rights reserved. - * - * SSSE3 and AVX2 implementation are based on https://github.com/aklomp/base64 - * which is copyrighted to: - * - * Copyright (c) 2005-2007, Nick Galbreath - * Copyright (c) 2013-2017, Alfred Klomp - * Copyright (c) 2015-2017, Wojciech Mula - * Copyright (c) 2016-2017, Matthieu Darbois - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions are - * met: - * - * - Redistributions of source code must retain the above copyright notice, - * this list of conditions and the following disclaimer. - * - * - Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in the - * documentation and/or other materials provided with the distribution. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS - * IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED - * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A - * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED - * TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR - * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF - * LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING - * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS - * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -PHP_FUNCTION(base64_decode); -PHP_FUNCTION(base64_encode); - -#if (ZEND_INTRIN_AVX2_FUNC_PTR || ZEND_INTRIN_SSSE3_FUNC_PTR) && !ZEND_INTRIN_AVX2_NATIVE -PHP_MINIT_FUNCTION(base64_intrin); -#endif - -PHPAPI extern zend_string *php_base64_encode(const unsigned char *, size_t); -PHPAPI extern zend_string *php_base64_decode_ex(const unsigned char *, size_t, zend_bool); - -static inline zend_string *php_base64_encode_str(const zend_string *str) { - return php_base64_encode((const unsigned char*)(ZSTR_VAL(str)), ZSTR_LEN(str)); -} - -static inline zend_string *php_base64_decode(const unsigned char *str, size_t len) { - return php_base64_decode_ex(str, len, 0); -} -static inline zend_string *php_base64_decode_str(const zend_string *str) { - return php_base64_decode_ex((const unsigned char*)(ZSTR_VAL(str)), ZSTR_LEN(str), 0); -} - -#endif /* BASE64_H */ diff --git a/7.4.27/mac/include/php/ext/standard/basic_functions.h b/7.4.27/mac/include/php/ext/standard/basic_functions.h deleted file mode 100644 index 7e0fa6b..0000000 --- a/7.4.27/mac/include/php/ext/standard/basic_functions.h +++ /dev/null @@ -1,274 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef BASIC_FUNCTIONS_H -#define BASIC_FUNCTIONS_H - -#include - -#ifdef HAVE_WCHAR_H -#include -#endif - -#include "php_filestat.h" - -#include "zend_highlight.h" - -#include "url_scanner_ex.h" - -#if defined(_WIN32) && !defined(__clang__) -#include -#endif - -extern zend_module_entry basic_functions_module; -#define basic_functions_module_ptr &basic_functions_module - -PHP_MINIT_FUNCTION(basic); -PHP_MSHUTDOWN_FUNCTION(basic); -PHP_RINIT_FUNCTION(basic); -PHP_RSHUTDOWN_FUNCTION(basic); -PHP_MINFO_FUNCTION(basic); - -PHP_FUNCTION(constant); -PHP_FUNCTION(sleep); -PHP_FUNCTION(usleep); -#if HAVE_NANOSLEEP -PHP_FUNCTION(time_nanosleep); -PHP_FUNCTION(time_sleep_until); -#endif -PHP_FUNCTION(flush); -#ifdef HAVE_INET_NTOP -PHP_NAMED_FUNCTION(zif_inet_ntop); -#endif -#ifdef HAVE_INET_PTON -PHP_NAMED_FUNCTION(php_inet_pton); -#endif -PHP_FUNCTION(ip2long); -PHP_FUNCTION(long2ip); - -/* system functions */ -PHP_FUNCTION(getenv); -PHP_FUNCTION(putenv); - -PHP_FUNCTION(getopt); - -PHP_FUNCTION(get_current_user); -PHP_FUNCTION(set_time_limit); - -PHP_FUNCTION(header_register_callback); - -PHP_FUNCTION(get_cfg_var); -PHP_FUNCTION(get_magic_quotes_runtime); -PHP_FUNCTION(get_magic_quotes_gpc); - -PHP_FUNCTION(error_log); -PHP_FUNCTION(error_get_last); -PHP_FUNCTION(error_clear_last); - -PHP_FUNCTION(call_user_func); -PHP_FUNCTION(call_user_func_array); -PHP_FUNCTION(forward_static_call); -PHP_FUNCTION(forward_static_call_array); - -PHP_FUNCTION(register_shutdown_function); -PHP_FUNCTION(highlight_file); -PHP_FUNCTION(highlight_string); -PHP_FUNCTION(php_strip_whitespace); -ZEND_API void php_get_highlight_struct(zend_syntax_highlighter_ini *syntax_highlighter_ini); - -PHP_FUNCTION(ini_get); -PHP_FUNCTION(ini_get_all); -PHP_FUNCTION(ini_set); -PHP_FUNCTION(ini_restore); -PHP_FUNCTION(get_include_path); -PHP_FUNCTION(set_include_path); -PHP_FUNCTION(restore_include_path); - -PHP_FUNCTION(print_r); -PHP_FUNCTION(fprintf); -PHP_FUNCTION(vfprintf); - -PHP_FUNCTION(connection_aborted); -PHP_FUNCTION(connection_status); -PHP_FUNCTION(ignore_user_abort); - -PHP_FUNCTION(getservbyname); -PHP_FUNCTION(getservbyport); -PHP_FUNCTION(getprotobyname); -PHP_FUNCTION(getprotobynumber); - -PHP_NAMED_FUNCTION(php_if_crc32); - -PHP_FUNCTION(register_tick_function); -PHP_FUNCTION(unregister_tick_function); -#ifdef HAVE_GETLOADAVG -PHP_FUNCTION(sys_getloadavg); -#endif - -PHP_FUNCTION(is_uploaded_file); -PHP_FUNCTION(move_uploaded_file); - -PHP_FUNCTION(net_get_interfaces); - -/* From the INI parser */ -PHP_FUNCTION(parse_ini_file); -PHP_FUNCTION(parse_ini_string); -#if ZEND_DEBUG -PHP_FUNCTION(config_get_hash); -#endif - -#if defined(PHP_WIN32) -PHP_FUNCTION(sapi_windows_cp_set); -PHP_FUNCTION(sapi_windows_cp_get); -PHP_FUNCTION(sapi_windows_cp_is_utf8); -PHP_FUNCTION(sapi_windows_cp_conv); -PHP_FUNCTION(sapi_windows_set_ctrl_handler); -PHP_FUNCTION(sapi_windows_generate_ctrl_event); -#endif - -PHP_FUNCTION(str_rot13); -PHP_FUNCTION(stream_get_filters); -PHP_FUNCTION(stream_filter_register); -PHP_FUNCTION(stream_bucket_make_writeable); -PHP_FUNCTION(stream_bucket_prepend); -PHP_FUNCTION(stream_bucket_append); -PHP_FUNCTION(stream_bucket_new); -PHP_MINIT_FUNCTION(user_filters); -PHP_RSHUTDOWN_FUNCTION(user_filters); -PHP_RSHUTDOWN_FUNCTION(browscap); - -/* Left for BC (not binary safe!) */ -PHPAPI int _php_error_log(int opt_err, char *message, char *opt, char *headers); -PHPAPI int _php_error_log_ex(int opt_err, char *message, size_t message_len, char *opt, char *headers); -PHPAPI int php_prefix_varname(zval *result, const zval *prefix, const char *var_name, size_t var_name_len, zend_bool add_underscore); - -#define MT_N (624) - -/* Deprecated type aliases -- use the standard types instead */ -typedef uint32_t php_uint32; -typedef int32_t php_int32; - -typedef struct _php_basic_globals { - HashTable *user_shutdown_function_names; - HashTable putenv_ht; - zval strtok_zval; - char *strtok_string; - zend_string *locale_string; /* current LC_CTYPE locale (or NULL for 'C') */ - zend_bool locale_changed; /* locale was changed and has to be restored */ - char *strtok_last; - char strtok_table[256]; - zend_ulong strtok_len; - char str_ebuf[40]; - zend_fcall_info array_walk_fci; - zend_fcall_info_cache array_walk_fci_cache; - zend_fcall_info user_compare_fci; - zend_fcall_info_cache user_compare_fci_cache; - zend_llist *user_tick_functions; - - zval active_ini_file_section; - - /* pageinfo.c */ - zend_long page_uid; - zend_long page_gid; - zend_long page_inode; - time_t page_mtime; - - /* filestat.c && main/streams/streams.c */ - char *CurrentStatFile, *CurrentLStatFile; - php_stream_statbuf ssb, lssb; - - /* mt_rand.c */ - uint32_t state[MT_N+1]; /* state vector + 1 extra to not violate ANSI C */ - uint32_t *next; /* next random value is computed from here */ - int left; /* can *next++ this many times before reloading */ - - zend_bool mt_rand_is_seeded; /* Whether mt_rand() has been seeded */ - zend_long mt_rand_mode; - - /* syslog.c */ - char *syslog_device; - - /* var.c */ - zend_class_entry *incomplete_class; - unsigned serialize_lock; /* whether to use the locally supplied var_hash instead (__sleep/__wakeup) */ - struct { - struct php_serialize_data *data; - unsigned level; - } serialize; - struct { - struct php_unserialize_data *data; - unsigned level; - } unserialize; - - /* url_scanner_ex.re */ - url_adapt_state_ex_t url_adapt_session_ex; - HashTable url_adapt_session_hosts_ht; - url_adapt_state_ex_t url_adapt_output_ex; - HashTable url_adapt_output_hosts_ht; - -#ifdef HAVE_MMAP - void *mmap_file; - size_t mmap_len; -#endif - - HashTable *user_filter_map; - - /* file.c */ -#if defined(_REENTRANT) && defined(HAVE_MBRLEN) && defined(HAVE_MBSTATE_T) - mbstate_t mblen_state; -#endif - - int umask; - zend_long unserialize_max_depth; -} php_basic_globals; - -#ifdef ZTS -#define BG(v) ZEND_TSRMG(basic_globals_id, php_basic_globals *, v) -PHPAPI extern int basic_globals_id; -#else -#define BG(v) (basic_globals.v) -PHPAPI extern php_basic_globals basic_globals; -#endif - -#if HAVE_PUTENV -typedef struct { - char *putenv_string; - char *previous_value; - char *key; - size_t key_len; -} putenv_entry; -#endif - -PHPAPI double php_get_nan(void); -PHPAPI double php_get_inf(void); - -typedef struct _php_shutdown_function_entry { - zval *arguments; - int arg_count; -} php_shutdown_function_entry; - -PHPAPI extern zend_bool register_user_shutdown_function(char *function_name, size_t function_len, php_shutdown_function_entry *shutdown_function_entry); -PHPAPI extern zend_bool remove_user_shutdown_function(char *function_name, size_t function_len); -PHPAPI extern zend_bool append_user_shutdown_function(php_shutdown_function_entry shutdown_function_entry); - -PHPAPI void php_call_shutdown_functions(void); -PHPAPI void php_free_shutdown_functions(void); - - -#endif /* BASIC_FUNCTIONS_H */ diff --git a/7.4.27/mac/include/php/ext/standard/crc32.h b/7.4.27/mac/include/php/ext/standard/crc32.h deleted file mode 100644 index 300af37..0000000 --- a/7.4.27/mac/include/php/ext/standard/crc32.h +++ /dev/null @@ -1,98 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Rasmus Lerdorf | - +----------------------------------------------------------------------+ -*/ - -/* - * This code implements the AUTODIN II polynomial - * The variable corresponding to the macro argument "crc" should - * be an unsigned long. - * Original code by Spencer Garrett - */ - -#define CRC32(crc, ch) (crc = (crc >> 8) ^ crc32tab[(crc ^ (ch)) & 0xff]) - -/* generated using the AUTODIN II polynomial - * x^32 + x^26 + x^23 + x^22 + x^16 + - * x^12 + x^11 + x^10 + x^8 + x^7 + x^5 + x^4 + x^2 + x^1 + 1 - */ - -static const unsigned int crc32tab[256] = { - 0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, - 0x076dc419, 0x706af48f, 0xe963a535, 0x9e6495a3, - 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, - 0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, - 0x1db71064, 0x6ab020f2, 0xf3b97148, 0x84be41de, - 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, - 0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, - 0x14015c4f, 0x63066cd9, 0xfa0f3d63, 0x8d080df5, - 0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172, - 0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, - 0x35b5a8fa, 0x42b2986c, 0xdbbbc9d6, 0xacbcf940, - 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59, - 0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116, - 0x21b4f4b5, 0x56b3c423, 0xcfba9599, 0xb8bda50f, - 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, - 0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, - 0x76dc4190, 0x01db7106, 0x98d220bc, 0xefd5102a, - 0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433, - 0x7807c9a2, 0x0f00f934, 0x9609a88e, 0xe10e9818, - 0x7f6a0dbb, 0x086d3d2d, 0x91646c97, 0xe6635c01, - 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, - 0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457, - 0x65b0d9c6, 0x12b7e950, 0x8bbeb8ea, 0xfcb9887c, - 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65, - 0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, - 0x4adfa541, 0x3dd895d7, 0xa4d1c46d, 0xd3d6f4fb, - 0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0, - 0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9, - 0x5005713c, 0x270241aa, 0xbe0b1010, 0xc90c2086, - 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, - 0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, - 0x59b33d17, 0x2eb40d81, 0xb7bd5c3b, 0xc0ba6cad, - 0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a, - 0xead54739, 0x9dd277af, 0x04db2615, 0x73dc1683, - 0xe3630b12, 0x94643b84, 0x0d6d6a3e, 0x7a6a5aa8, - 0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, - 0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe, - 0xf762575d, 0x806567cb, 0x196c3671, 0x6e6b06e7, - 0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc, - 0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, - 0xd6d6a3e8, 0xa1d1937e, 0x38d8c2c4, 0x4fdff252, - 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b, - 0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60, - 0xdf60efc3, 0xa867df55, 0x316e8eef, 0x4669be79, - 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, - 0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, - 0xc5ba3bbe, 0xb2bd0b28, 0x2bb45a92, 0x5cb36a04, - 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, - 0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x026d930a, - 0x9c0906a9, 0xeb0e363f, 0x72076785, 0x05005713, - 0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38, - 0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, - 0x86d3d2d4, 0xf1d4e242, 0x68ddb3f8, 0x1fda836e, - 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777, - 0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, - 0x8f659eff, 0xf862ae69, 0x616bffd3, 0x166ccf45, - 0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2, - 0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db, - 0xaed16a4a, 0xd9d65adc, 0x40df0b66, 0x37d83bf0, - 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, - 0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, - 0xbad03605, 0xcdd70693, 0x54de5729, 0x23d967bf, - 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94, - 0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d, -}; diff --git a/7.4.27/mac/include/php/ext/standard/credits.h b/7.4.27/mac/include/php/ext/standard/credits.h deleted file mode 100644 index dcf4669..0000000 --- a/7.4.27/mac/include/php/ext/standard/credits.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Rasmus Lerdorf | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef CREDITS_H -#define CREDITS_H - -#ifndef HAVE_CREDITS_DEFS -#define HAVE_CREDITS_DEFS - -#define PHP_CREDITS_GROUP (1<<0) -#define PHP_CREDITS_GENERAL (1<<1) -#define PHP_CREDITS_SAPI (1<<2) -#define PHP_CREDITS_MODULES (1<<3) -#define PHP_CREDITS_DOCS (1<<4) -#define PHP_CREDITS_FULLPAGE (1<<5) -#define PHP_CREDITS_QA (1<<6) -#define PHP_CREDITS_WEB (1<<7) -#define PHP_CREDITS_ALL 0xFFFFFFFF - -#endif /* HAVE_CREDITS_DEFS */ - -PHPAPI void php_print_credits(int flag); - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/credits_ext.h b/7.4.27/mac/include/php/ext/standard/credits_ext.h deleted file mode 100644 index 55b12c8..0000000 --- a/7.4.27/mac/include/php/ext/standard/credits_ext.h +++ /dev/null @@ -1,81 +0,0 @@ -/* - DO NOT EDIT THIS FILE! - - it has been automatically created by scripts/dev/credits from - the information found in the various ext/.../CREDITS and - sapi/.../CREDITS files - - if you want to change an entry you have to edit the appropriate - CREDITS file instead - -*/ - -CREDIT_LINE("BC Math", "Andi Gutmans"); -CREDIT_LINE("Bzip2", "Sterling Hughes"); -CREDIT_LINE("Calendar", "Shane Caraveo, Colin Viebrock, Hartmut Holzgraefe, Wez Furlong"); -CREDIT_LINE("COM and .Net", "Wez Furlong"); -CREDIT_LINE("ctype", "Hartmut Holzgraefe"); -CREDIT_LINE("cURL", "Sterling Hughes"); -CREDIT_LINE("Date/Time Support", "Derick Rethans"); -CREDIT_LINE("DB-LIB (MS SQL, Sybase)", "Wez Furlong, Frank M. Kromann, Adam Baratz"); -CREDIT_LINE("DBA", "Sascha Schumann, Marcus Boerger"); -CREDIT_LINE("DOM", "Christian Stocker, Rob Richards, Marcus Boerger"); -CREDIT_LINE("enchant", "Pierre-Alain Joye, Ilia Alshanetsky"); -CREDIT_LINE("EXIF", "Rasmus Lerdorf, Marcus Boerger"); -CREDIT_LINE("FFI", "Dmitry Stogov"); -CREDIT_LINE("fileinfo", "Ilia Alshanetsky, Pierre Alain Joye, Scott MacVicar, Derick Rethans, Anatol Belski"); -CREDIT_LINE("Firebird driver for PDO", "Ard Biesheuvel"); -CREDIT_LINE("FTP", "Stefan Esser, Andrew Skalski"); -CREDIT_LINE("GD imaging", "Rasmus Lerdorf, Stig Bakken, Jim Winstead, Jouni Ahto, Ilia Alshanetsky, Pierre-Alain Joye, Marcus Boerger"); -CREDIT_LINE("GetText", "Alex Plotnick"); -CREDIT_LINE("GNU GMP support", "Stanislav Malyshev"); -CREDIT_LINE("Iconv", "Rui Hirokawa, Stig Bakken, Moriyoshi Koizumi"); -CREDIT_LINE("IMAP", "Rex Logan, Mark Musone, Brian Wang, Kaj-Michael Lang, Antoni Pamies Olive, Rasmus Lerdorf, Andrew Skalski, Chuck Hagenbuch, Daniel R Kalowsky"); -CREDIT_LINE("Input Filter", "Rasmus Lerdorf, Derick Rethans, Pierre-Alain Joye, Ilia Alshanetsky"); -CREDIT_LINE("Internationalization", "Ed Batutis, Vladimir Iordanov, Dmitry Lakhtyuk, Stanislav Malyshev, Vadim Savchuk, Kirti Velankar"); -CREDIT_LINE("JSON", "Jakub Zelenka, Omar Kilani, Scott MacVicar"); -CREDIT_LINE("LDAP", "Amitay Isaacs, Eric Warnke, Rasmus Lerdorf, Gerrit Thomson, Stig Venaas"); -CREDIT_LINE("LIBXML", "Christian Stocker, Rob Richards, Marcus Boerger, Wez Furlong, Shane Caraveo"); -CREDIT_LINE("Multibyte String Functions", "Tsukada Takuya, Rui Hirokawa"); -CREDIT_LINE("MySQL driver for PDO", "George Schlossnagle, Wez Furlong, Ilia Alshanetsky, Johannes Schlueter"); -CREDIT_LINE("MySQLi", "Zak Greant, Georg Richter, Andrey Hristov, Ulf Wendel"); -CREDIT_LINE("MySQLnd", "Andrey Hristov, Ulf Wendel, Georg Richter, Johannes Schlüter"); -CREDIT_LINE("OCI8", "Stig Bakken, Thies C. Arntzen, Andy Sautins, David Benson, Maxim Maletsky, Harald Radi, Antony Dovgal, Andi Gutmans, Wez Furlong, Christopher Jones, Oracle Corporation"); -CREDIT_LINE("ODBC driver for PDO", "Wez Furlong"); -CREDIT_LINE("ODBC", "Stig Bakken, Andreas Karajannis, Frank M. Kromann, Daniel R. Kalowsky"); -CREDIT_LINE("Opcache", "Andi Gutmans, Zeev Suraski, Stanislav Malyshev, Dmitry Stogov, Xinchen Hui"); -CREDIT_LINE("OpenSSL", "Stig Venaas, Wez Furlong, Sascha Kettler, Scott MacVicar"); -CREDIT_LINE("Oracle (OCI) driver for PDO", "Wez Furlong"); -CREDIT_LINE("pcntl", "Jason Greene, Arnaud Le Blanc"); -CREDIT_LINE("Perl Compatible Regexps", "Andrei Zmievski"); -CREDIT_LINE("PHP Archive", "Gregory Beaver, Marcus Boerger"); -CREDIT_LINE("PHP Data Objects", "Wez Furlong, Marcus Boerger, Sterling Hughes, George Schlossnagle, Ilia Alshanetsky"); -CREDIT_LINE("PHP hash", "Sara Golemon, Rasmus Lerdorf, Stefan Esser, Michael Wallner, Scott MacVicar"); -CREDIT_LINE("Posix", "Kristian Koehntopp"); -CREDIT_LINE("PostgreSQL driver for PDO", "Edin Kadribasic, Ilia Alshanetsky"); -CREDIT_LINE("PostgreSQL", "Jouni Ahto, Zeev Suraski, Yasuo Ohgaki, Chris Kings-Lynne"); -CREDIT_LINE("Pspell", "Vlad Krupin"); -CREDIT_LINE("Readline", "Thies C. Arntzen"); -CREDIT_LINE("Reflection", "Marcus Boerger, Timm Friebe, George Schlossnagle, Andrei Zmievski, Johannes Schlueter"); -CREDIT_LINE("Sessions", "Sascha Schumann, Andrei Zmievski"); -CREDIT_LINE("Shared Memory Operations", "Slava Poliakov, Ilia Alshanetsky"); -CREDIT_LINE("SimpleXML", "Sterling Hughes, Marcus Boerger, Rob Richards"); -CREDIT_LINE("SNMP", "Rasmus Lerdorf, Harrie Hazewinkel, Mike Jackson, Steven Lawrance, Johann Hanne, Boris Lytochkin"); -CREDIT_LINE("SOAP", "Brad Lafountain, Shane Caraveo, Dmitry Stogov"); -CREDIT_LINE("Sockets", "Chris Vandomelen, Sterling Hughes, Daniel Beulshausen, Jason Greene"); -CREDIT_LINE("Sodium", "Frank Denis"); -CREDIT_LINE("SPL", "Marcus Boerger, Etienne Kneuss"); -CREDIT_LINE("SQLite 3.x driver for PDO", "Wez Furlong"); -CREDIT_LINE("SQLite3", "Scott MacVicar, Ilia Alshanetsky, Brad Dewar"); -CREDIT_LINE("System V Message based IPC", "Wez Furlong"); -CREDIT_LINE("System V Semaphores", "Tom May"); -CREDIT_LINE("System V Shared Memory", "Christian Cartus"); -CREDIT_LINE("tidy", "John Coggeshall, Ilia Alshanetsky"); -CREDIT_LINE("tokenizer", "Andrei Zmievski, Johannes Schlueter"); -CREDIT_LINE("XML", "Stig Bakken, Thies C. Arntzen, Sterling Hughes"); -CREDIT_LINE("XMLReader", "Rob Richards"); -CREDIT_LINE("xmlrpc", "Dan Libby"); -CREDIT_LINE("XMLWriter", "Rob Richards, Pierre-Alain Joye"); -CREDIT_LINE("XSL", "Christian Stocker, Rob Richards"); -CREDIT_LINE("Zip", "Pierre-Alain Joye, Remi Collet"); -CREDIT_LINE("Zlib", "Rasmus Lerdorf, Stefan Roehrich, Zeev Suraski, Jade Nicoletti, Michael Wallner"); diff --git a/7.4.27/mac/include/php/ext/standard/credits_sapi.h b/7.4.27/mac/include/php/ext/standard/credits_sapi.h deleted file mode 100644 index d6553ea..0000000 --- a/7.4.27/mac/include/php/ext/standard/credits_sapi.h +++ /dev/null @@ -1,19 +0,0 @@ -/* - DO NOT EDIT THIS FILE! - - it has been automatically created by scripts/dev/credits from - the information found in the various ext/.../CREDITS and - sapi/.../CREDITS files - - if you want to change an entry you have to edit the appropriate - CREDITS file instead - -*/ - -CREDIT_LINE("Apache 2.0 Handler", "Ian Holsman, Justin Erenkrantz (based on Apache 2.0 Filter code)"); -CREDIT_LINE("CGI / FastCGI", "Rasmus Lerdorf, Stig Bakken, Shane Caraveo, Dmitry Stogov"); -CREDIT_LINE("CLI", "Edin Kadribasic, Marcus Boerger, Johannes Schlueter, Moriyoshi Koizumi, Xinchen Hui"); -CREDIT_LINE("Embed", "Edin Kadribasic"); -CREDIT_LINE("FastCGI Process Manager", "Andrei Nigmatulin, dreamcat4, Antony Dovgal, Jerome Loyet"); -CREDIT_LINE("litespeed", "George Wang"); -CREDIT_LINE("phpdbg", "Felipe Pena, Joe Watkins, Bob Weinand"); diff --git a/7.4.27/mac/include/php/ext/standard/crypt_blowfish.h b/7.4.27/mac/include/php/ext/standard/crypt_blowfish.h deleted file mode 100644 index d540990..0000000 --- a/7.4.27/mac/include/php/ext/standard/crypt_blowfish.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - * Written by Solar Designer in 2000-2011. - * No copyright is claimed, and the software is hereby placed in the public - * domain. In case this attempt to disclaim copyright and place the software - * in the public domain is deemed null and void, then the software is - * Copyright (c) 2000-2011 Solar Designer and it is hereby released to the - * general public under the following terms: - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted. - * - * There's ABSOLUTELY NO WARRANTY, express or implied. - * - * See crypt_blowfish.c for more information. - */ - -#ifndef _CRYPT_BLOWFISH_H -#define _CRYPT_BLOWFISH_H - -#if 0 -extern int _crypt_output_magic(const char *setting, char *output, int size); -#endif -extern char *php_crypt_blowfish_rn(const char *key, const char *setting, - char *output, int size); -#if 0 -extern char *_crypt_gensalt_blowfish_rn(const char *prefix, - unsigned long count, - const char *input, int size, char *output, int output_size); -#endif - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/crypt_freesec.h b/7.4.27/mac/include/php/ext/standard/crypt_freesec.h deleted file mode 100644 index 69271f2..0000000 --- a/7.4.27/mac/include/php/ext/standard/crypt_freesec.h +++ /dev/null @@ -1,34 +0,0 @@ -#ifndef _CRYPT_FREESEC_H -#define _CRYPT_FREESEC_H - -#ifdef PHP_WIN32 -# ifndef inline -# define inline __inline -# endif -#endif - -#include "php_stdint.h" - -#define MD5_HASH_MAX_LEN 120 - -struct php_crypt_extended_data { - int initialized; - uint32_t saltbits; - uint32_t old_salt; - uint32_t en_keysl[16], en_keysr[16]; - uint32_t de_keysl[16], de_keysr[16]; - uint32_t old_rawkey0, old_rawkey1; - char output[21]; -}; - -/* - * _crypt_extended_init() must be called explicitly before first use of - * _crypt_extended_r(). - */ - -void _crypt_extended_init(void); - -char *_crypt_extended_r(const unsigned char *key, const char *setting, - struct php_crypt_extended_data *data); - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/css.h b/7.4.27/mac/include/php/ext/standard/css.h deleted file mode 100644 index 09fbb43..0000000 --- a/7.4.27/mac/include/php/ext/standard/css.h +++ /dev/null @@ -1,24 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Colin Viebrock | - +----------------------------------------------------------------------+ -*/ - -#ifndef CSS_H -#define CSS_H - -PHPAPI void php_info_print_css(void); - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/cyr_convert.h b/7.4.27/mac/include/php/ext/standard/cyr_convert.h deleted file mode 100644 index dcdc023..0000000 --- a/7.4.27/mac/include/php/ext/standard/cyr_convert.h +++ /dev/null @@ -1,24 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Kirill Maximov | - +----------------------------------------------------------------------+ -*/ - -#ifndef CYR_CONVERT_H -#define CYR_CONVERT_H - -PHP_FUNCTION(convert_cyr_string); - -#endif /* CYR_CONVERT_H */ diff --git a/7.4.27/mac/include/php/ext/standard/datetime.h b/7.4.27/mac/include/php/ext/standard/datetime.h deleted file mode 100644 index 1718aed..0000000 --- a/7.4.27/mac/include/php/ext/standard/datetime.h +++ /dev/null @@ -1,29 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef DATETIME_H -#define DATETIME_H - -#if HAVE_STRPTIME -PHP_FUNCTION(strptime); -#endif - -PHPAPI char *php_std_date(time_t t); - -#endif /* DATETIME_H */ diff --git a/7.4.27/mac/include/php/ext/standard/dl.h b/7.4.27/mac/include/php/ext/standard/dl.h deleted file mode 100644 index 0255523..0000000 --- a/7.4.27/mac/include/php/ext/standard/dl.h +++ /dev/null @@ -1,33 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Brian Schaffner | - | Shane Caraveo | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef DL_H -#define DL_H - -PHPAPI int php_load_extension(char *filename, int type, int start_now); -PHPAPI void php_dl(char *file, int type, zval *return_value, int start_now); -PHPAPI void *php_load_shlib(char *path, char **errp); - -/* dynamic loading functions */ -PHPAPI PHP_FUNCTION(dl); - -PHP_MINFO_FUNCTION(dl); - -#endif /* DL_H */ diff --git a/7.4.27/mac/include/php/ext/standard/exec.h b/7.4.27/mac/include/php/ext/standard/exec.h deleted file mode 100644 index 4849fe0..0000000 --- a/7.4.27/mac/include/php/ext/standard/exec.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Rasmus Lerdorf | - +----------------------------------------------------------------------+ -*/ - -#ifndef EXEC_H -#define EXEC_H - -PHP_FUNCTION(system); -PHP_FUNCTION(exec); -PHP_FUNCTION(escapeshellcmd); -PHP_FUNCTION(escapeshellarg); -PHP_FUNCTION(passthru); -PHP_FUNCTION(shell_exec); -PHP_FUNCTION(proc_open); -PHP_FUNCTION(proc_get_status); -PHP_FUNCTION(proc_close); -PHP_FUNCTION(proc_terminate); -PHP_FUNCTION(proc_nice); -PHP_MINIT_FUNCTION(proc_open); -PHP_MINIT_FUNCTION(exec); - -PHPAPI zend_string *php_escape_shell_cmd(char *); -PHPAPI zend_string *php_escape_shell_arg(char *); -PHPAPI int php_exec(int type, char *cmd, zval *array, zval *return_value); - -#endif /* EXEC_H */ diff --git a/7.4.27/mac/include/php/ext/standard/file.h b/7.4.27/mac/include/php/ext/standard/file.h deleted file mode 100644 index a414f72..0000000 --- a/7.4.27/mac/include/php/ext/standard/file.h +++ /dev/null @@ -1,146 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Rasmus Lerdorf | - +----------------------------------------------------------------------+ -*/ - -#ifndef FILE_H -#define FILE_H - -#include "php_network.h" - -PHP_MINIT_FUNCTION(file); -PHP_MSHUTDOWN_FUNCTION(file); - -PHP_FUNCTION(tempnam); -PHP_NAMED_FUNCTION(php_if_tmpfile); -PHP_NAMED_FUNCTION(php_if_fopen); -PHPAPI PHP_FUNCTION(fclose); -PHP_FUNCTION(popen); -PHP_FUNCTION(pclose); -PHPAPI PHP_FUNCTION(feof); -PHPAPI PHP_FUNCTION(fread); -PHPAPI PHP_FUNCTION(fgetc); -PHPAPI PHP_FUNCTION(fgets); -PHP_FUNCTION(fscanf); -PHPAPI PHP_FUNCTION(fgetss); -PHP_FUNCTION(fgetcsv); -PHP_FUNCTION(fputcsv); -PHPAPI PHP_FUNCTION(fwrite); -PHPAPI PHP_FUNCTION(fflush); -PHPAPI PHP_FUNCTION(rewind); -PHPAPI PHP_FUNCTION(ftell); -PHPAPI PHP_FUNCTION(fseek); -PHP_FUNCTION(mkdir); -PHP_FUNCTION(rmdir); -PHPAPI PHP_FUNCTION(fpassthru); -PHP_FUNCTION(readfile); -PHP_FUNCTION(umask); -PHP_FUNCTION(rename); -PHP_FUNCTION(unlink); -PHP_FUNCTION(copy); -PHP_FUNCTION(file); -PHP_FUNCTION(file_get_contents); -PHP_FUNCTION(file_put_contents); -PHP_FUNCTION(get_meta_tags); -PHP_FUNCTION(flock); -PHP_FUNCTION(fd_set); -PHP_FUNCTION(fd_isset); -#if HAVE_REALPATH || defined(ZTS) -PHP_FUNCTION(realpath); -#endif -#ifdef HAVE_FNMATCH -PHP_FUNCTION(fnmatch); -#endif -PHP_NAMED_FUNCTION(php_if_ftruncate); -PHP_NAMED_FUNCTION(php_if_fstat); -PHP_FUNCTION(sys_get_temp_dir); - -PHP_MINIT_FUNCTION(user_streams); - -PHPAPI int php_le_stream_context(void); -PHPAPI int php_set_sock_blocking(php_socket_t socketd, int block); -PHPAPI int php_copy_file(const char *src, const char *dest); -PHPAPI int php_copy_file_ex(const char *src, const char *dest, int src_chk); -PHPAPI int php_copy_file_ctx(const char *src, const char *dest, int src_chk, php_stream_context *ctx); -PHPAPI int php_mkdir_ex(const char *dir, zend_long mode, int options); -PHPAPI int php_mkdir(const char *dir, zend_long mode); - -#define PHP_CSV_NO_ESCAPE EOF -PHPAPI void php_fgetcsv(php_stream *stream, char delimiter, char enclosure, int escape_char, size_t buf_len, char *buf, zval *return_value); -PHPAPI ssize_t php_fputcsv(php_stream *stream, zval *fields, char delimiter, char enclosure, int escape_char); - -#define META_DEF_BUFSIZE 8192 - -#define PHP_FILE_USE_INCLUDE_PATH 1 -#define PHP_FILE_IGNORE_NEW_LINES 2 -#define PHP_FILE_SKIP_EMPTY_LINES 4 -#define PHP_FILE_APPEND 8 -#define PHP_FILE_NO_DEFAULT_CONTEXT 16 - -typedef enum _php_meta_tags_token { - TOK_EOF = 0, - TOK_OPENTAG, - TOK_CLOSETAG, - TOK_SLASH, - TOK_EQUAL, - TOK_SPACE, - TOK_ID, - TOK_STRING, - TOK_OTHER -} php_meta_tags_token; - -typedef struct _php_meta_tags_data { - php_stream *stream; - int ulc; - int lc; - char *input_buffer; - char *token_data; - int token_len; - int in_meta; -} php_meta_tags_data; - -php_meta_tags_token php_next_meta_token(php_meta_tags_data *); - -typedef struct { - int pclose_ret; - size_t def_chunk_size; - zend_bool auto_detect_line_endings; - zend_long default_socket_timeout; - char *user_agent; /* for the http wrapper */ - char *from_address; /* for the ftp and http wrappers */ - const char *user_stream_current_filename; /* for simple recursion protection */ - php_stream_context *default_context; - HashTable *stream_wrappers; /* per-request copy of url_stream_wrappers_hash */ - HashTable *stream_filters; /* per-request copy of stream_filters_hash */ - HashTable *wrapper_errors; /* key: wrapper address; value: linked list of char* */ - int pclose_wait; -#if defined(HAVE_GETHOSTBYNAME_R) - struct hostent tmp_host_info; - char *tmp_host_buf; - size_t tmp_host_buf_len; -#endif -} php_file_globals; - -#ifdef ZTS -#define FG(v) ZEND_TSRMG(file_globals_id, php_file_globals *, v) -extern PHPAPI int file_globals_id; -#else -#define FG(v) (file_globals.v) -extern PHPAPI php_file_globals file_globals; -#endif - - -#endif /* FILE_H */ diff --git a/7.4.27/mac/include/php/ext/standard/flock_compat.h b/7.4.27/mac/include/php/ext/standard/flock_compat.h deleted file mode 100644 index 49a68bf..0000000 --- a/7.4.27/mac/include/php/ext/standard/flock_compat.h +++ /dev/null @@ -1,64 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - +----------------------------------------------------------------------+ -*/ - -#ifndef FLOCK_COMPAT_H -#define FLOCK_COMPAT_H - -/* php_flock internally uses fcntl whether or not flock is available - * This way our php_flock even works on NFS files. - * More info: /usr/src/linux/Documentation - */ -PHPAPI int php_flock(int fd, int operation); - -#ifndef HAVE_FLOCK -# define LOCK_SH 1 -# define LOCK_EX 2 -# define LOCK_NB 4 -# define LOCK_UN 8 -PHPAPI int flock(int fd, int operation); -#endif - -/* Userland LOCK_* constants */ -#define PHP_LOCK_SH 1 -#define PHP_LOCK_EX 2 -#define PHP_LOCK_UN 3 -#define PHP_LOCK_NB 4 - -#ifdef PHP_WIN32 -# ifdef EWOULDBLOCK -# undef EWOULDBLOCK -# endif -# define EWOULDBLOCK WSAEWOULDBLOCK -# define fsync _commit -# define ftruncate(a, b) chsize(a, b) -#endif /* defined(PHP_WIN32) */ - -#if !HAVE_INET_ATON -#if HAVE_NETINET_IN_H -#include -#endif -#if HAVE_ARPA_INET_H -#include -#endif - -#ifndef PHP_WIN32 -extern int inet_aton(const char *, struct in_addr *); -#endif -#endif - -#endif /* FLOCK_COMPAT_H */ diff --git a/7.4.27/mac/include/php/ext/standard/fsock.h b/7.4.27/mac/include/php/ext/standard/fsock.h deleted file mode 100644 index b6fee88..0000000 --- a/7.4.27/mac/include/php/ext/standard/fsock.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Paul Panotzki - Bunyip Information Systems | - | Jim Winstead | - | Wez Furlong | - +----------------------------------------------------------------------+ -*/ - -#ifndef FSOCK_H -#define FSOCK_H - -#include "file.h" - -#include "php_network.h" - -PHP_FUNCTION(fsockopen); -PHP_FUNCTION(pfsockopen); - -#endif /* FSOCK_H */ diff --git a/7.4.27/mac/include/php/ext/standard/head.h b/7.4.27/mac/include/php/ext/standard/head.h deleted file mode 100644 index 824a7e8..0000000 --- a/7.4.27/mac/include/php/ext/standard/head.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Rasmus Lerdorf | - +----------------------------------------------------------------------+ -*/ - -#ifndef HEAD_H -#define HEAD_H - -#define COOKIE_EXPIRES "; expires=" -#define COOKIE_MAX_AGE "; Max-Age=" -#define COOKIE_DOMAIN "; domain=" -#define COOKIE_PATH "; path=" -#define COOKIE_SECURE "; secure" -#define COOKIE_HTTPONLY "; HttpOnly" -#define COOKIE_SAMESITE "; SameSite=" - -extern PHP_RINIT_FUNCTION(head); -PHP_FUNCTION(header); -PHP_FUNCTION(header_remove); -PHP_FUNCTION(setcookie); -PHP_FUNCTION(setrawcookie); -PHP_FUNCTION(headers_sent); -PHP_FUNCTION(headers_list); -PHP_FUNCTION(http_response_code); - -PHPAPI int php_header(void); -PHPAPI int php_setcookie(zend_string *name, zend_string *value, time_t expires, zend_string *path, zend_string *domain, int secure, int httponly, zend_string *samesite, int url_encode); - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/hrtime.h b/7.4.27/mac/include/php/ext/standard/hrtime.h deleted file mode 100644 index edd68aa..0000000 --- a/7.4.27/mac/include/php/ext/standard/hrtime.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Niklas Keller | - | Author: Anatol Belski | - +----------------------------------------------------------------------+ -*/ - -#ifndef HRTIME_H -#define HRTIME_H - -#define PHP_HRTIME_PLATFORM_POSIX 0 -#define PHP_HRTIME_PLATFORM_WINDOWS 0 -#define PHP_HRTIME_PLATFORM_APPLE 0 -#define PHP_HRTIME_PLATFORM_HPUX 0 -#define PHP_HRTIME_PLATFORM_AIX 0 - -#if defined(_POSIX_TIMERS) && ((_POSIX_TIMERS > 0) || defined(__OpenBSD__)) && defined(_POSIX_MONOTONIC_CLOCK) && defined(CLOCK_MONOTONIC) -# undef PHP_HRTIME_PLATFORM_POSIX -# define PHP_HRTIME_PLATFORM_POSIX 1 -#elif defined(_WIN32) || defined(_WIN64) -# undef PHP_HRTIME_PLATFORM_WINDOWS -# define PHP_HRTIME_PLATFORM_WINDOWS 1 -#elif defined(__APPLE__) -# undef PHP_HRTIME_PLATFORM_APPLE -# define PHP_HRTIME_PLATFORM_APPLE 1 -#elif (defined(__hpux) || defined(hpux)) || ((defined(__sun__) || defined(__sun) || defined(sun)) && (defined(__SVR4) || defined(__svr4__))) -# undef PHP_HRTIME_PLATFORM_HPUX -# define PHP_HRTIME_PLATFORM_HPUX 1 -#elif defined(_AIX) -# undef PHP_HRTIME_PLATFORM_AIX -# define PHP_HRTIME_PLATFORM_AIX 1 -#endif - -#define HRTIME_AVAILABLE (PHP_HRTIME_PLATFORM_POSIX || PHP_HRTIME_PLATFORM_WINDOWS || PHP_HRTIME_PLATFORM_APPLE || PHP_HRTIME_PLATFORM_HPUX || PHP_HRTIME_PLATFORM_AIX) - -BEGIN_EXTERN_C() - -typedef uint64_t php_hrtime_t; - -PHPAPI php_hrtime_t php_hrtime_current(void); - -PHP_MINIT_FUNCTION(hrtime); - -PHP_FUNCTION(hrtime); - -END_EXTERN_C() - -#endif /* HRTIME_H */ diff --git a/7.4.27/mac/include/php/ext/standard/html.h b/7.4.27/mac/include/php/ext/standard/html.h deleted file mode 100644 index df0e9ba..0000000 --- a/7.4.27/mac/include/php/ext/standard/html.h +++ /dev/null @@ -1,60 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Rasmus Lerdorf | - +----------------------------------------------------------------------+ -*/ - -#ifndef HTML_H -#define HTML_H - -#define ENT_HTML_QUOTE_NONE 0 -#define ENT_HTML_QUOTE_SINGLE 1 -#define ENT_HTML_QUOTE_DOUBLE 2 -#define ENT_HTML_IGNORE_ERRORS 4 -#define ENT_HTML_SUBSTITUTE_ERRORS 8 -#define ENT_HTML_DOC_TYPE_MASK (16|32) -#define ENT_HTML_DOC_HTML401 0 -#define ENT_HTML_DOC_XML1 16 -#define ENT_HTML_DOC_XHTML 32 -#define ENT_HTML_DOC_HTML5 (16|32) -/* reserve bit 6 */ -#define ENT_HTML_SUBSTITUTE_DISALLOWED_CHARS 128 - - -#define ENT_COMPAT ENT_HTML_QUOTE_DOUBLE -#define ENT_QUOTES (ENT_HTML_QUOTE_DOUBLE | ENT_HTML_QUOTE_SINGLE) -#define ENT_NOQUOTES ENT_HTML_QUOTE_NONE -#define ENT_IGNORE ENT_HTML_IGNORE_ERRORS -#define ENT_SUBSTITUTE ENT_HTML_SUBSTITUTE_ERRORS -#define ENT_HTML401 0 -#define ENT_XML1 16 -#define ENT_XHTML 32 -#define ENT_HTML5 (16|32) -#define ENT_DISALLOWED 128 - -void register_html_constants(INIT_FUNC_ARGS); - -PHP_FUNCTION(htmlspecialchars); -PHP_FUNCTION(htmlentities); -PHP_FUNCTION(htmlspecialchars_decode); -PHP_FUNCTION(html_entity_decode); -PHP_FUNCTION(get_html_translation_table); - -PHPAPI zend_string *php_escape_html_entities(unsigned char *old, size_t oldlen, int all, int flags, char *hint_charset); -PHPAPI zend_string *php_escape_html_entities_ex(unsigned char *old, size_t oldlen, int all, int flags, char *hint_charset, zend_bool double_encode); -PHPAPI zend_string *php_unescape_html_entities(zend_string *str, int all, int flags, char *hint_charset); -PHPAPI unsigned int php_next_utf8_char(const unsigned char *str, size_t str_len, size_t *cursor, int *status); - -#endif /* HTML_H */ diff --git a/7.4.27/mac/include/php/ext/standard/html_tables.h b/7.4.27/mac/include/php/ext/standard/html_tables.h deleted file mode 100644 index b9daaf7..0000000 --- a/7.4.27/mac/include/php/ext/standard/html_tables.h +++ /dev/null @@ -1,6232 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ -*/ - -#ifndef HTML_TABLES_H -#define HTML_TABLES_H - -/************************************************************************** -*************************************************************************** -** THIS FILE IS AUTOMATICALLY GENERATED. DO NOT MODIFY IT. ** -*************************************************************************** -** Please change html_tables/html_table_gen.php instead and then ** -** run it in order to generate this file ** -*************************************************************************** -**************************************************************************/ - -enum entity_charset { cs_utf_8, cs_8859_1, cs_cp1252, cs_8859_15, cs_cp1251, - cs_8859_5, cs_cp866, cs_macroman, cs_koi8r, cs_big5, - cs_gb2312, cs_big5hkscs, cs_sjis, cs_eucjp, - cs_numelems /* used to count the number of charsets */ - }; -#define CHARSET_UNICODE_COMPAT(cs) ((cs) <= cs_8859_1) -#define CHARSET_SINGLE_BYTE(cs) ((cs) > cs_utf_8 && (cs) < cs_big5) -#define CHARSET_PARTIAL_SUPPORT(cs) ((cs) >= cs_big5) - -static const struct { - const char *codeset; - uint32_t codeset_len; - enum entity_charset charset; -} charset_map[] = { - { "ISO-8859-1", sizeof("ISO-8859-1")-1, cs_8859_1 }, - { "ISO8859-1", sizeof("ISO8859-1")-1, cs_8859_1 }, - { "ISO-8859-15", sizeof("ISO-8859-15")-1, cs_8859_15 }, - { "ISO8859-15", sizeof("ISO8859-15")-1, cs_8859_15 }, - { "utf-8", sizeof("utf-8")-1, cs_utf_8 }, - { "cp1252", sizeof("cp1252")-1, cs_cp1252 }, - { "Windows-1252", sizeof("Windows-1252")-1, cs_cp1252 }, - { "1252", sizeof("1252")-1, cs_cp1252 }, - { "BIG5", sizeof("BIG5")-1, cs_big5 }, - { "950", sizeof("950")-1, cs_big5 }, - { "GB2312", sizeof("GB2312")-1, cs_gb2312 }, - { "936", sizeof("936")-1, cs_gb2312 }, - { "BIG5-HKSCS", sizeof("BIG5-HKSCS")-1, cs_big5hkscs }, - { "Shift_JIS", sizeof("Shift_JIS")-1, cs_sjis }, - { "SJIS", sizeof("SJIS")-1, cs_sjis }, - { "932", sizeof("932")-1, cs_sjis }, - { "SJIS-win", sizeof("SJIS-win")-1, cs_sjis }, - { "CP932", sizeof("CP932")-1, cs_sjis }, - { "EUCJP", sizeof("EUCJP")-1, cs_eucjp }, - { "EUC-JP", sizeof("EUC-JP")-1, cs_eucjp }, - { "eucJP-win", sizeof("eucJP-win")-1, cs_eucjp }, - { "KOI8-R", sizeof("KOI8-R")-1, cs_koi8r }, - { "koi8-ru", sizeof("koi8-ru")-1, cs_koi8r }, - { "koi8r", sizeof("koi8r")-1, cs_koi8r }, - { "cp1251", sizeof("cp1251")-1, cs_cp1251 }, - { "Windows-1251", sizeof("Windows-1251")-1, cs_cp1251 }, - { "win-1251", sizeof("win-1251")-1, cs_cp1251 }, - { "iso8859-5", sizeof("iso8859-5")-1, cs_8859_5 }, - { "iso-8859-5", sizeof("iso-8859-5")-1, cs_8859_5 }, - { "cp866", sizeof("cp866")-1, cs_cp866 }, - { "866", sizeof("866")-1, cs_cp866 }, - { "ibm866", sizeof("ibm866")-1, cs_cp866 }, - { "MacRoman", sizeof("MacRoman")-1, cs_macroman } -}; - -/* longest entity name length excluding & and ; */ -#define LONGEST_ENTITY_LENGTH 31 - -/* Definitions for mappings *to* Unicode. - * The origin charset must have at most 256 code points. - * The multi-byte encodings are not supported */ -typedef struct { - unsigned short uni_cp[64]; -} enc_to_uni_stage2; - -typedef struct { - const enc_to_uni_stage2 *inner[4]; -} enc_to_uni; - -/* bits 7-8 bits (only single bytes encodings supported )*/ -#define ENT_ENC_TO_UNI_STAGE1(k) ((k & 0xC0) >> 6) -/* bits 1-6 */ -#define ENT_ENC_TO_UNI_STAGE2(k) ((k) & 0x3F) - -/* {{{ Mappings *to* Unicode for ISO-8859-1 */ - -/* {{{ Stage 2 tables for ISO-8859-1 */ - -static const enc_to_uni_stage2 enc_to_uni_s2_iso88591_00 = { { - 0x0000, 0x0001, 0x0002, 0x0003, 0x0004, 0x0005, - 0x0006, 0x0007, 0x0008, 0x0009, 0x000A, 0x000B, - 0x000C, 0x000D, 0x000E, 0x000F, 0x0010, 0x0011, - 0x0012, 0x0013, 0x0014, 0x0015, 0x0016, 0x0017, - 0x0018, 0x0019, 0x001A, 0x001B, 0x001C, 0x001D, - 0x001E, 0x001F, 0x0020, 0x0021, 0x0022, 0x0023, - 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, - 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F, - 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, - 0x0036, 0x0037, 0x0038, 0x0039, 0x003A, 0x003B, - 0x003C, 0x003D, 0x003E, 0x003F, -} }; - -static const enc_to_uni_stage2 enc_to_uni_s2_iso88591_40 = { { - 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, - 0x0046, 0x0047, 0x0048, 0x0049, 0x004A, 0x004B, - 0x004C, 0x004D, 0x004E, 0x004F, 0x0050, 0x0051, - 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, - 0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, - 0x005E, 0x005F, 0x0060, 0x0061, 0x0062, 0x0063, - 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, - 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F, - 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, - 0x0076, 0x0077, 0x0078, 0x0079, 0x007A, 0x007B, - 0x007C, 0x007D, 0x007E, 0x007F, -} }; - -static const enc_to_uni_stage2 enc_to_uni_s2_iso88591_80 = { { - 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, - 0x0086, 0x0087, 0x0088, 0x0089, 0x008A, 0x008B, - 0x008C, 0x008D, 0x008E, 0x008F, 0x0090, 0x0091, - 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097, - 0x0098, 0x0099, 0x009A, 0x009B, 0x009C, 0x009D, - 0x009E, 0x009F, 0x00A0, 0x00A1, 0x00A2, 0x00A3, - 0x00A4, 0x00A5, 0x00A6, 0x00A7, 0x00A8, 0x00A9, - 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF, - 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, - 0x00B6, 0x00B7, 0x00B8, 0x00B9, 0x00BA, 0x00BB, - 0x00BC, 0x00BD, 0x00BE, 0x00BF, -} }; - -static const enc_to_uni_stage2 enc_to_uni_s2_iso88591_C0 = { { - 0x00C0, 0x00C1, 0x00C2, 0x00C3, 0x00C4, 0x00C5, - 0x00C6, 0x00C7, 0x00C8, 0x00C9, 0x00CA, 0x00CB, - 0x00CC, 0x00CD, 0x00CE, 0x00CF, 0x00D0, 0x00D1, - 0x00D2, 0x00D3, 0x00D4, 0x00D5, 0x00D6, 0x00D7, - 0x00D8, 0x00D9, 0x00DA, 0x00DB, 0x00DC, 0x00DD, - 0x00DE, 0x00DF, 0x00E0, 0x00E1, 0x00E2, 0x00E3, - 0x00E4, 0x00E5, 0x00E6, 0x00E7, 0x00E8, 0x00E9, - 0x00EA, 0x00EB, 0x00EC, 0x00ED, 0x00EE, 0x00EF, - 0x00F0, 0x00F1, 0x00F2, 0x00F3, 0x00F4, 0x00F5, - 0x00F6, 0x00F7, 0x00F8, 0x00F9, 0x00FA, 0x00FB, - 0x00FC, 0x00FD, 0x00FE, 0x00FF, -} }; - -/* end of stage 2 tables for ISO-8859-1 }}} */ - -/* {{{ Stage 1 table for ISO-8859-1 */ -static const enc_to_uni enc_to_uni_iso88591 = { { - &enc_to_uni_s2_iso88591_00, - &enc_to_uni_s2_iso88591_40, - &enc_to_uni_s2_iso88591_80, - &enc_to_uni_s2_iso88591_C0 } -}; -/* end of stage 1 table for ISO-8859-1 }}} */ - -/* {{{ Mappings *to* Unicode for ISO-8859-5 */ - -/* {{{ Stage 2 tables for ISO-8859-5 */ - -static const enc_to_uni_stage2 enc_to_uni_s2_iso88595_80 = { { - 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, - 0x0086, 0x0087, 0x0088, 0x0089, 0x008A, 0x008B, - 0x008C, 0x008D, 0x008E, 0x008F, 0x0090, 0x0091, - 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097, - 0x0098, 0x0099, 0x009A, 0x009B, 0x009C, 0x009D, - 0x009E, 0x009F, 0x00A0, 0x0401, 0x0402, 0x0403, - 0x0404, 0x0405, 0x0406, 0x0407, 0x0408, 0x0409, - 0x040A, 0x040B, 0x040C, 0x00AD, 0x040E, 0x040F, - 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, - 0x0416, 0x0417, 0x0418, 0x0419, 0x041A, 0x041B, - 0x041C, 0x041D, 0x041E, 0x041F, -} }; - -static const enc_to_uni_stage2 enc_to_uni_s2_iso88595_C0 = { { - 0x0420, 0x0421, 0x0422, 0x0423, 0x0424, 0x0425, - 0x0426, 0x0427, 0x0428, 0x0429, 0x042A, 0x042B, - 0x042C, 0x042D, 0x042E, 0x042F, 0x0430, 0x0431, - 0x0432, 0x0433, 0x0434, 0x0435, 0x0436, 0x0437, - 0x0438, 0x0439, 0x043A, 0x043B, 0x043C, 0x043D, - 0x043E, 0x043F, 0x0440, 0x0441, 0x0442, 0x0443, - 0x0444, 0x0445, 0x0446, 0x0447, 0x0448, 0x0449, - 0x044A, 0x044B, 0x044C, 0x044D, 0x044E, 0x044F, - 0x2116, 0x0451, 0x0452, 0x0453, 0x0454, 0x0455, - 0x0456, 0x0457, 0x0458, 0x0459, 0x045A, 0x045B, - 0x045C, 0x00A7, 0x045E, 0x045F, -} }; - -/* end of stage 2 tables for ISO-8859-5 }}} */ - -/* {{{ Stage 1 table for ISO-8859-5 */ -static const enc_to_uni enc_to_uni_iso88595 = { { - &enc_to_uni_s2_iso88591_00, - &enc_to_uni_s2_iso88591_40, - &enc_to_uni_s2_iso88595_80, - &enc_to_uni_s2_iso88595_C0 } -}; -/* end of stage 1 table for ISO-8859-5 }}} */ - -/* {{{ Mappings *to* Unicode for ISO-8859-15 */ - -/* {{{ Stage 2 tables for ISO-8859-15 */ - -static const enc_to_uni_stage2 enc_to_uni_s2_iso885915_80 = { { - 0x0080, 0x0081, 0x0082, 0x0083, 0x0084, 0x0085, - 0x0086, 0x0087, 0x0088, 0x0089, 0x008A, 0x008B, - 0x008C, 0x008D, 0x008E, 0x008F, 0x0090, 0x0091, - 0x0092, 0x0093, 0x0094, 0x0095, 0x0096, 0x0097, - 0x0098, 0x0099, 0x009A, 0x009B, 0x009C, 0x009D, - 0x009E, 0x009F, 0x00A0, 0x00A1, 0x00A2, 0x00A3, - 0x20AC, 0x00A5, 0x0160, 0x00A7, 0x0161, 0x00A9, - 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF, - 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x017D, 0x00B5, - 0x00B6, 0x00B7, 0x017E, 0x00B9, 0x00BA, 0x00BB, - 0x0152, 0x0153, 0x0178, 0x00BF, -} }; - -/* end of stage 2 tables for ISO-8859-15 }}} */ - -/* {{{ Stage 1 table for ISO-8859-15 */ -static const enc_to_uni enc_to_uni_iso885915 = { { - &enc_to_uni_s2_iso88591_00, - &enc_to_uni_s2_iso88591_40, - &enc_to_uni_s2_iso885915_80, - &enc_to_uni_s2_iso88591_C0 } -}; -/* end of stage 1 table for ISO-8859-15 }}} */ - -/* {{{ Mappings *to* Unicode for Windows-1252 */ - -/* {{{ Stage 2 tables for Windows-1252 */ - -static const enc_to_uni_stage2 enc_to_uni_s2_win1252_80 = { { - 0x20AC, 0xFFFF, 0x201A, 0x0192, 0x201E, 0x2026, - 0x2020, 0x2021, 0x02C6, 0x2030, 0x0160, 0x2039, - 0x0152, 0xFFFF, 0x017D, 0xFFFF, 0xFFFF, 0x2018, - 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014, - 0x02DC, 0x2122, 0x0161, 0x203A, 0x0153, 0xFFFF, - 0x017E, 0x0178, 0x00A0, 0x00A1, 0x00A2, 0x00A3, - 0x00A4, 0x00A5, 0x00A6, 0x00A7, 0x00A8, 0x00A9, - 0x00AA, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x00AF, - 0x00B0, 0x00B1, 0x00B2, 0x00B3, 0x00B4, 0x00B5, - 0x00B6, 0x00B7, 0x00B8, 0x00B9, 0x00BA, 0x00BB, - 0x00BC, 0x00BD, 0x00BE, 0x00BF, -} }; - -/* end of stage 2 tables for Windows-1252 }}} */ - -/* {{{ Stage 1 table for Windows-1252 */ -static const enc_to_uni enc_to_uni_win1252 = { { - &enc_to_uni_s2_iso88591_00, - &enc_to_uni_s2_iso88591_40, - &enc_to_uni_s2_win1252_80, - &enc_to_uni_s2_iso88591_C0 } -}; -/* end of stage 1 table for Windows-1252 }}} */ - -/* {{{ Mappings *to* Unicode for Windows-1251 */ - -/* {{{ Stage 2 tables for Windows-1251 */ - -static const enc_to_uni_stage2 enc_to_uni_s2_win1251_80 = { { - 0x0402, 0x0403, 0x201A, 0x0453, 0x201E, 0x2026, - 0x2020, 0x2021, 0x20AC, 0x2030, 0x0409, 0x2039, - 0x040A, 0x040C, 0x040B, 0x040F, 0x0452, 0x2018, - 0x2019, 0x201C, 0x201D, 0x2022, 0x2013, 0x2014, - 0xFFFF, 0x2122, 0x0459, 0x203A, 0x045A, 0x045C, - 0x045B, 0x045F, 0x00A0, 0x040E, 0x045E, 0x0408, - 0x00A4, 0x0490, 0x00A6, 0x00A7, 0x0401, 0x00A9, - 0x0404, 0x00AB, 0x00AC, 0x00AD, 0x00AE, 0x0407, - 0x00B0, 0x00B1, 0x0406, 0x0456, 0x0491, 0x00B5, - 0x00B6, 0x00B7, 0x0451, 0x2116, 0x0454, 0x00BB, - 0x0458, 0x0405, 0x0455, 0x0457, -} }; - -static const enc_to_uni_stage2 enc_to_uni_s2_win1251_C0 = { { - 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, - 0x0416, 0x0417, 0x0418, 0x0419, 0x041A, 0x041B, - 0x041C, 0x041D, 0x041E, 0x041F, 0x0420, 0x0421, - 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, - 0x0428, 0x0429, 0x042A, 0x042B, 0x042C, 0x042D, - 0x042E, 0x042F, 0x0430, 0x0431, 0x0432, 0x0433, - 0x0434, 0x0435, 0x0436, 0x0437, 0x0438, 0x0439, - 0x043A, 0x043B, 0x043C, 0x043D, 0x043E, 0x043F, - 0x0440, 0x0441, 0x0442, 0x0443, 0x0444, 0x0445, - 0x0446, 0x0447, 0x0448, 0x0449, 0x044A, 0x044B, - 0x044C, 0x044D, 0x044E, 0x044F, -} }; - -/* end of stage 2 tables for Windows-1251 }}} */ - -/* {{{ Stage 1 table for Windows-1251 */ -static const enc_to_uni enc_to_uni_win1251 = { { - &enc_to_uni_s2_iso88591_00, - &enc_to_uni_s2_iso88591_40, - &enc_to_uni_s2_win1251_80, - &enc_to_uni_s2_win1251_C0 } -}; -/* end of stage 1 table for Windows-1251 }}} */ - -/* {{{ Mappings *to* Unicode for KOI8-R */ - -/* {{{ Stage 2 tables for KOI8-R */ - -static const enc_to_uni_stage2 enc_to_uni_s2_koi8r_80 = { { - 0x2500, 0x2502, 0x250C, 0x2510, 0x2514, 0x2518, - 0x251C, 0x2524, 0x252C, 0x2534, 0x253C, 0x2580, - 0x2584, 0x2588, 0x258C, 0x2590, 0x2591, 0x2592, - 0x2593, 0x2320, 0x25A0, 0x2219, 0x221A, 0x2248, - 0x2264, 0x2265, 0x00A0, 0x2321, 0x00B0, 0x00B2, - 0x00B7, 0x00F7, 0x2550, 0x2551, 0x2552, 0x0451, - 0x2553, 0x2554, 0x2555, 0x2556, 0x2557, 0x2558, - 0x2559, 0x255A, 0x255B, 0x255C, 0x255D, 0x255E, - 0x255F, 0x2560, 0x2561, 0x0401, 0x2562, 0x2563, - 0x2564, 0x2565, 0x2566, 0x2567, 0x2568, 0x2569, - 0x256A, 0x256B, 0x256C, 0x00A9, -} }; - -static const enc_to_uni_stage2 enc_to_uni_s2_koi8r_C0 = { { - 0x044E, 0x0430, 0x0431, 0x0446, 0x0434, 0x0435, - 0x0444, 0x0433, 0x0445, 0x0438, 0x0439, 0x043A, - 0x043B, 0x043C, 0x043D, 0x043E, 0x043F, 0x044F, - 0x0440, 0x0441, 0x0442, 0x0443, 0x0436, 0x0432, - 0x044C, 0x044B, 0x0437, 0x0448, 0x044D, 0x0449, - 0x0447, 0x044A, 0x042E, 0x0410, 0x0411, 0x0426, - 0x0414, 0x0415, 0x0424, 0x0413, 0x0425, 0x0418, - 0x0419, 0x041A, 0x041B, 0x041C, 0x041D, 0x041E, - 0x041F, 0x042F, 0x0420, 0x0421, 0x0422, 0x0423, - 0x0416, 0x0412, 0x042C, 0x042B, 0x0417, 0x0428, - 0x042D, 0x0429, 0x0427, 0x042A, -} }; - -/* end of stage 2 tables for KOI8-R }}} */ - -/* {{{ Stage 1 table for KOI8-R */ -static const enc_to_uni enc_to_uni_koi8r = { { - &enc_to_uni_s2_iso88591_00, - &enc_to_uni_s2_iso88591_40, - &enc_to_uni_s2_koi8r_80, - &enc_to_uni_s2_koi8r_C0 } -}; -/* end of stage 1 table for KOI8-R }}} */ - -/* {{{ Mappings *to* Unicode for CP-866 */ - -/* {{{ Stage 2 tables for CP-866 */ - -static const enc_to_uni_stage2 enc_to_uni_s2_cp866_80 = { { - 0x0410, 0x0411, 0x0412, 0x0413, 0x0414, 0x0415, - 0x0416, 0x0417, 0x0418, 0x0419, 0x041A, 0x041B, - 0x041C, 0x041D, 0x041E, 0x041F, 0x0420, 0x0421, - 0x0422, 0x0423, 0x0424, 0x0425, 0x0426, 0x0427, - 0x0428, 0x0429, 0x042A, 0x042B, 0x042C, 0x042D, - 0x042E, 0x042F, 0x0430, 0x0431, 0x0432, 0x0433, - 0x0434, 0x0435, 0x0436, 0x0437, 0x0438, 0x0439, - 0x043A, 0x043B, 0x043C, 0x043D, 0x043E, 0x043F, - 0x2591, 0x2592, 0x2593, 0x2502, 0x2524, 0x2561, - 0x2562, 0x2556, 0x2555, 0x2563, 0x2551, 0x2557, - 0x255D, 0x255C, 0x255B, 0x2510, -} }; - -static const enc_to_uni_stage2 enc_to_uni_s2_cp866_C0 = { { - 0x2514, 0x2534, 0x252C, 0x251C, 0x2500, 0x253C, - 0x255E, 0x255F, 0x255A, 0x2554, 0x2569, 0x2566, - 0x2560, 0x2550, 0x256C, 0x2567, 0x2568, 0x2564, - 0x2565, 0x2559, 0x2558, 0x2552, 0x2553, 0x256B, - 0x256A, 0x2518, 0x250C, 0x2588, 0x2584, 0x258C, - 0x2590, 0x2580, 0x0440, 0x0441, 0x0442, 0x0443, - 0x0444, 0x0445, 0x0446, 0x0447, 0x0448, 0x0449, - 0x044A, 0x044B, 0x044C, 0x044D, 0x044E, 0x044F, - 0x0401, 0x0451, 0x0404, 0x0454, 0x0407, 0x0457, - 0x040E, 0x045E, 0x00B0, 0x2219, 0x00B7, 0x221A, - 0x2116, 0x00A4, 0x25A0, 0x00A0, -} }; - -/* end of stage 2 tables for CP-866 }}} */ - -/* {{{ Stage 1 table for CP-866 */ -static const enc_to_uni enc_to_uni_cp866 = { { - &enc_to_uni_s2_iso88591_00, - &enc_to_uni_s2_iso88591_40, - &enc_to_uni_s2_cp866_80, - &enc_to_uni_s2_cp866_C0 } -}; -/* end of stage 1 table for CP-866 }}} */ - -/* {{{ Mappings *to* Unicode for MacRoman */ - -/* {{{ Stage 2 tables for MacRoman */ - -static const enc_to_uni_stage2 enc_to_uni_s2_macroman_00 = { { - 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, - 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, - 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, - 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, - 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, 0xFFFF, - 0xFFFF, 0xFFFF, 0x0020, 0x0021, 0x0022, 0x0023, - 0x0024, 0x0025, 0x0026, 0x0027, 0x0028, 0x0029, - 0x002A, 0x002B, 0x002C, 0x002D, 0x002E, 0x002F, - 0x0030, 0x0031, 0x0032, 0x0033, 0x0034, 0x0035, - 0x0036, 0x0037, 0x0038, 0x0039, 0x003A, 0x003B, - 0x003C, 0x003D, 0x003E, 0x003F, -} }; - -static const enc_to_uni_stage2 enc_to_uni_s2_macroman_40 = { { - 0x0040, 0x0041, 0x0042, 0x0043, 0x0044, 0x0045, - 0x0046, 0x0047, 0x0048, 0x0049, 0x004A, 0x004B, - 0x004C, 0x004D, 0x004E, 0x004F, 0x0050, 0x0051, - 0x0052, 0x0053, 0x0054, 0x0055, 0x0056, 0x0057, - 0x0058, 0x0059, 0x005A, 0x005B, 0x005C, 0x005D, - 0x005E, 0x005F, 0x0060, 0x0061, 0x0062, 0x0063, - 0x0064, 0x0065, 0x0066, 0x0067, 0x0068, 0x0069, - 0x006A, 0x006B, 0x006C, 0x006D, 0x006E, 0x006F, - 0x0070, 0x0071, 0x0072, 0x0073, 0x0074, 0x0075, - 0x0076, 0x0077, 0x0078, 0x0079, 0x007A, 0x007B, - 0x007C, 0x007D, 0x007E, 0xFFFF, -} }; - -static const enc_to_uni_stage2 enc_to_uni_s2_macroman_80 = { { - 0x00C4, 0x00C5, 0x00C7, 0x00C9, 0x00D1, 0x00D6, - 0x00DC, 0x00E1, 0x00E0, 0x00E2, 0x00E4, 0x00E3, - 0x00E5, 0x00E7, 0x00E9, 0x00E8, 0x00EA, 0x00EB, - 0x00ED, 0x00EC, 0x00EE, 0x00EF, 0x00F1, 0x00F3, - 0x00F2, 0x00F4, 0x00F6, 0x00F5, 0x00FA, 0x00F9, - 0x00FB, 0x00FC, 0x2020, 0x00B0, 0x00A2, 0x00A3, - 0x00A7, 0x2022, 0x00B6, 0x00DF, 0x00AE, 0x00A9, - 0x2122, 0x00B4, 0x00A8, 0x2260, 0x00C6, 0x00D8, - 0x221E, 0x00B1, 0x2264, 0x2265, 0x00A5, 0x00B5, - 0x2202, 0x2211, 0x220F, 0x03C0, 0x222B, 0x00AA, - 0x00BA, 0x03A9, 0x00E6, 0x00F8, -} }; - -static const enc_to_uni_stage2 enc_to_uni_s2_macroman_C0 = { { - 0x00BF, 0x00A1, 0x00AC, 0x221A, 0x0192, 0x2248, - 0x2206, 0x00AB, 0x00BB, 0x2026, 0x00A0, 0x00C0, - 0x00C3, 0x00D5, 0x0152, 0x0153, 0x2013, 0x2014, - 0x201C, 0x201D, 0x2018, 0x2019, 0x00F7, 0x25CA, - 0x00FF, 0x0178, 0x2044, 0x20AC, 0x2039, 0x203A, - 0xFB01, 0xFB02, 0x2021, 0x00B7, 0x201A, 0x201E, - 0x2030, 0x00C2, 0x00CA, 0x00C1, 0x00CB, 0x00C8, - 0x00CD, 0x00CE, 0x00CF, 0x00CC, 0x00D3, 0x00D4, - 0xF8FF, 0x00D2, 0x00DA, 0x00DB, 0x00D9, 0x0131, - 0x02C6, 0x02DC, 0x00AF, 0x02D8, 0x02D9, 0x02DA, - 0x00B8, 0x02DD, 0x02DB, 0x02C7, -} }; - -/* end of stage 2 tables for MacRoman }}} */ - -/* {{{ Stage 1 table for MacRoman */ -static const enc_to_uni enc_to_uni_macroman = { { - &enc_to_uni_s2_macroman_00, - &enc_to_uni_s2_macroman_40, - &enc_to_uni_s2_macroman_80, - &enc_to_uni_s2_macroman_C0 } -}; -/* end of stage 1 table for MacRoman }}} */ - -/* {{{ Index of tables for encoding conversion */ -static const enc_to_uni *const enc_to_uni_index[cs_numelems] = { - NULL, - &enc_to_uni_iso88591, - &enc_to_uni_win1252, - &enc_to_uni_iso885915, - &enc_to_uni_win1251, - &enc_to_uni_iso88595, - &enc_to_uni_cp866, - &enc_to_uni_macroman, - &enc_to_uni_koi8r, -}; -/* }}} */ - -/* Definitions for mappings *from* Unicode */ - -typedef struct { - unsigned short un_code_point; /* we don't need bigger */ - unsigned char cs_code; /* currently, we only have maps to single-byte encodings */ -} uni_to_enc; - -/* {{{ Mappings *from* Unicode for ISO-8859-15 */ -static const uni_to_enc unimap_iso885915[] = { - { 0x00A5, 0xA5 }, /* yen sign */ - { 0x00A7, 0xA7 }, /* section sign */ - { 0x00A9, 0xA9 }, /* copyright sign */ - { 0x00AA, 0xAA }, /* feminine ordinal indicator */ - { 0x00AB, 0xAB }, /* left-pointing double angle quotation mark */ - { 0x00AC, 0xAC }, /* not sign */ - { 0x00AD, 0xAD }, /* soft hyphen */ - { 0x00AE, 0xAE }, /* registered sign */ - { 0x00AF, 0xAF }, /* macron */ - { 0x00B0, 0xB0 }, /* degree sign */ - { 0x00B1, 0xB1 }, /* plus-minus sign */ - { 0x00B2, 0xB2 }, /* superscript two */ - { 0x00B3, 0xB3 }, /* superscript three */ - { 0x00B5, 0xB5 }, /* micro sign */ - { 0x00B6, 0xB6 }, /* pilcrow sign */ - { 0x00B7, 0xB7 }, /* middle dot */ - { 0x00B9, 0xB9 }, /* superscript one */ - { 0x00BA, 0xBA }, /* masculine ordinal indicator */ - { 0x00BB, 0xBB }, /* right-pointing double angle quotation mark */ - { 0x0152, 0xBC }, /* latin capital ligature oe */ - { 0x0153, 0xBD }, /* latin small ligature oe */ - { 0x0160, 0xA6 }, /* latin capital letter s with caron */ - { 0x0161, 0xA8 }, /* latin small letter s with caron */ - { 0x0178, 0xBE }, /* latin capital letter y with diaeresis */ - { 0x017D, 0xB4 }, /* latin capital letter z with caron */ - { 0x017E, 0xB8 }, /* latin small letter z with caron */ - { 0x20AC, 0xA4 }, /* euro sign */ -}; -/* {{{ end of mappings *from* Unicode for ISO-8859-15 */ - -/* {{{ Mappings *from* Unicode for Windows-1252 */ -static const uni_to_enc unimap_win1252[] = { - { 0x0152, 0x8C }, /* latin capital ligature oe */ - { 0x0153, 0x9C }, /* latin small ligature oe */ - { 0x0160, 0x8A }, /* latin capital letter s with caron */ - { 0x0161, 0x9A }, /* latin small letter s with caron */ - { 0x0178, 0x9F }, /* latin capital letter y with diaeresis */ - { 0x017D, 0x8E }, /* latin capital letter z with caron */ - { 0x017E, 0x9E }, /* latin small letter z with caron */ - { 0x0192, 0x83 }, /* latin small letter f with hook */ - { 0x02C6, 0x88 }, /* modifier letter circumflex accent */ - { 0x02DC, 0x98 }, /* small tilde */ - { 0x2013, 0x96 }, /* en dash */ - { 0x2014, 0x97 }, /* em dash */ - { 0x2018, 0x91 }, /* left single quotation mark */ - { 0x2019, 0x92 }, /* right single quotation mark */ - { 0x201A, 0x82 }, /* single low-9 quotation mark */ - { 0x201C, 0x93 }, /* left double quotation mark */ - { 0x201D, 0x94 }, /* right double quotation mark */ - { 0x201E, 0x84 }, /* double low-9 quotation mark */ - { 0x2020, 0x86 }, /* dagger */ - { 0x2021, 0x87 }, /* double dagger */ - { 0x2022, 0x95 }, /* bullet */ - { 0x2026, 0x85 }, /* horizontal ellipsis */ - { 0x2030, 0x89 }, /* per mille sign */ - { 0x2039, 0x8B }, /* single left-pointing angle quotation mark */ - { 0x203A, 0x9B }, /* single right-pointing angle quotation mark */ - { 0x20AC, 0x80 }, /* euro sign */ - { 0x2122, 0x99 }, /* trade mark sign */ -}; -/* {{{ end of mappings *from* Unicode for Windows-1252 */ - -/* {{{ Mappings *from* Unicode for Windows-1251 */ -static const uni_to_enc unimap_win1251[] = { - { 0x00A0, 0xA0 }, /* no-break space */ - { 0x00A4, 0xA4 }, /* currency sign */ - { 0x00A6, 0xA6 }, /* broken bar */ - { 0x00A7, 0xA7 }, /* section sign */ - { 0x00A9, 0xA9 }, /* copyright sign */ - { 0x00AB, 0xAB }, /* left-pointing double angle quotation mark */ - { 0x00AC, 0xAC }, /* not sign */ - { 0x00AD, 0xAD }, /* soft hyphen */ - { 0x00AE, 0xAE }, /* registered sign */ - { 0x00B0, 0xB0 }, /* degree sign */ - { 0x00B1, 0xB1 }, /* plus-minus sign */ - { 0x00B5, 0xB5 }, /* micro sign */ - { 0x00B6, 0xB6 }, /* pilcrow sign */ - { 0x00B7, 0xB7 }, /* middle dot */ - { 0x00BB, 0xBB }, /* right-pointing double angle quotation mark */ - { 0x0401, 0xA8 }, /* cyrillic capital letter io */ - { 0x0402, 0x80 }, /* cyrillic capital letter dje */ - { 0x0403, 0x81 }, /* cyrillic capital letter gje */ - { 0x0404, 0xAA }, /* cyrillic capital letter ukrainian ie */ - { 0x0405, 0xBD }, /* cyrillic capital letter dze */ - { 0x0406, 0xB2 }, /* cyrillic capital letter byelorussian-ukrainian i */ - { 0x0407, 0xAF }, /* cyrillic capital letter yi */ - { 0x0408, 0xA3 }, /* cyrillic capital letter je */ - { 0x0409, 0x8A }, /* cyrillic capital letter lje */ - { 0x040A, 0x8C }, /* cyrillic capital letter nje */ - { 0x040B, 0x8E }, /* cyrillic capital letter tshe */ - { 0x040C, 0x8D }, /* cyrillic capital letter kje */ - { 0x040E, 0xA1 }, /* cyrillic capital letter short u */ - { 0x040F, 0x8F }, /* cyrillic capital letter dzhe */ - { 0x0410, 0xC0 }, /* cyrillic capital letter a */ - { 0x0411, 0xC1 }, /* cyrillic capital letter be */ - { 0x0412, 0xC2 }, /* cyrillic capital letter ve */ - { 0x0413, 0xC3 }, /* cyrillic capital letter ghe */ - { 0x0414, 0xC4 }, /* cyrillic capital letter de */ - { 0x0415, 0xC5 }, /* cyrillic capital letter ie */ - { 0x0416, 0xC6 }, /* cyrillic capital letter zhe */ - { 0x0417, 0xC7 }, /* cyrillic capital letter ze */ - { 0x0418, 0xC8 }, /* cyrillic capital letter i */ - { 0x0419, 0xC9 }, /* cyrillic capital letter short i */ - { 0x041A, 0xCA }, /* cyrillic capital letter ka */ - { 0x041B, 0xCB }, /* cyrillic capital letter el */ - { 0x041C, 0xCC }, /* cyrillic capital letter em */ - { 0x041D, 0xCD }, /* cyrillic capital letter en */ - { 0x041E, 0xCE }, /* cyrillic capital letter o */ - { 0x041F, 0xCF }, /* cyrillic capital letter pe */ - { 0x0420, 0xD0 }, /* cyrillic capital letter er */ - { 0x0421, 0xD1 }, /* cyrillic capital letter es */ - { 0x0422, 0xD2 }, /* cyrillic capital letter te */ - { 0x0423, 0xD3 }, /* cyrillic capital letter u */ - { 0x0424, 0xD4 }, /* cyrillic capital letter ef */ - { 0x0425, 0xD5 }, /* cyrillic capital letter ha */ - { 0x0426, 0xD6 }, /* cyrillic capital letter tse */ - { 0x0427, 0xD7 }, /* cyrillic capital letter che */ - { 0x0428, 0xD8 }, /* cyrillic capital letter sha */ - { 0x0429, 0xD9 }, /* cyrillic capital letter shcha */ - { 0x042A, 0xDA }, /* cyrillic capital letter hard sign */ - { 0x042B, 0xDB }, /* cyrillic capital letter yeru */ - { 0x042C, 0xDC }, /* cyrillic capital letter soft sign */ - { 0x042D, 0xDD }, /* cyrillic capital letter e */ - { 0x042E, 0xDE }, /* cyrillic capital letter yu */ - { 0x042F, 0xDF }, /* cyrillic capital letter ya */ - { 0x0430, 0xE0 }, /* cyrillic small letter a */ - { 0x0431, 0xE1 }, /* cyrillic small letter be */ - { 0x0432, 0xE2 }, /* cyrillic small letter ve */ - { 0x0433, 0xE3 }, /* cyrillic small letter ghe */ - { 0x0434, 0xE4 }, /* cyrillic small letter de */ - { 0x0435, 0xE5 }, /* cyrillic small letter ie */ - { 0x0436, 0xE6 }, /* cyrillic small letter zhe */ - { 0x0437, 0xE7 }, /* cyrillic small letter ze */ - { 0x0438, 0xE8 }, /* cyrillic small letter i */ - { 0x0439, 0xE9 }, /* cyrillic small letter short i */ - { 0x043A, 0xEA }, /* cyrillic small letter ka */ - { 0x043B, 0xEB }, /* cyrillic small letter el */ - { 0x043C, 0xEC }, /* cyrillic small letter em */ - { 0x043D, 0xED }, /* cyrillic small letter en */ - { 0x043E, 0xEE }, /* cyrillic small letter o */ - { 0x043F, 0xEF }, /* cyrillic small letter pe */ - { 0x0440, 0xF0 }, /* cyrillic small letter er */ - { 0x0441, 0xF1 }, /* cyrillic small letter es */ - { 0x0442, 0xF2 }, /* cyrillic small letter te */ - { 0x0443, 0xF3 }, /* cyrillic small letter u */ - { 0x0444, 0xF4 }, /* cyrillic small letter ef */ - { 0x0445, 0xF5 }, /* cyrillic small letter ha */ - { 0x0446, 0xF6 }, /* cyrillic small letter tse */ - { 0x0447, 0xF7 }, /* cyrillic small letter che */ - { 0x0448, 0xF8 }, /* cyrillic small letter sha */ - { 0x0449, 0xF9 }, /* cyrillic small letter shcha */ - { 0x044A, 0xFA }, /* cyrillic small letter hard sign */ - { 0x044B, 0xFB }, /* cyrillic small letter yeru */ - { 0x044C, 0xFC }, /* cyrillic small letter soft sign */ - { 0x044D, 0xFD }, /* cyrillic small letter e */ - { 0x044E, 0xFE }, /* cyrillic small letter yu */ - { 0x044F, 0xFF }, /* cyrillic small letter ya */ - { 0x0451, 0xB8 }, /* cyrillic small letter io */ - { 0x0452, 0x90 }, /* cyrillic small letter dje */ - { 0x0453, 0x83 }, /* cyrillic small letter gje */ - { 0x0454, 0xBA }, /* cyrillic small letter ukrainian ie */ - { 0x0455, 0xBE }, /* cyrillic small letter dze */ - { 0x0456, 0xB3 }, /* cyrillic small letter byelorussian-ukrainian i */ - { 0x0457, 0xBF }, /* cyrillic small letter yi */ - { 0x0458, 0xBC }, /* cyrillic small letter je */ - { 0x0459, 0x9A }, /* cyrillic small letter lje */ - { 0x045A, 0x9C }, /* cyrillic small letter nje */ - { 0x045B, 0x9E }, /* cyrillic small letter tshe */ - { 0x045C, 0x9D }, /* cyrillic small letter kje */ - { 0x045E, 0xA2 }, /* cyrillic small letter short u */ - { 0x045F, 0x9F }, /* cyrillic small letter dzhe */ - { 0x0490, 0xA5 }, /* cyrillic capital letter ghe with upturn */ - { 0x0491, 0xB4 }, /* cyrillic small letter ghe with upturn */ - { 0x2013, 0x96 }, /* en dash */ - { 0x2014, 0x97 }, /* em dash */ - { 0x2018, 0x91 }, /* left single quotation mark */ - { 0x2019, 0x92 }, /* right single quotation mark */ - { 0x201A, 0x82 }, /* single low-9 quotation mark */ - { 0x201C, 0x93 }, /* left double quotation mark */ - { 0x201D, 0x94 }, /* right double quotation mark */ - { 0x201E, 0x84 }, /* double low-9 quotation mark */ - { 0x2020, 0x86 }, /* dagger */ - { 0x2021, 0x87 }, /* double dagger */ - { 0x2022, 0x95 }, /* bullet */ - { 0x2026, 0x85 }, /* horizontal ellipsis */ - { 0x2030, 0x89 }, /* per mille sign */ - { 0x2039, 0x8B }, /* single left-pointing angle quotation mark */ - { 0x203A, 0x9B }, /* single right-pointing angle quotation mark */ - { 0x20AC, 0x88 }, /* euro sign */ - { 0x2116, 0xB9 }, /* numero sign */ - { 0x2122, 0x99 }, /* trade mark sign */ -}; -/* {{{ end of mappings *from* Unicode for Windows-1251 */ - -/* {{{ Mappings *from* Unicode for KOI8-R */ -static const uni_to_enc unimap_koi8r[] = { - { 0x00A0, 0x9A }, /* no-break space */ - { 0x00A9, 0xBF }, /* copyright sign */ - { 0x00B0, 0x9C }, /* degree sign */ - { 0x00B2, 0x9D }, /* superscript two */ - { 0x00B7, 0x9E }, /* middle dot */ - { 0x00F7, 0x9F }, /* division sign */ - { 0x0401, 0xB3 }, /* cyrillic capital letter io */ - { 0x0410, 0xE1 }, /* cyrillic capital letter a */ - { 0x0411, 0xE2 }, /* cyrillic capital letter be */ - { 0x0412, 0xF7 }, /* cyrillic capital letter ve */ - { 0x0413, 0xE7 }, /* cyrillic capital letter ghe */ - { 0x0414, 0xE4 }, /* cyrillic capital letter de */ - { 0x0415, 0xE5 }, /* cyrillic capital letter ie */ - { 0x0416, 0xF6 }, /* cyrillic capital letter zhe */ - { 0x0417, 0xFA }, /* cyrillic capital letter ze */ - { 0x0418, 0xE9 }, /* cyrillic capital letter i */ - { 0x0419, 0xEA }, /* cyrillic capital letter short i */ - { 0x041A, 0xEB }, /* cyrillic capital letter ka */ - { 0x041B, 0xEC }, /* cyrillic capital letter el */ - { 0x041C, 0xED }, /* cyrillic capital letter em */ - { 0x041D, 0xEE }, /* cyrillic capital letter en */ - { 0x041E, 0xEF }, /* cyrillic capital letter o */ - { 0x041F, 0xF0 }, /* cyrillic capital letter pe */ - { 0x0420, 0xF2 }, /* cyrillic capital letter er */ - { 0x0421, 0xF3 }, /* cyrillic capital letter es */ - { 0x0422, 0xF4 }, /* cyrillic capital letter te */ - { 0x0423, 0xF5 }, /* cyrillic capital letter u */ - { 0x0424, 0xE6 }, /* cyrillic capital letter ef */ - { 0x0425, 0xE8 }, /* cyrillic capital letter ha */ - { 0x0426, 0xE3 }, /* cyrillic capital letter tse */ - { 0x0427, 0xFE }, /* cyrillic capital letter che */ - { 0x0428, 0xFB }, /* cyrillic capital letter sha */ - { 0x0429, 0xFD }, /* cyrillic capital letter shcha */ - { 0x042A, 0xFF }, /* cyrillic capital letter hard sign */ - { 0x042B, 0xF9 }, /* cyrillic capital letter yeru */ - { 0x042C, 0xF8 }, /* cyrillic capital letter soft sign */ - { 0x042D, 0xFC }, /* cyrillic capital letter e */ - { 0x042E, 0xE0 }, /* cyrillic capital letter yu */ - { 0x042F, 0xF1 }, /* cyrillic capital letter ya */ - { 0x0430, 0xC1 }, /* cyrillic small letter a */ - { 0x0431, 0xC2 }, /* cyrillic small letter be */ - { 0x0432, 0xD7 }, /* cyrillic small letter ve */ - { 0x0433, 0xC7 }, /* cyrillic small letter ghe */ - { 0x0434, 0xC4 }, /* cyrillic small letter de */ - { 0x0435, 0xC5 }, /* cyrillic small letter ie */ - { 0x0436, 0xD6 }, /* cyrillic small letter zhe */ - { 0x0437, 0xDA }, /* cyrillic small letter ze */ - { 0x0438, 0xC9 }, /* cyrillic small letter i */ - { 0x0439, 0xCA }, /* cyrillic small letter short i */ - { 0x043A, 0xCB }, /* cyrillic small letter ka */ - { 0x043B, 0xCC }, /* cyrillic small letter el */ - { 0x043C, 0xCD }, /* cyrillic small letter em */ - { 0x043D, 0xCE }, /* cyrillic small letter en */ - { 0x043E, 0xCF }, /* cyrillic small letter o */ - { 0x043F, 0xD0 }, /* cyrillic small letter pe */ - { 0x0440, 0xD2 }, /* cyrillic small letter er */ - { 0x0441, 0xD3 }, /* cyrillic small letter es */ - { 0x0442, 0xD4 }, /* cyrillic small letter te */ - { 0x0443, 0xD5 }, /* cyrillic small letter u */ - { 0x0444, 0xC6 }, /* cyrillic small letter ef */ - { 0x0445, 0xC8 }, /* cyrillic small letter ha */ - { 0x0446, 0xC3 }, /* cyrillic small letter tse */ - { 0x0447, 0xDE }, /* cyrillic small letter che */ - { 0x0448, 0xDB }, /* cyrillic small letter sha */ - { 0x0449, 0xDD }, /* cyrillic small letter shcha */ - { 0x044A, 0xDF }, /* cyrillic small letter hard sign */ - { 0x044B, 0xD9 }, /* cyrillic small letter yeru */ - { 0x044C, 0xD8 }, /* cyrillic small letter soft sign */ - { 0x044D, 0xDC }, /* cyrillic small letter e */ - { 0x044E, 0xC0 }, /* cyrillic small letter yu */ - { 0x044F, 0xD1 }, /* cyrillic small letter ya */ - { 0x0451, 0xA3 }, /* cyrillic small letter io */ - { 0x2219, 0x95 }, /* bullet operator */ - { 0x221A, 0x96 }, /* square root */ - { 0x2248, 0x97 }, /* almost equal to */ - { 0x2264, 0x98 }, /* less-than or equal to */ - { 0x2265, 0x99 }, /* greater-than or equal to */ - { 0x2320, 0x93 }, /* top half integral */ - { 0x2321, 0x9B }, /* bottom half integral */ - { 0x2500, 0x80 }, /* box drawings light horizontal */ - { 0x2502, 0x81 }, /* box drawings light vertical */ - { 0x250C, 0x82 }, /* box drawings light down and right */ - { 0x2510, 0x83 }, /* box drawings light down and left */ - { 0x2514, 0x84 }, /* box drawings light up and right */ - { 0x2518, 0x85 }, /* box drawings light up and left */ - { 0x251C, 0x86 }, /* box drawings light vertical and right */ - { 0x2524, 0x87 }, /* box drawings light vertical and left */ - { 0x252C, 0x88 }, /* box drawings light down and horizontal */ - { 0x2534, 0x89 }, /* box drawings light up and horizontal */ - { 0x253C, 0x8A }, /* box drawings light vertical and horizontal */ - { 0x2550, 0xA0 }, /* box drawings double horizontal */ - { 0x2551, 0xA1 }, /* box drawings double vertical */ - { 0x2552, 0xA2 }, /* box drawings down single and right double */ - { 0x2553, 0xA4 }, /* box drawings down double and right single */ - { 0x2554, 0xA5 }, /* box drawings double down and right */ - { 0x2555, 0xA6 }, /* box drawings down single and left double */ - { 0x2556, 0xA7 }, /* box drawings down double and left single */ - { 0x2557, 0xA8 }, /* box drawings double down and left */ - { 0x2558, 0xA9 }, /* box drawings up single and right double */ - { 0x2559, 0xAA }, /* box drawings up double and right single */ - { 0x255A, 0xAB }, /* box drawings double up and right */ - { 0x255B, 0xAC }, /* box drawings up single and left double */ - { 0x255C, 0xAD }, /* box drawings up double and left single */ - { 0x255D, 0xAE }, /* box drawings double up and left */ - { 0x255E, 0xAF }, /* box drawings vertical single and right double */ - { 0x255F, 0xB0 }, /* box drawings vertical double and right single */ - { 0x2560, 0xB1 }, /* box drawings double vertical and right */ - { 0x2561, 0xB2 }, /* box drawings vertical single and left double */ - { 0x2562, 0xB4 }, /* box drawings vertical double and left single */ - { 0x2563, 0xB5 }, /* box drawings double vertical and left */ - { 0x2564, 0xB6 }, /* box drawings down single and horizontal double */ - { 0x2565, 0xB7 }, /* box drawings down double and horizontal single */ - { 0x2566, 0xB8 }, /* box drawings double down and horizontal */ - { 0x2567, 0xB9 }, /* box drawings up single and horizontal double */ - { 0x2568, 0xBA }, /* box drawings up double and horizontal single */ - { 0x2569, 0xBB }, /* box drawings double up and horizontal */ - { 0x256A, 0xBC }, /* box drawings vertical single and horizontal double */ - { 0x256B, 0xBD }, /* box drawings vertical double and horizontal single */ - { 0x256C, 0xBE }, /* box drawings double vertical and horizontal */ - { 0x2580, 0x8B }, /* upper half block */ - { 0x2584, 0x8C }, /* lower half block */ - { 0x2588, 0x8D }, /* full block */ - { 0x258C, 0x8E }, /* left half block */ - { 0x2590, 0x8F }, /* right half block */ - { 0x2591, 0x90 }, /* light shade */ - { 0x2592, 0x91 }, /* medium shade */ - { 0x2593, 0x92 }, /* dark shade */ - { 0x25A0, 0x94 }, /* black square */ -}; -/* {{{ end of mappings *from* Unicode for KOI8-R */ - -/* {{{ Mappings *from* Unicode for CP-866 */ -static const uni_to_enc unimap_cp866[] = { - { 0x00A0, 0xFF }, /* no-break space */ - { 0x00A4, 0xFD }, /* currency sign */ - { 0x00B0, 0xF8 }, /* degree sign */ - { 0x00B7, 0xFA }, /* middle dot */ - { 0x0401, 0xF0 }, /* cyrillic capital letter io */ - { 0x0404, 0xF2 }, /* cyrillic capital letter ukrainian ie */ - { 0x0407, 0xF4 }, /* cyrillic capital letter yi */ - { 0x040E, 0xF6 }, /* cyrillic capital letter short u */ - { 0x0410, 0x80 }, /* cyrillic capital letter a */ - { 0x0411, 0x81 }, /* cyrillic capital letter be */ - { 0x0412, 0x82 }, /* cyrillic capital letter ve */ - { 0x0413, 0x83 }, /* cyrillic capital letter ghe */ - { 0x0414, 0x84 }, /* cyrillic capital letter de */ - { 0x0415, 0x85 }, /* cyrillic capital letter ie */ - { 0x0416, 0x86 }, /* cyrillic capital letter zhe */ - { 0x0417, 0x87 }, /* cyrillic capital letter ze */ - { 0x0418, 0x88 }, /* cyrillic capital letter i */ - { 0x0419, 0x89 }, /* cyrillic capital letter short i */ - { 0x041A, 0x8A }, /* cyrillic capital letter ka */ - { 0x041B, 0x8B }, /* cyrillic capital letter el */ - { 0x041C, 0x8C }, /* cyrillic capital letter em */ - { 0x041D, 0x8D }, /* cyrillic capital letter en */ - { 0x041E, 0x8E }, /* cyrillic capital letter o */ - { 0x041F, 0x8F }, /* cyrillic capital letter pe */ - { 0x0420, 0x90 }, /* cyrillic capital letter er */ - { 0x0421, 0x91 }, /* cyrillic capital letter es */ - { 0x0422, 0x92 }, /* cyrillic capital letter te */ - { 0x0423, 0x93 }, /* cyrillic capital letter u */ - { 0x0424, 0x94 }, /* cyrillic capital letter ef */ - { 0x0425, 0x95 }, /* cyrillic capital letter ha */ - { 0x0426, 0x96 }, /* cyrillic capital letter tse */ - { 0x0427, 0x97 }, /* cyrillic capital letter che */ - { 0x0428, 0x98 }, /* cyrillic capital letter sha */ - { 0x0429, 0x99 }, /* cyrillic capital letter shcha */ - { 0x042A, 0x9A }, /* cyrillic capital letter hard sign */ - { 0x042B, 0x9B }, /* cyrillic capital letter yeru */ - { 0x042C, 0x9C }, /* cyrillic capital letter soft sign */ - { 0x042D, 0x9D }, /* cyrillic capital letter e */ - { 0x042E, 0x9E }, /* cyrillic capital letter yu */ - { 0x042F, 0x9F }, /* cyrillic capital letter ya */ - { 0x0430, 0xA0 }, /* cyrillic small letter a */ - { 0x0431, 0xA1 }, /* cyrillic small letter be */ - { 0x0432, 0xA2 }, /* cyrillic small letter ve */ - { 0x0433, 0xA3 }, /* cyrillic small letter ghe */ - { 0x0434, 0xA4 }, /* cyrillic small letter de */ - { 0x0435, 0xA5 }, /* cyrillic small letter ie */ - { 0x0436, 0xA6 }, /* cyrillic small letter zhe */ - { 0x0437, 0xA7 }, /* cyrillic small letter ze */ - { 0x0438, 0xA8 }, /* cyrillic small letter i */ - { 0x0439, 0xA9 }, /* cyrillic small letter short i */ - { 0x043A, 0xAA }, /* cyrillic small letter ka */ - { 0x043B, 0xAB }, /* cyrillic small letter el */ - { 0x043C, 0xAC }, /* cyrillic small letter em */ - { 0x043D, 0xAD }, /* cyrillic small letter en */ - { 0x043E, 0xAE }, /* cyrillic small letter o */ - { 0x043F, 0xAF }, /* cyrillic small letter pe */ - { 0x0440, 0xE0 }, /* cyrillic small letter er */ - { 0x0441, 0xE1 }, /* cyrillic small letter es */ - { 0x0442, 0xE2 }, /* cyrillic small letter te */ - { 0x0443, 0xE3 }, /* cyrillic small letter u */ - { 0x0444, 0xE4 }, /* cyrillic small letter ef */ - { 0x0445, 0xE5 }, /* cyrillic small letter ha */ - { 0x0446, 0xE6 }, /* cyrillic small letter tse */ - { 0x0447, 0xE7 }, /* cyrillic small letter che */ - { 0x0448, 0xE8 }, /* cyrillic small letter sha */ - { 0x0449, 0xE9 }, /* cyrillic small letter shcha */ - { 0x044A, 0xEA }, /* cyrillic small letter hard sign */ - { 0x044B, 0xEB }, /* cyrillic small letter yeru */ - { 0x044C, 0xEC }, /* cyrillic small letter soft sign */ - { 0x044D, 0xED }, /* cyrillic small letter e */ - { 0x044E, 0xEE }, /* cyrillic small letter yu */ - { 0x044F, 0xEF }, /* cyrillic small letter ya */ - { 0x0451, 0xF1 }, /* cyrillic small letter io */ - { 0x0454, 0xF3 }, /* cyrillic small letter ukrainian ie */ - { 0x0457, 0xF5 }, /* cyrillic small letter yi */ - { 0x045E, 0xF7 }, /* cyrillic small letter short u */ - { 0x2116, 0xFC }, /* numero sign */ - { 0x2219, 0xF9 }, /* bullet operator */ - { 0x221A, 0xFB }, /* square root */ - { 0x2500, 0xC4 }, /* box drawings light horizontal */ - { 0x2502, 0xB3 }, /* box drawings light vertical */ - { 0x250C, 0xDA }, /* box drawings light down and right */ - { 0x2510, 0xBF }, /* box drawings light down and left */ - { 0x2514, 0xC0 }, /* box drawings light up and right */ - { 0x2518, 0xD9 }, /* box drawings light up and left */ - { 0x251C, 0xC3 }, /* box drawings light vertical and right */ - { 0x2524, 0xB4 }, /* box drawings light vertical and left */ - { 0x252C, 0xC2 }, /* box drawings light down and horizontal */ - { 0x2534, 0xC1 }, /* box drawings light up and horizontal */ - { 0x253C, 0xC5 }, /* box drawings light vertical and horizontal */ - { 0x2550, 0xCD }, /* box drawings double horizontal */ - { 0x2551, 0xBA }, /* box drawings double vertical */ - { 0x2552, 0xD5 }, /* box drawings down single and right double */ - { 0x2553, 0xD6 }, /* box drawings down double and right single */ - { 0x2554, 0xC9 }, /* box drawings double down and right */ - { 0x2555, 0xB8 }, /* box drawings down single and left double */ - { 0x2556, 0xB7 }, /* box drawings down double and left single */ - { 0x2557, 0xBB }, /* box drawings double down and left */ - { 0x2558, 0xD4 }, /* box drawings up single and right double */ - { 0x2559, 0xD3 }, /* box drawings up double and right single */ - { 0x255A, 0xC8 }, /* box drawings double up and right */ - { 0x255B, 0xBE }, /* box drawings up single and left double */ - { 0x255C, 0xBD }, /* box drawings up double and left single */ - { 0x255D, 0xBC }, /* box drawings double up and left */ - { 0x255E, 0xC6 }, /* box drawings vertical single and right double */ - { 0x255F, 0xC7 }, /* box drawings vertical double and right single */ - { 0x2560, 0xCC }, /* box drawings double vertical and right */ - { 0x2561, 0xB5 }, /* box drawings vertical single and left double */ - { 0x2562, 0xB6 }, /* box drawings vertical double and left single */ - { 0x2563, 0xB9 }, /* box drawings double vertical and left */ - { 0x2564, 0xD1 }, /* box drawings down single and horizontal double */ - { 0x2565, 0xD2 }, /* box drawings down double and horizontal single */ - { 0x2566, 0xCB }, /* box drawings double down and horizontal */ - { 0x2567, 0xCF }, /* box drawings up single and horizontal double */ - { 0x2568, 0xD0 }, /* box drawings up double and horizontal single */ - { 0x2569, 0xCA }, /* box drawings double up and horizontal */ - { 0x256A, 0xD8 }, /* box drawings vertical single and horizontal double */ - { 0x256B, 0xD7 }, /* box drawings vertical double and horizontal single */ - { 0x256C, 0xCE }, /* box drawings double vertical and horizontal */ - { 0x2580, 0xDF }, /* upper half block */ - { 0x2584, 0xDC }, /* lower half block */ - { 0x2588, 0xDB }, /* full block */ - { 0x258C, 0xDD }, /* left half block */ - { 0x2590, 0xDE }, /* right half block */ - { 0x2591, 0xB0 }, /* light shade */ - { 0x2592, 0xB1 }, /* medium shade */ - { 0x2593, 0xB2 }, /* dark shade */ - { 0x25A0, 0xFE }, /* black square */ -}; -/* {{{ end of mappings *from* Unicode for CP-866 */ - -/* {{{ Mappings *from* Unicode for MacRoman */ -static const uni_to_enc unimap_macroman[] = { - { 0x00A0, 0xCA }, /* no-break space */ - { 0x00A1, 0xC1 }, /* inverted exclamation mark */ - { 0x00A2, 0xA2 }, /* cent sign */ - { 0x00A3, 0xA3 }, /* pound sign */ - { 0x00A5, 0xB4 }, /* yen sign */ - { 0x00A7, 0xA4 }, /* section sign */ - { 0x00A8, 0xAC }, /* diaeresis */ - { 0x00A9, 0xA9 }, /* copyright sign */ - { 0x00AA, 0xBB }, /* feminine ordinal indicator */ - { 0x00AB, 0xC7 }, /* left-pointing double angle quotation mark */ - { 0x00AC, 0xC2 }, /* not sign */ - { 0x00AE, 0xA8 }, /* registered sign */ - { 0x00AF, 0xF8 }, /* macron */ - { 0x00B0, 0xA1 }, /* degree sign */ - { 0x00B1, 0xB1 }, /* plus-minus sign */ - { 0x00B4, 0xAB }, /* acute accent */ - { 0x00B5, 0xB5 }, /* micro sign */ - { 0x00B6, 0xA6 }, /* pilcrow sign */ - { 0x00B7, 0xE1 }, /* middle dot */ - { 0x00B8, 0xFC }, /* cedilla */ - { 0x00BA, 0xBC }, /* masculine ordinal indicator */ - { 0x00BB, 0xC8 }, /* right-pointing double angle quotation mark */ - { 0x00BF, 0xC0 }, /* inverted question mark */ - { 0x00C0, 0xCB }, /* latin capital letter a with grave */ - { 0x00C1, 0xE7 }, /* latin capital letter a with acute */ - { 0x00C2, 0xE5 }, /* latin capital letter a with circumflex */ - { 0x00C3, 0xCC }, /* latin capital letter a with tilde */ - { 0x00C4, 0x80 }, /* latin capital letter a with diaeresis */ - { 0x00C5, 0x81 }, /* latin capital letter a with ring above */ - { 0x00C6, 0xAE }, /* latin capital letter ae */ - { 0x00C7, 0x82 }, /* latin capital letter c with cedilla */ - { 0x00C8, 0xE9 }, /* latin capital letter e with grave */ - { 0x00C9, 0x83 }, /* latin capital letter e with acute */ - { 0x00CA, 0xE6 }, /* latin capital letter e with circumflex */ - { 0x00CB, 0xE8 }, /* latin capital letter e with diaeresis */ - { 0x00CC, 0xED }, /* latin capital letter i with grave */ - { 0x00CD, 0xEA }, /* latin capital letter i with acute */ - { 0x00CE, 0xEB }, /* latin capital letter i with circumflex */ - { 0x00CF, 0xEC }, /* latin capital letter i with diaeresis */ - { 0x00D1, 0x84 }, /* latin capital letter n with tilde */ - { 0x00D2, 0xF1 }, /* latin capital letter o with grave */ - { 0x00D3, 0xEE }, /* latin capital letter o with acute */ - { 0x00D4, 0xEF }, /* latin capital letter o with circumflex */ - { 0x00D5, 0xCD }, /* latin capital letter o with tilde */ - { 0x00D6, 0x85 }, /* latin capital letter o with diaeresis */ - { 0x00D8, 0xAF }, /* latin capital letter o with stroke */ - { 0x00D9, 0xF4 }, /* latin capital letter u with grave */ - { 0x00DA, 0xF2 }, /* latin capital letter u with acute */ - { 0x00DB, 0xF3 }, /* latin capital letter u with circumflex */ - { 0x00DC, 0x86 }, /* latin capital letter u with diaeresis */ - { 0x00DF, 0xA7 }, /* latin small letter sharp s */ - { 0x00E0, 0x88 }, /* latin small letter a with grave */ - { 0x00E1, 0x87 }, /* latin small letter a with acute */ - { 0x00E2, 0x89 }, /* latin small letter a with circumflex */ - { 0x00E3, 0x8B }, /* latin small letter a with tilde */ - { 0x00E4, 0x8A }, /* latin small letter a with diaeresis */ - { 0x00E5, 0x8C }, /* latin small letter a with ring above */ - { 0x00E6, 0xBE }, /* latin small letter ae */ - { 0x00E7, 0x8D }, /* latin small letter c with cedilla */ - { 0x00E8, 0x8F }, /* latin small letter e with grave */ - { 0x00E9, 0x8E }, /* latin small letter e with acute */ - { 0x00EA, 0x90 }, /* latin small letter e with circumflex */ - { 0x00EB, 0x91 }, /* latin small letter e with diaeresis */ - { 0x00EC, 0x93 }, /* latin small letter i with grave */ - { 0x00ED, 0x92 }, /* latin small letter i with acute */ - { 0x00EE, 0x94 }, /* latin small letter i with circumflex */ - { 0x00EF, 0x95 }, /* latin small letter i with diaeresis */ - { 0x00F1, 0x96 }, /* latin small letter n with tilde */ - { 0x00F2, 0x98 }, /* latin small letter o with grave */ - { 0x00F3, 0x97 }, /* latin small letter o with acute */ - { 0x00F4, 0x99 }, /* latin small letter o with circumflex */ - { 0x00F5, 0x9B }, /* latin small letter o with tilde */ - { 0x00F6, 0x9A }, /* latin small letter o with diaeresis */ - { 0x00F7, 0xD6 }, /* division sign */ - { 0x00F8, 0xBF }, /* latin small letter o with stroke */ - { 0x00F9, 0x9D }, /* latin small letter u with grave */ - { 0x00FA, 0x9C }, /* latin small letter u with acute */ - { 0x00FB, 0x9E }, /* latin small letter u with circumflex */ - { 0x00FC, 0x9F }, /* latin small letter u with diaeresis */ - { 0x00FF, 0xD8 }, /* latin small letter y with diaeresis */ - { 0x0131, 0xF5 }, /* latin small letter dotless i */ - { 0x0152, 0xCE }, /* latin capital ligature oe */ - { 0x0153, 0xCF }, /* latin small ligature oe */ - { 0x0178, 0xD9 }, /* latin capital letter y with diaeresis */ - { 0x0192, 0xC4 }, /* latin small letter f with hook */ - { 0x02C6, 0xF6 }, /* modifier letter circumflex accent */ - { 0x02C7, 0xFF }, /* caron */ - { 0x02D8, 0xF9 }, /* breve */ - { 0x02D9, 0xFA }, /* dot above */ - { 0x02DA, 0xFB }, /* ring above */ - { 0x02DB, 0xFE }, /* ogonek */ - { 0x02DC, 0xF7 }, /* small tilde */ - { 0x02DD, 0xFD }, /* double acute accent */ - { 0x03A9, 0xBD }, /* greek capital letter omega */ - { 0x03C0, 0xB9 }, /* greek small letter pi */ - { 0x2013, 0xD0 }, /* en dash */ - { 0x2014, 0xD1 }, /* em dash */ - { 0x2018, 0xD4 }, /* left single quotation mark */ - { 0x2019, 0xD5 }, /* right single quotation mark */ - { 0x201A, 0xE2 }, /* single low-9 quotation mark */ - { 0x201C, 0xD2 }, /* left double quotation mark */ - { 0x201D, 0xD3 }, /* right double quotation mark */ - { 0x201E, 0xE3 }, /* double low-9 quotation mark */ - { 0x2020, 0xA0 }, /* dagger */ - { 0x2021, 0xE0 }, /* double dagger */ - { 0x2022, 0xA5 }, /* bullet */ - { 0x2026, 0xC9 }, /* horizontal ellipsis */ - { 0x2030, 0xE4 }, /* per mille sign */ - { 0x2039, 0xDC }, /* single left-pointing angle quotation mark */ - { 0x203A, 0xDD }, /* single right-pointing angle quotation mark */ - { 0x2044, 0xDA }, /* fraction slash */ - { 0x20AC, 0xDB }, /* euro sign */ - { 0x2122, 0xAA }, /* trade mark sign */ - { 0x2202, 0xB6 }, /* partial differential */ - { 0x2206, 0xC6 }, /* increment */ - { 0x220F, 0xB8 }, /* n-ary product */ - { 0x2211, 0xB7 }, /* n-ary summation */ - { 0x221A, 0xC3 }, /* square root */ - { 0x221E, 0xB0 }, /* infinity */ - { 0x222B, 0xBA }, /* integral */ - { 0x2248, 0xC5 }, /* almost equal to */ - { 0x2260, 0xAD }, /* not equal to */ - { 0x2264, 0xB2 }, /* less-than or equal to */ - { 0x2265, 0xB3 }, /* greater-than or equal to */ - { 0x25CA, 0xD7 }, /* lozenge */ - { 0xF8FF, 0xF0 }, /* apple logo */ - { 0xFB01, 0xDE }, /* latin small ligature fi */ - { 0xFB02, 0xDF }, /* latin small ligature fl */ -}; -/* {{{ end of mappings *from* Unicode for MacRoman */ - -/* HTML 5 has many more named entities. - * Some of them map to two unicode code points, not one. - * We're going to use a three-stage table (with an extra one for the entities - * with two code points). */ - -#define ENT_STAGE1_INDEX(k) (((k) & 0xFFF000) >> 12) /* > 1D, we have no mapping */ -#define ENT_STAGE2_INDEX(k) (((k) & 0xFC0) >> 6) -#define ENT_STAGE3_INDEX(k) ((k) & 0x3F) -#define ENT_CODE_POINT_FROM_STAGES(i,j,k) (((i) << 12) | ((j) << 6) | (k)) - -/* The default entity may be NULL. Binary search is still possible while - is senseless as there are just two rows (see also find_entity_for_char()). */ -typedef union { - struct { - const char *default_entity; - unsigned size; /* number of remaining entries in the table */ - unsigned short default_entity_len; - } leading_entry; - struct { - const char *entity; - unsigned second_cp; /* second code point */ - unsigned short entity_len; - } normal_entry; -} entity_multicodepoint_row; - -/* blocks of these should start at code points k where k % 0xFC0 == 0 */ -typedef struct { - char ambiguous; /* if 0 look into entity */ - union { - struct { - const char *entity; /* may be NULL */ - unsigned short entity_len; - } ent; - const entity_multicodepoint_row *multicodepoint_table; - } data; -} entity_stage3_row; - -/* Calculate k & 0x3F Use as offset */ -typedef const entity_stage3_row *entity_stage2_row; /* 64 elements */ - -/* Calculate k & 0xFC0 >> 6. Use as offset */ -typedef const entity_stage3_row *const *entity_stage1_row; /* 64 elements */ - -/* For stage 1, Calculate k & 0xFFF000 >> 3*4. - * If larger than 1D, we have no mapping. Otherwise lookup that index */ - -typedef struct { - const entity_stage1_row *ms_table; - /* for tables with only basic entities, this member is to be accessed - * directly for better performance: */ - const entity_stage3_row *table; -} entity_table_opt; - -/* Replaced "GT" > "gt" and "QUOT" > "quot" for consistency's sake. */ - -/* {{{ Start of HTML5 multi-stage table for codepoint -> entity */ - -/* {{{ Start of double code point tables for HTML5 */ - -static const entity_multicodepoint_row multi_cp_html5_0003C[] = { - { {"lt", 01, 2} }, - { {"nvlt", 0x020D2, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0003D[] = { - { {"equals", 01, 6} }, - { {"bne", 0x020E5, 3} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0003E[] = { - { {"gt", 01, 2} }, - { {"nvgt", 0x020D2, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_00066[] = { - { {NULL, 01, 0} }, - { {"fjlig", 0x0006A, 5} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0205F[] = { - { {"MediumSpace", 01, 11} }, - { {"ThickSpace", 0x0200A, 10} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0219D[] = { - { {"rarrw", 01, 5} }, - { {"nrarrw", 0x00338, 6} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02202[] = { - { {"part", 01, 4} }, - { {"npart", 0x00338, 5} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02220[] = { - { {"angle", 01, 5} }, - { {"nang", 0x020D2, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02229[] = { - { {"cap", 01, 3} }, - { {"caps", 0x0FE00, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0222A[] = { - { {"cup", 01, 3} }, - { {"cups", 0x0FE00, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0223C[] = { - { {"sim", 01, 3} }, - { {"nvsim", 0x020D2, 5} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0223D[] = { - { {"bsim", 01, 4} }, - { {"race", 0x00331, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0223E[] = { - { {"ac", 01, 2} }, - { {"acE", 0x00333, 3} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02242[] = { - { {"esim", 01, 4} }, - { {"nesim", 0x00338, 5} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0224B[] = { - { {"apid", 01, 4} }, - { {"napid", 0x00338, 5} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0224D[] = { - { {"CupCap", 01, 6} }, - { {"nvap", 0x020D2, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0224E[] = { - { {"bump", 01, 4} }, - { {"nbump", 0x00338, 5} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0224F[] = { - { {"HumpEqual", 01, 9} }, - { {"nbumpe", 0x00338, 6} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02250[] = { - { {"esdot", 01, 5} }, - { {"nedot", 0x00338, 5} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02261[] = { - { {"Congruent", 01, 9} }, - { {"bnequiv", 0x020E5, 7} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02264[] = { - { {"leq", 01, 3} }, - { {"nvle", 0x020D2, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02265[] = { - { {"ge", 01, 2} }, - { {"nvge", 0x020D2, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02266[] = { - { {"lE", 01, 2} }, - { {"nlE", 0x00338, 3} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02267[] = { - { {"geqq", 01, 4} }, - { {"NotGreaterFullEqual", 0x00338, 19} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02268[] = { - { {"lneqq", 01, 5} }, - { {"lvertneqq", 0x0FE00, 9} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02269[] = { - { {"gneqq", 01, 5} }, - { {"gvertneqq", 0x0FE00, 9} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0226A[] = { - { {"ll", 02, 2} }, - { {"nLtv", 0x00338, 4} }, - { {"nLt", 0x020D2, 3} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0226B[] = { - { {"gg", 02, 2} }, - { {"NotGreaterGreater", 0x00338, 17} }, - { {"nGt", 0x020D2, 3} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0227F[] = { - { {"SucceedsTilde", 01, 13} }, - { {"NotSucceedsTilde", 0x00338, 16} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02282[] = { - { {"sub", 01, 3} }, - { {"vnsub", 0x020D2, 5} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02283[] = { - { {"sup", 01, 3} }, - { {"nsupset", 0x020D2, 7} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0228A[] = { - { {"subsetneq", 01, 9} }, - { {"vsubne", 0x0FE00, 6} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0228B[] = { - { {"supsetneq", 01, 9} }, - { {"vsupne", 0x0FE00, 6} }, -}; -static const entity_multicodepoint_row multi_cp_html5_0228F[] = { - { {"sqsub", 01, 5} }, - { {"NotSquareSubset", 0x00338, 15} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02290[] = { - { {"sqsupset", 01, 8} }, - { {"NotSquareSuperset", 0x00338, 17} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02293[] = { - { {"sqcap", 01, 5} }, - { {"sqcaps", 0x0FE00, 6} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02294[] = { - { {"sqcup", 01, 5} }, - { {"sqcups", 0x0FE00, 6} }, -}; -static const entity_multicodepoint_row multi_cp_html5_022B4[] = { - { {"LeftTriangleEqual", 01, 17} }, - { {"nvltrie", 0x020D2, 7} }, -}; -static const entity_multicodepoint_row multi_cp_html5_022B5[] = { - { {"RightTriangleEqual", 01, 18} }, - { {"nvrtrie", 0x020D2, 7} }, -}; -static const entity_multicodepoint_row multi_cp_html5_022D8[] = { - { {"Ll", 01, 2} }, - { {"nLl", 0x00338, 3} }, -}; -static const entity_multicodepoint_row multi_cp_html5_022D9[] = { - { {"Gg", 01, 2} }, - { {"nGg", 0x00338, 3} }, -}; -static const entity_multicodepoint_row multi_cp_html5_022DA[] = { - { {"lesseqgtr", 01, 9} }, - { {"lesg", 0x0FE00, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_022DB[] = { - { {"gtreqless", 01, 9} }, - { {"gesl", 0x0FE00, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_022F5[] = { - { {"isindot", 01, 7} }, - { {"notindot", 0x00338, 8} }, -}; -static const entity_multicodepoint_row multi_cp_html5_022F9[] = { - { {"isinE", 01, 5} }, - { {"notinE", 0x00338, 6} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02933[] = { - { {"rarrc", 01, 5} }, - { {"nrarrc", 0x00338, 6} }, -}; -static const entity_multicodepoint_row multi_cp_html5_029CF[] = { - { {"LeftTriangleBar", 01, 15} }, - { {"NotLeftTriangleBar", 0x00338, 18} }, -}; -static const entity_multicodepoint_row multi_cp_html5_029D0[] = { - { {"RightTriangleBar", 01, 16} }, - { {"NotRightTriangleBar", 0x00338, 19} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02A6D[] = { - { {"congdot", 01, 7} }, - { {"ncongdot", 0x00338, 8} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02A70[] = { - { {"apE", 01, 3} }, - { {"napE", 0x00338, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02A7D[] = { - { {"les", 01, 3} }, - { {"nles", 0x00338, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02A7E[] = { - { {"ges", 01, 3} }, - { {"nges", 0x00338, 4} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02AA1[] = { - { {"LessLess", 01, 8} }, - { {"NotNestedLessLess", 0x00338, 17} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02AA2[] = { - { {"GreaterGreater", 01, 14} }, - { {"NotNestedGreaterGreater", 0x00338, 23} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02AAC[] = { - { {"smte", 01, 4} }, - { {"smtes", 0x0FE00, 5} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02AAD[] = { - { {"late", 01, 4} }, - { {"lates", 0x0FE00, 5} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02AAF[] = { - { {"preceq", 01, 6} }, - { {"NotPrecedesEqual", 0x00338, 16} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02AB0[] = { - { {"SucceedsEqual", 01, 13} }, - { {"NotSucceedsEqual", 0x00338, 16} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02AC5[] = { - { {"subE", 01, 4} }, - { {"nsubE", 0x00338, 5} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02AC6[] = { - { {"supseteqq", 01, 9} }, - { {"nsupseteqq", 0x00338, 10} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02ACB[] = { - { {"subsetneqq", 01, 10} }, - { {"vsubnE", 0x0FE00, 6} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02ACC[] = { - { {"supnE", 01, 5} }, - { {"varsupsetneqq", 0x0FE00, 13} }, -}; -static const entity_multicodepoint_row multi_cp_html5_02AFD[] = { - { {"parsl", 01, 5} }, - { {"nparsl", 0x020E5, 6} }, -}; - -/* End of double code point tables }}} */ - -/* {{{ Stage 3 Tables for HTML5 */ - -static const entity_stage3_row empty_stage3_table[] = { - /* 64 elements */ - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; -static const entity_stage3_row stage3_table_html5_00000[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"Tab", 3} } }, {0, { {"NewLine", 7} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"excl", 4} } }, {0, { {"quot", 4} } }, {0, { {"num", 3} } }, - {0, { {"dollar", 6} } }, {0, { {"percnt", 6} } }, {0, { {"amp", 3} } }, {0, { {"apos", 4} } }, - {0, { {"lpar", 4} } }, {0, { {"rpar", 4} } }, {0, { {"ast", 3} } }, {0, { {"plus", 4} } }, - {0, { {"comma", 5} } }, {0, { {NULL, 0} } }, {0, { {"period", 6} } }, {0, { {"sol", 3} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"colon", 5} } }, {0, { {"semi", 4} } }, - {1, { {(void *)multi_cp_html5_0003C, 0} } }, {1, { {(void *)multi_cp_html5_0003D, 0} } }, {1, { {(void *)multi_cp_html5_0003E, 0} } }, {0, { {"quest", 5} } }, -}; - -static const entity_stage3_row stage3_table_html5_00040[] = { - {0, { {"commat", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"lbrack", 6} } }, - {0, { {"bsol", 4} } }, {0, { {"rsqb", 4} } }, {0, { {"Hat", 3} } }, {0, { {"lowbar", 6} } }, - {0, { {"grave", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {1, { {(void *)multi_cp_html5_00066, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"lbrace", 6} } }, - {0, { {"vert", 4} } }, {0, { {"rcub", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_00080[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"nbsp", 4} } }, {0, { {"iexcl", 5} } }, {0, { {"cent", 4} } }, {0, { {"pound", 5} } }, - {0, { {"curren", 6} } }, {0, { {"yen", 3} } }, {0, { {"brvbar", 6} } }, {0, { {"sect", 4} } }, - {0, { {"DoubleDot", 9} } }, {0, { {"copy", 4} } }, {0, { {"ordf", 4} } }, {0, { {"laquo", 5} } }, - {0, { {"not", 3} } }, {0, { {"shy", 3} } }, {0, { {"reg", 3} } }, {0, { {"macr", 4} } }, - {0, { {"deg", 3} } }, {0, { {"plusmn", 6} } }, {0, { {"sup2", 4} } }, {0, { {"sup3", 4} } }, - {0, { {"DiacriticalAcute", 16} } }, {0, { {"micro", 5} } }, {0, { {"para", 4} } }, {0, { {"CenterDot", 9} } }, - {0, { {"Cedilla", 7} } }, {0, { {"sup1", 4} } }, {0, { {"ordm", 4} } }, {0, { {"raquo", 5} } }, - {0, { {"frac14", 6} } }, {0, { {"half", 4} } }, {0, { {"frac34", 6} } }, {0, { {"iquest", 6} } }, -}; - -static const entity_stage3_row stage3_table_html5_000C0[] = { - {0, { {"Agrave", 6} } }, {0, { {"Aacute", 6} } }, {0, { {"Acirc", 5} } }, {0, { {"Atilde", 6} } }, - {0, { {"Auml", 4} } }, {0, { {"Aring", 5} } }, {0, { {"AElig", 5} } }, {0, { {"Ccedil", 6} } }, - {0, { {"Egrave", 6} } }, {0, { {"Eacute", 6} } }, {0, { {"Ecirc", 5} } }, {0, { {"Euml", 4} } }, - {0, { {"Igrave", 6} } }, {0, { {"Iacute", 6} } }, {0, { {"Icirc", 5} } }, {0, { {"Iuml", 4} } }, - {0, { {"ETH", 3} } }, {0, { {"Ntilde", 6} } }, {0, { {"Ograve", 6} } }, {0, { {"Oacute", 6} } }, - {0, { {"Ocirc", 5} } }, {0, { {"Otilde", 6} } }, {0, { {"Ouml", 4} } }, {0, { {"times", 5} } }, - {0, { {"Oslash", 6} } }, {0, { {"Ugrave", 6} } }, {0, { {"Uacute", 6} } }, {0, { {"Ucirc", 5} } }, - {0, { {"Uuml", 4} } }, {0, { {"Yacute", 6} } }, {0, { {"THORN", 5} } }, {0, { {"szlig", 5} } }, - {0, { {"agrave", 6} } }, {0, { {"aacute", 6} } }, {0, { {"acirc", 5} } }, {0, { {"atilde", 6} } }, - {0, { {"auml", 4} } }, {0, { {"aring", 5} } }, {0, { {"aelig", 5} } }, {0, { {"ccedil", 6} } }, - {0, { {"egrave", 6} } }, {0, { {"eacute", 6} } }, {0, { {"ecirc", 5} } }, {0, { {"euml", 4} } }, - {0, { {"igrave", 6} } }, {0, { {"iacute", 6} } }, {0, { {"icirc", 5} } }, {0, { {"iuml", 4} } }, - {0, { {"eth", 3} } }, {0, { {"ntilde", 6} } }, {0, { {"ograve", 6} } }, {0, { {"oacute", 6} } }, - {0, { {"ocirc", 5} } }, {0, { {"otilde", 6} } }, {0, { {"ouml", 4} } }, {0, { {"divide", 6} } }, - {0, { {"oslash", 6} } }, {0, { {"ugrave", 6} } }, {0, { {"uacute", 6} } }, {0, { {"ucirc", 5} } }, - {0, { {"uuml", 4} } }, {0, { {"yacute", 6} } }, {0, { {"thorn", 5} } }, {0, { {"yuml", 4} } }, -}; - -static const entity_stage3_row stage3_table_html5_00100[] = { - {0, { {"Amacr", 5} } }, {0, { {"amacr", 5} } }, {0, { {"Abreve", 6} } }, {0, { {"abreve", 6} } }, - {0, { {"Aogon", 5} } }, {0, { {"aogon", 5} } }, {0, { {"Cacute", 6} } }, {0, { {"cacute", 6} } }, - {0, { {"Ccirc", 5} } }, {0, { {"ccirc", 5} } }, {0, { {"Cdot", 4} } }, {0, { {"cdot", 4} } }, - {0, { {"Ccaron", 6} } }, {0, { {"ccaron", 6} } }, {0, { {"Dcaron", 6} } }, {0, { {"dcaron", 6} } }, - {0, { {"Dstrok", 6} } }, {0, { {"dstrok", 6} } }, {0, { {"Emacr", 5} } }, {0, { {"emacr", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"Edot", 4} } }, {0, { {"edot", 4} } }, - {0, { {"Eogon", 5} } }, {0, { {"eogon", 5} } }, {0, { {"Ecaron", 6} } }, {0, { {"ecaron", 6} } }, - {0, { {"Gcirc", 5} } }, {0, { {"gcirc", 5} } }, {0, { {"Gbreve", 6} } }, {0, { {"gbreve", 6} } }, - {0, { {"Gdot", 4} } }, {0, { {"gdot", 4} } }, {0, { {"Gcedil", 6} } }, {0, { {NULL, 0} } }, - {0, { {"Hcirc", 5} } }, {0, { {"hcirc", 5} } }, {0, { {"Hstrok", 6} } }, {0, { {"hstrok", 6} } }, - {0, { {"Itilde", 6} } }, {0, { {"itilde", 6} } }, {0, { {"Imacr", 5} } }, {0, { {"imacr", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"Iogon", 5} } }, {0, { {"iogon", 5} } }, - {0, { {"Idot", 4} } }, {0, { {"inodot", 6} } }, {0, { {"IJlig", 5} } }, {0, { {"ijlig", 5} } }, - {0, { {"Jcirc", 5} } }, {0, { {"jcirc", 5} } }, {0, { {"Kcedil", 6} } }, {0, { {"kcedil", 6} } }, - {0, { {"kgreen", 6} } }, {0, { {"Lacute", 6} } }, {0, { {"lacute", 6} } }, {0, { {"Lcedil", 6} } }, - {0, { {"lcedil", 6} } }, {0, { {"Lcaron", 6} } }, {0, { {"lcaron", 6} } }, {0, { {"Lmidot", 6} } }, -}; - -static const entity_stage3_row stage3_table_html5_00140[] = { - {0, { {"lmidot", 6} } }, {0, { {"Lstrok", 6} } }, {0, { {"lstrok", 6} } }, {0, { {"Nacute", 6} } }, - {0, { {"nacute", 6} } }, {0, { {"Ncedil", 6} } }, {0, { {"ncedil", 6} } }, {0, { {"Ncaron", 6} } }, - {0, { {"ncaron", 6} } }, {0, { {"napos", 5} } }, {0, { {"ENG", 3} } }, {0, { {"eng", 3} } }, - {0, { {"Omacr", 5} } }, {0, { {"omacr", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"Odblac", 6} } }, {0, { {"odblac", 6} } }, {0, { {"OElig", 5} } }, {0, { {"oelig", 5} } }, - {0, { {"Racute", 6} } }, {0, { {"racute", 6} } }, {0, { {"Rcedil", 6} } }, {0, { {"rcedil", 6} } }, - {0, { {"Rcaron", 6} } }, {0, { {"rcaron", 6} } }, {0, { {"Sacute", 6} } }, {0, { {"sacute", 6} } }, - {0, { {"Scirc", 5} } }, {0, { {"scirc", 5} } }, {0, { {"Scedil", 6} } }, {0, { {"scedil", 6} } }, - {0, { {"Scaron", 6} } }, {0, { {"scaron", 6} } }, {0, { {"Tcedil", 6} } }, {0, { {"tcedil", 6} } }, - {0, { {"Tcaron", 6} } }, {0, { {"tcaron", 6} } }, {0, { {"Tstrok", 6} } }, {0, { {"tstrok", 6} } }, - {0, { {"Utilde", 6} } }, {0, { {"utilde", 6} } }, {0, { {"Umacr", 5} } }, {0, { {"umacr", 5} } }, - {0, { {"Ubreve", 6} } }, {0, { {"ubreve", 6} } }, {0, { {"Uring", 5} } }, {0, { {"uring", 5} } }, - {0, { {"Udblac", 6} } }, {0, { {"udblac", 6} } }, {0, { {"Uogon", 5} } }, {0, { {"uogon", 5} } }, - {0, { {"Wcirc", 5} } }, {0, { {"wcirc", 5} } }, {0, { {"Ycirc", 5} } }, {0, { {"ycirc", 5} } }, - {0, { {"Yuml", 4} } }, {0, { {"Zacute", 6} } }, {0, { {"zacute", 6} } }, {0, { {"Zdot", 4} } }, - {0, { {"zdot", 4} } }, {0, { {"Zcaron", 6} } }, {0, { {"zcaron", 6} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_00180[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"fnof", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"imped", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_001C0[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"gacute", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_00200[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"jmath", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_002C0[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"circ", 4} } }, {0, { {"Hacek", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"Breve", 5} } }, {0, { {"dot", 3} } }, {0, { {"ring", 4} } }, {0, { {"ogon", 4} } }, - {0, { {"DiacriticalTilde", 16} } }, {0, { {"DiacriticalDoubleAcute", 22} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_00300[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"DownBreve", 9} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_00380[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"Alpha", 5} } }, {0, { {"Beta", 4} } }, {0, { {"Gamma", 5} } }, - {0, { {"Delta", 5} } }, {0, { {"Epsilon", 7} } }, {0, { {"Zeta", 4} } }, {0, { {"Eta", 3} } }, - {0, { {"Theta", 5} } }, {0, { {"Iota", 4} } }, {0, { {"Kappa", 5} } }, {0, { {"Lambda", 6} } }, - {0, { {"Mu", 2} } }, {0, { {"Nu", 2} } }, {0, { {"Xi", 2} } }, {0, { {"Omicron", 7} } }, - {0, { {"Pi", 2} } }, {0, { {"Rho", 3} } }, {0, { {NULL, 0} } }, {0, { {"Sigma", 5} } }, - {0, { {"Tau", 3} } }, {0, { {"Upsilon", 7} } }, {0, { {"Phi", 3} } }, {0, { {"Chi", 3} } }, - {0, { {"Psi", 3} } }, {0, { {"Omega", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"alpha", 5} } }, {0, { {"beta", 4} } }, {0, { {"gamma", 5} } }, - {0, { {"delta", 5} } }, {0, { {"epsi", 4} } }, {0, { {"zeta", 4} } }, {0, { {"eta", 3} } }, - {0, { {"theta", 5} } }, {0, { {"iota", 4} } }, {0, { {"kappa", 5} } }, {0, { {"lambda", 6} } }, - {0, { {"mu", 2} } }, {0, { {"nu", 2} } }, {0, { {"xi", 2} } }, {0, { {"omicron", 7} } }, -}; - -static const entity_stage3_row stage3_table_html5_003C0[] = { - {0, { {"pi", 2} } }, {0, { {"rho", 3} } }, {0, { {"sigmav", 6} } }, {0, { {"sigma", 5} } }, - {0, { {"tau", 3} } }, {0, { {"upsi", 4} } }, {0, { {"phi", 3} } }, {0, { {"chi", 3} } }, - {0, { {"psi", 3} } }, {0, { {"omega", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"thetasym", 8} } }, {0, { {"upsih", 5} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"straightphi", 11} } }, {0, { {"piv", 3} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"Gammad", 6} } }, {0, { {"gammad", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"varkappa", 8} } }, {0, { {"rhov", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"straightepsilon", 15} } }, {0, { {"backepsilon", 11} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_00400[] = { - {0, { {NULL, 0} } }, {0, { {"IOcy", 4} } }, {0, { {"DJcy", 4} } }, {0, { {"GJcy", 4} } }, - {0, { {"Jukcy", 5} } }, {0, { {"DScy", 4} } }, {0, { {"Iukcy", 5} } }, {0, { {"YIcy", 4} } }, - {0, { {"Jsercy", 6} } }, {0, { {"LJcy", 4} } }, {0, { {"NJcy", 4} } }, {0, { {"TSHcy", 5} } }, - {0, { {"KJcy", 4} } }, {0, { {NULL, 0} } }, {0, { {"Ubrcy", 5} } }, {0, { {"DZcy", 4} } }, - {0, { {"Acy", 3} } }, {0, { {"Bcy", 3} } }, {0, { {"Vcy", 3} } }, {0, { {"Gcy", 3} } }, - {0, { {"Dcy", 3} } }, {0, { {"IEcy", 4} } }, {0, { {"ZHcy", 4} } }, {0, { {"Zcy", 3} } }, - {0, { {"Icy", 3} } }, {0, { {"Jcy", 3} } }, {0, { {"Kcy", 3} } }, {0, { {"Lcy", 3} } }, - {0, { {"Mcy", 3} } }, {0, { {"Ncy", 3} } }, {0, { {"Ocy", 3} } }, {0, { {"Pcy", 3} } }, - {0, { {"Rcy", 3} } }, {0, { {"Scy", 3} } }, {0, { {"Tcy", 3} } }, {0, { {"Ucy", 3} } }, - {0, { {"Fcy", 3} } }, {0, { {"KHcy", 4} } }, {0, { {"TScy", 4} } }, {0, { {"CHcy", 4} } }, - {0, { {"SHcy", 4} } }, {0, { {"SHCHcy", 6} } }, {0, { {"HARDcy", 6} } }, {0, { {"Ycy", 3} } }, - {0, { {"SOFTcy", 6} } }, {0, { {"Ecy", 3} } }, {0, { {"YUcy", 4} } }, {0, { {"YAcy", 4} } }, - {0, { {"acy", 3} } }, {0, { {"bcy", 3} } }, {0, { {"vcy", 3} } }, {0, { {"gcy", 3} } }, - {0, { {"dcy", 3} } }, {0, { {"iecy", 4} } }, {0, { {"zhcy", 4} } }, {0, { {"zcy", 3} } }, - {0, { {"icy", 3} } }, {0, { {"jcy", 3} } }, {0, { {"kcy", 3} } }, {0, { {"lcy", 3} } }, - {0, { {"mcy", 3} } }, {0, { {"ncy", 3} } }, {0, { {"ocy", 3} } }, {0, { {"pcy", 3} } }, -}; - -static const entity_stage3_row stage3_table_html5_00440[] = { - {0, { {"rcy", 3} } }, {0, { {"scy", 3} } }, {0, { {"tcy", 3} } }, {0, { {"ucy", 3} } }, - {0, { {"fcy", 3} } }, {0, { {"khcy", 4} } }, {0, { {"tscy", 4} } }, {0, { {"chcy", 4} } }, - {0, { {"shcy", 4} } }, {0, { {"shchcy", 6} } }, {0, { {"hardcy", 6} } }, {0, { {"ycy", 3} } }, - {0, { {"softcy", 6} } }, {0, { {"ecy", 3} } }, {0, { {"yucy", 4} } }, {0, { {"yacy", 4} } }, - {0, { {NULL, 0} } }, {0, { {"iocy", 4} } }, {0, { {"djcy", 4} } }, {0, { {"gjcy", 4} } }, - {0, { {"jukcy", 5} } }, {0, { {"dscy", 4} } }, {0, { {"iukcy", 5} } }, {0, { {"yicy", 4} } }, - {0, { {"jsercy", 6} } }, {0, { {"ljcy", 4} } }, {0, { {"njcy", 4} } }, {0, { {"tshcy", 5} } }, - {0, { {"kjcy", 4} } }, {0, { {NULL, 0} } }, {0, { {"ubrcy", 5} } }, {0, { {"dzcy", 4} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02000[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"ensp", 4} } }, {0, { {"emsp", 4} } }, - {0, { {"emsp13", 6} } }, {0, { {"emsp14", 6} } }, {0, { {NULL, 0} } }, {0, { {"numsp", 5} } }, - {0, { {"puncsp", 6} } }, {0, { {"ThinSpace", 9} } }, {0, { {"hairsp", 6} } }, {0, { {"ZeroWidthSpace", 14} } }, - {0, { {"zwnj", 4} } }, {0, { {"zwj", 3} } }, {0, { {"lrm", 3} } }, {0, { {"rlm", 3} } }, - {0, { {"hyphen", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"ndash", 5} } }, - {0, { {"mdash", 5} } }, {0, { {"horbar", 6} } }, {0, { {"Verbar", 6} } }, {0, { {NULL, 0} } }, - {0, { {"OpenCurlyQuote", 14} } }, {0, { {"rsquo", 5} } }, {0, { {"sbquo", 5} } }, {0, { {NULL, 0} } }, - {0, { {"OpenCurlyDoubleQuote", 20} } }, {0, { {"rdquo", 5} } }, {0, { {"bdquo", 5} } }, {0, { {NULL, 0} } }, - {0, { {"dagger", 6} } }, {0, { {"Dagger", 6} } }, {0, { {"bull", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"nldr", 4} } }, {0, { {"hellip", 6} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"permil", 6} } }, {0, { {"pertenk", 7} } }, {0, { {"prime", 5} } }, {0, { {"Prime", 5} } }, - {0, { {"tprime", 6} } }, {0, { {"backprime", 9} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"lsaquo", 6} } }, {0, { {"rsaquo", 6} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"oline", 5} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02040[] = { - {0, { {NULL, 0} } }, {0, { {"caret", 5} } }, {0, { {NULL, 0} } }, {0, { {"hybull", 6} } }, - {0, { {"frasl", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"bsemi", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"qprime", 6} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {1, { {(void *)multi_cp_html5_0205F, 0} } }, - {0, { {"NoBreak", 7} } }, {0, { {"af", 2} } }, {0, { {"InvisibleTimes", 14} } }, {0, { {"ic", 2} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02080[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"euro", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_020C0[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"TripleDot", 9} } }, - {0, { {"DotDot", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02100[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"complexes", 9} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"incare", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"gscr", 4} } }, {0, { {"HilbertSpace", 12} } }, - {0, { {"Hfr", 3} } }, {0, { {"Hopf", 4} } }, {0, { {"planckh", 7} } }, {0, { {"planck", 6} } }, - {0, { {"imagline", 8} } }, {0, { {"Ifr", 3} } }, {0, { {"lagran", 6} } }, {0, { {"ell", 3} } }, - {0, { {NULL, 0} } }, {0, { {"naturals", 8} } }, {0, { {"numero", 6} } }, {0, { {"copysr", 6} } }, - {0, { {"wp", 2} } }, {0, { {"primes", 6} } }, {0, { {"rationals", 9} } }, {0, { {"realine", 7} } }, - {0, { {"Rfr", 3} } }, {0, { {"Ropf", 4} } }, {0, { {"rx", 2} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"trade", 5} } }, {0, { {NULL, 0} } }, - {0, { {"Zopf", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"mho", 3} } }, - {0, { {"Zfr", 3} } }, {0, { {"iiota", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"Bscr", 4} } }, {0, { {"Cfr", 3} } }, {0, { {NULL, 0} } }, {0, { {"escr", 4} } }, - {0, { {"expectation", 11} } }, {0, { {"Fouriertrf", 10} } }, {0, { {NULL, 0} } }, {0, { {"Mellintrf", 9} } }, - {0, { {"orderof", 7} } }, {0, { {"aleph", 5} } }, {0, { {"beth", 4} } }, {0, { {"gimel", 5} } }, - {0, { {"daleth", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02140[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"CapitalDifferentialD", 20} } }, {0, { {"DifferentialD", 13} } }, {0, { {"exponentiale", 12} } }, - {0, { {"ImaginaryI", 10} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"frac13", 6} } }, - {0, { {"frac23", 6} } }, {0, { {"frac15", 6} } }, {0, { {"frac25", 6} } }, {0, { {"frac35", 6} } }, - {0, { {"frac45", 6} } }, {0, { {"frac16", 6} } }, {0, { {"frac56", 6} } }, {0, { {"frac18", 6} } }, - {0, { {"frac38", 6} } }, {0, { {"frac58", 6} } }, {0, { {"frac78", 6} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02180[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"larr", 4} } }, {0, { {"uarr", 4} } }, {0, { {"srarr", 5} } }, {0, { {"darr", 4} } }, - {0, { {"harr", 4} } }, {0, { {"UpDownArrow", 11} } }, {0, { {"nwarrow", 7} } }, {0, { {"UpperRightArrow", 15} } }, - {0, { {"LowerRightArrow", 15} } }, {0, { {"swarr", 5} } }, {0, { {"nleftarrow", 10} } }, {0, { {"nrarr", 5} } }, - {0, { {NULL, 0} } }, {1, { {(void *)multi_cp_html5_0219D, 0} } }, {0, { {"Larr", 4} } }, {0, { {"Uarr", 4} } }, - {0, { {"twoheadrightarrow", 17} } }, {0, { {"Darr", 4} } }, {0, { {"larrtl", 6} } }, {0, { {"rarrtl", 6} } }, - {0, { {"LeftTeeArrow", 12} } }, {0, { {"UpTeeArrow", 10} } }, {0, { {"map", 3} } }, {0, { {"DownTeeArrow", 12} } }, - {0, { {NULL, 0} } }, {0, { {"larrhk", 6} } }, {0, { {"rarrhk", 6} } }, {0, { {"larrlp", 6} } }, - {0, { {"looparrowright", 14} } }, {0, { {"harrw", 5} } }, {0, { {"nleftrightarrow", 15} } }, {0, { {NULL, 0} } }, - {0, { {"Lsh", 3} } }, {0, { {"rsh", 3} } }, {0, { {"ldsh", 4} } }, {0, { {"rdsh", 4} } }, - {0, { {NULL, 0} } }, {0, { {"crarr", 5} } }, {0, { {"curvearrowleft", 14} } }, {0, { {"curarr", 6} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"olarr", 5} } }, {0, { {"orarr", 5} } }, - {0, { {"leftharpoonup", 13} } }, {0, { {"leftharpoondown", 15} } }, {0, { {"RightUpVector", 13} } }, {0, { {"uharl", 5} } }, -}; - -static const entity_stage3_row stage3_table_html5_021C0[] = { - {0, { {"rharu", 5} } }, {0, { {"rhard", 5} } }, {0, { {"RightDownVector", 15} } }, {0, { {"dharl", 5} } }, - {0, { {"rightleftarrows", 15} } }, {0, { {"udarr", 5} } }, {0, { {"lrarr", 5} } }, {0, { {"llarr", 5} } }, - {0, { {"upuparrows", 10} } }, {0, { {"rrarr", 5} } }, {0, { {"downdownarrows", 14} } }, {0, { {"leftrightharpoons", 17} } }, - {0, { {"rightleftharpoons", 17} } }, {0, { {"nLeftarrow", 10} } }, {0, { {"nhArr", 5} } }, {0, { {"nrArr", 5} } }, - {0, { {"DoubleLeftArrow", 15} } }, {0, { {"DoubleUpArrow", 13} } }, {0, { {"Implies", 7} } }, {0, { {"Downarrow", 9} } }, - {0, { {"hArr", 4} } }, {0, { {"Updownarrow", 11} } }, {0, { {"nwArr", 5} } }, {0, { {"neArr", 5} } }, - {0, { {"seArr", 5} } }, {0, { {"swArr", 5} } }, {0, { {"lAarr", 5} } }, {0, { {"rAarr", 5} } }, - {0, { {NULL, 0} } }, {0, { {"zigrarr", 7} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"LeftArrowBar", 12} } }, {0, { {"RightArrowBar", 13} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"DownArrowUpArrow", 16} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"loarr", 5} } }, {0, { {"roarr", 5} } }, {0, { {"hoarr", 5} } }, -}; - -static const entity_stage3_row stage3_table_html5_02200[] = { - {0, { {"forall", 6} } }, {0, { {"comp", 4} } }, {1, { {(void *)multi_cp_html5_02202, 0} } }, {0, { {"Exists", 6} } }, - {0, { {"nexist", 6} } }, {0, { {"empty", 5} } }, {0, { {NULL, 0} } }, {0, { {"nabla", 5} } }, - {0, { {"isinv", 5} } }, {0, { {"notin", 5} } }, {0, { {NULL, 0} } }, {0, { {"ReverseElement", 14} } }, - {0, { {"notniva", 7} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"prod", 4} } }, - {0, { {"Coproduct", 9} } }, {0, { {"sum", 3} } }, {0, { {"minus", 5} } }, {0, { {"MinusPlus", 9} } }, - {0, { {"plusdo", 6} } }, {0, { {NULL, 0} } }, {0, { {"ssetmn", 6} } }, {0, { {"lowast", 6} } }, - {0, { {"compfn", 6} } }, {0, { {NULL, 0} } }, {0, { {"Sqrt", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"prop", 4} } }, {0, { {"infin", 5} } }, {0, { {"angrt", 5} } }, - {1, { {(void *)multi_cp_html5_02220, 0} } }, {0, { {"angmsd", 6} } }, {0, { {"angsph", 6} } }, {0, { {"mid", 3} } }, - {0, { {"nshortmid", 9} } }, {0, { {"shortparallel", 13} } }, {0, { {"nparallel", 9} } }, {0, { {"and", 3} } }, - {0, { {"or", 2} } }, {1, { {(void *)multi_cp_html5_02229, 0} } }, {1, { {(void *)multi_cp_html5_0222A, 0} } }, {0, { {"Integral", 8} } }, - {0, { {"Int", 3} } }, {0, { {"tint", 4} } }, {0, { {"ContourIntegral", 15} } }, {0, { {"DoubleContourIntegral", 21} } }, - {0, { {"Cconint", 7} } }, {0, { {"cwint", 5} } }, {0, { {"cwconint", 8} } }, {0, { {"awconint", 8} } }, - {0, { {"there4", 6} } }, {0, { {"Because", 7} } }, {0, { {"ratio", 5} } }, {0, { {"Colon", 5} } }, - {0, { {"minusd", 6} } }, {0, { {NULL, 0} } }, {0, { {"mDDot", 5} } }, {0, { {"homtht", 6} } }, - {1, { {(void *)multi_cp_html5_0223C, 0} } }, {1, { {(void *)multi_cp_html5_0223D, 0} } }, {1, { {(void *)multi_cp_html5_0223E, 0} } }, {0, { {"acd", 3} } }, -}; - -static const entity_stage3_row stage3_table_html5_02240[] = { - {0, { {"wr", 2} } }, {0, { {"NotTilde", 8} } }, {1, { {(void *)multi_cp_html5_02242, 0} } }, {0, { {"simeq", 5} } }, - {0, { {"nsime", 5} } }, {0, { {"TildeFullEqual", 14} } }, {0, { {"simne", 5} } }, {0, { {"ncong", 5} } }, - {0, { {"approx", 6} } }, {0, { {"napprox", 7} } }, {0, { {"ape", 3} } }, {1, { {(void *)multi_cp_html5_0224B, 0} } }, - {0, { {"bcong", 5} } }, {1, { {(void *)multi_cp_html5_0224D, 0} } }, {1, { {(void *)multi_cp_html5_0224E, 0} } }, {1, { {(void *)multi_cp_html5_0224F, 0} } }, - {1, { {(void *)multi_cp_html5_02250, 0} } }, {0, { {"doteqdot", 8} } }, {0, { {"fallingdotseq", 13} } }, {0, { {"risingdotseq", 12} } }, - {0, { {"coloneq", 7} } }, {0, { {"eqcolon", 7} } }, {0, { {"ecir", 4} } }, {0, { {"circeq", 6} } }, - {0, { {NULL, 0} } }, {0, { {"wedgeq", 6} } }, {0, { {"veeeq", 5} } }, {0, { {NULL, 0} } }, - {0, { {"triangleq", 9} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"equest", 6} } }, - {0, { {"NotEqual", 8} } }, {1, { {(void *)multi_cp_html5_02261, 0} } }, {0, { {"NotCongruent", 12} } }, {0, { {NULL, 0} } }, - {1, { {(void *)multi_cp_html5_02264, 0} } }, {1, { {(void *)multi_cp_html5_02265, 0} } }, {1, { {(void *)multi_cp_html5_02266, 0} } }, {1, { {(void *)multi_cp_html5_02267, 0} } }, - {1, { {(void *)multi_cp_html5_02268, 0} } }, {1, { {(void *)multi_cp_html5_02269, 0} } }, {1, { {(void *)multi_cp_html5_0226A, 0} } }, {1, { {(void *)multi_cp_html5_0226B, 0} } }, - {0, { {"between", 7} } }, {0, { {"NotCupCap", 9} } }, {0, { {"NotLess", 7} } }, {0, { {"ngtr", 4} } }, - {0, { {"NotLessEqual", 12} } }, {0, { {"ngeq", 4} } }, {0, { {"LessTilde", 9} } }, {0, { {"GreaterTilde", 12} } }, - {0, { {"nlsim", 5} } }, {0, { {"ngsim", 5} } }, {0, { {"lessgtr", 7} } }, {0, { {"gl", 2} } }, - {0, { {"ntlg", 4} } }, {0, { {"NotGreaterLess", 14} } }, {0, { {"prec", 4} } }, {0, { {"succ", 4} } }, - {0, { {"PrecedesSlantEqual", 18} } }, {0, { {"succcurlyeq", 11} } }, {0, { {"precsim", 7} } }, {1, { {(void *)multi_cp_html5_0227F, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02280[] = { - {0, { {"npr", 3} } }, {0, { {"NotSucceeds", 11} } }, {1, { {(void *)multi_cp_html5_02282, 0} } }, {1, { {(void *)multi_cp_html5_02283, 0} } }, - {0, { {"nsub", 4} } }, {0, { {"nsup", 4} } }, {0, { {"SubsetEqual", 11} } }, {0, { {"supe", 4} } }, - {0, { {"NotSubsetEqual", 14} } }, {0, { {"NotSupersetEqual", 16} } }, {1, { {(void *)multi_cp_html5_0228A, 0} } }, {1, { {(void *)multi_cp_html5_0228B, 0} } }, - {0, { {NULL, 0} } }, {0, { {"cupdot", 6} } }, {0, { {"UnionPlus", 9} } }, {1, { {(void *)multi_cp_html5_0228F, 0} } }, - {1, { {(void *)multi_cp_html5_02290, 0} } }, {0, { {"SquareSubsetEqual", 17} } }, {0, { {"SquareSupersetEqual", 19} } }, {1, { {(void *)multi_cp_html5_02293, 0} } }, - {1, { {(void *)multi_cp_html5_02294, 0} } }, {0, { {"CirclePlus", 10} } }, {0, { {"ominus", 6} } }, {0, { {"CircleTimes", 11} } }, - {0, { {"osol", 4} } }, {0, { {"CircleDot", 9} } }, {0, { {"ocir", 4} } }, {0, { {"oast", 4} } }, - {0, { {NULL, 0} } }, {0, { {"odash", 5} } }, {0, { {"boxplus", 7} } }, {0, { {"boxminus", 8} } }, - {0, { {"timesb", 6} } }, {0, { {"sdotb", 5} } }, {0, { {"vdash", 5} } }, {0, { {"dashv", 5} } }, - {0, { {"DownTee", 7} } }, {0, { {"perp", 4} } }, {0, { {NULL, 0} } }, {0, { {"models", 6} } }, - {0, { {"DoubleRightTee", 14} } }, {0, { {"Vdash", 5} } }, {0, { {"Vvdash", 6} } }, {0, { {"VDash", 5} } }, - {0, { {"nvdash", 6} } }, {0, { {"nvDash", 6} } }, {0, { {"nVdash", 6} } }, {0, { {"nVDash", 6} } }, - {0, { {"prurel", 6} } }, {0, { {NULL, 0} } }, {0, { {"vartriangleleft", 15} } }, {0, { {"vrtri", 5} } }, - {1, { {(void *)multi_cp_html5_022B4, 0} } }, {1, { {(void *)multi_cp_html5_022B5, 0} } }, {0, { {"origof", 6} } }, {0, { {"imof", 4} } }, - {0, { {"mumap", 5} } }, {0, { {"hercon", 6} } }, {0, { {"intcal", 6} } }, {0, { {"veebar", 6} } }, - {0, { {NULL, 0} } }, {0, { {"barvee", 6} } }, {0, { {"angrtvb", 7} } }, {0, { {"lrtri", 5} } }, -}; - -static const entity_stage3_row stage3_table_html5_022C0[] = { - {0, { {"xwedge", 6} } }, {0, { {"xvee", 4} } }, {0, { {"bigcap", 6} } }, {0, { {"bigcup", 6} } }, - {0, { {"diamond", 7} } }, {0, { {"sdot", 4} } }, {0, { {"Star", 4} } }, {0, { {"divonx", 6} } }, - {0, { {"bowtie", 6} } }, {0, { {"ltimes", 6} } }, {0, { {"rtimes", 6} } }, {0, { {"lthree", 6} } }, - {0, { {"rthree", 6} } }, {0, { {"backsimeq", 9} } }, {0, { {"curlyvee", 8} } }, {0, { {"curlywedge", 10} } }, - {0, { {"Sub", 3} } }, {0, { {"Supset", 6} } }, {0, { {"Cap", 3} } }, {0, { {"Cup", 3} } }, - {0, { {"pitchfork", 9} } }, {0, { {"epar", 4} } }, {0, { {"lessdot", 7} } }, {0, { {"gtrdot", 6} } }, - {1, { {(void *)multi_cp_html5_022D8, 0} } }, {1, { {(void *)multi_cp_html5_022D9, 0} } }, {1, { {(void *)multi_cp_html5_022DA, 0} } }, {1, { {(void *)multi_cp_html5_022DB, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"curlyeqprec", 11} } }, {0, { {"cuesc", 5} } }, - {0, { {"NotPrecedesSlantEqual", 21} } }, {0, { {"NotSucceedsSlantEqual", 21} } }, {0, { {"NotSquareSubsetEqual", 20} } }, {0, { {"NotSquareSupersetEqual", 22} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"lnsim", 5} } }, {0, { {"gnsim", 5} } }, - {0, { {"precnsim", 8} } }, {0, { {"scnsim", 6} } }, {0, { {"nltri", 5} } }, {0, { {"ntriangleright", 14} } }, - {0, { {"nltrie", 6} } }, {0, { {"NotRightTriangleEqual", 21} } }, {0, { {"vellip", 6} } }, {0, { {"ctdot", 5} } }, - {0, { {"utdot", 5} } }, {0, { {"dtdot", 5} } }, {0, { {"disin", 5} } }, {0, { {"isinsv", 6} } }, - {0, { {"isins", 5} } }, {1, { {(void *)multi_cp_html5_022F5, 0} } }, {0, { {"notinvc", 7} } }, {0, { {"notinvb", 7} } }, - {0, { {NULL, 0} } }, {1, { {(void *)multi_cp_html5_022F9, 0} } }, {0, { {"nisd", 4} } }, {0, { {"xnis", 4} } }, - {0, { {"nis", 3} } }, {0, { {"notnivc", 7} } }, {0, { {"notnivb", 7} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02300[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"barwed", 6} } }, {0, { {"doublebarwedge", 14} } }, {0, { {NULL, 0} } }, - {0, { {"lceil", 5} } }, {0, { {"RightCeiling", 12} } }, {0, { {"LeftFloor", 9} } }, {0, { {"RightFloor", 10} } }, - {0, { {"drcrop", 6} } }, {0, { {"dlcrop", 6} } }, {0, { {"urcrop", 6} } }, {0, { {"ulcrop", 6} } }, - {0, { {"bnot", 4} } }, {0, { {NULL, 0} } }, {0, { {"profline", 8} } }, {0, { {"profsurf", 8} } }, - {0, { {NULL, 0} } }, {0, { {"telrec", 6} } }, {0, { {"target", 6} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"ulcorner", 8} } }, {0, { {"urcorner", 8} } }, {0, { {"llcorner", 8} } }, {0, { {"drcorn", 6} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"frown", 5} } }, {0, { {"smile", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"cylcty", 6} } }, {0, { {"profalar", 8} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"topbot", 6} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"ovbar", 5} } }, {0, { {NULL, 0} } }, {0, { {"solbar", 6} } }, -}; - -static const entity_stage3_row stage3_table_html5_02340[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"angzarr", 7} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02380[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"lmoust", 6} } }, {0, { {"rmoust", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"OverBracket", 11} } }, {0, { {"bbrk", 4} } }, {0, { {"bbrktbrk", 8} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_023C0[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"OverParenthesis", 15} } }, {0, { {"UnderParenthesis", 16} } }, {0, { {"OverBrace", 9} } }, {0, { {"UnderBrace", 10} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"trpezium", 8} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"elinters", 8} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02400[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"blank", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_024C0[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"oS", 2} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02500[] = { - {0, { {"HorizontalLine", 14} } }, {0, { {NULL, 0} } }, {0, { {"boxv", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"boxdr", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"boxdl", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"boxur", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"boxul", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"boxvr", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"boxvl", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"boxhd", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"boxhu", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"boxvh", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02540[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"boxH", 4} } }, {0, { {"boxV", 4} } }, {0, { {"boxdR", 5} } }, {0, { {"boxDr", 5} } }, - {0, { {"boxDR", 5} } }, {0, { {"boxdL", 5} } }, {0, { {"boxDl", 5} } }, {0, { {"boxDL", 5} } }, - {0, { {"boxuR", 5} } }, {0, { {"boxUr", 5} } }, {0, { {"boxUR", 5} } }, {0, { {"boxuL", 5} } }, - {0, { {"boxUl", 5} } }, {0, { {"boxUL", 5} } }, {0, { {"boxvR", 5} } }, {0, { {"boxVr", 5} } }, - {0, { {"boxVR", 5} } }, {0, { {"boxvL", 5} } }, {0, { {"boxVl", 5} } }, {0, { {"boxVL", 5} } }, - {0, { {"boxHd", 5} } }, {0, { {"boxhD", 5} } }, {0, { {"boxHD", 5} } }, {0, { {"boxHu", 5} } }, - {0, { {"boxhU", 5} } }, {0, { {"boxHU", 5} } }, {0, { {"boxvH", 5} } }, {0, { {"boxVh", 5} } }, - {0, { {"boxVH", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02580[] = { - {0, { {"uhblk", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"lhblk", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"block", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"blk14", 5} } }, {0, { {"blk12", 5} } }, {0, { {"blk34", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"Square", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"squarf", 6} } }, {0, { {"EmptyVerySmallSquare", 20} } }, - {0, { {NULL, 0} } }, {0, { {"rect", 4} } }, {0, { {"marker", 6} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"fltns", 5} } }, {0, { {NULL, 0} } }, {0, { {"bigtriangleup", 13} } }, - {0, { {"blacktriangle", 13} } }, {0, { {"triangle", 8} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"blacktriangleright", 18} } }, {0, { {"rtri", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"bigtriangledown", 15} } }, {0, { {"blacktriangledown", 17} } }, {0, { {"triangledown", 12} } }, -}; - -static const entity_stage3_row stage3_table_html5_025C0[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"blacktriangleleft", 17} } }, {0, { {"ltri", 4} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"lozenge", 7} } }, {0, { {"cir", 3} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"tridot", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"bigcirc", 7} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"ultri", 5} } }, {0, { {"urtri", 5} } }, {0, { {"lltri", 5} } }, {0, { {"EmptySmallSquare", 16} } }, - {0, { {"FilledSmallSquare", 17} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02600[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"starf", 5} } }, {0, { {"star", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"phone", 5} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02640[] = { - {0, { {"female", 6} } }, {0, { {NULL, 0} } }, {0, { {"male", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"spadesuit", 9} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"clubs", 5} } }, - {0, { {NULL, 0} } }, {0, { {"hearts", 6} } }, {0, { {"diamondsuit", 11} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"sung", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"flat", 4} } }, {0, { {"natur", 5} } }, {0, { {"sharp", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02700[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"check", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"cross", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"maltese", 7} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"sext", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02740[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"VerticalSeparator", 17} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"lbbrk", 5} } }, {0, { {"rbbrk", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_027C0[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"bsolhsub", 8} } }, {0, { {"suphsol", 7} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"LeftDoubleBracket", 17} } }, {0, { {"RightDoubleBracket", 18} } }, - {0, { {"langle", 6} } }, {0, { {"RightAngleBracket", 17} } }, {0, { {"Lang", 4} } }, {0, { {"Rang", 4} } }, - {0, { {"loang", 5} } }, {0, { {"roang", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"longleftarrow", 13} } }, {0, { {"LongRightArrow", 14} } }, {0, { {"LongLeftRightArrow", 18} } }, - {0, { {"xlArr", 5} } }, {0, { {"DoubleLongRightArrow", 20} } }, {0, { {"xhArr", 5} } }, {0, { {NULL, 0} } }, - {0, { {"xmap", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"dzigrarr", 8} } }, -}; - -static const entity_stage3_row stage3_table_html5_02900[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"nvlArr", 6} } }, {0, { {"nvrArr", 6} } }, - {0, { {"nvHarr", 6} } }, {0, { {"Map", 3} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"lbarr", 5} } }, {0, { {"bkarow", 6} } }, {0, { {"lBarr", 5} } }, {0, { {"dbkarow", 7} } }, - {0, { {"drbkarow", 8} } }, {0, { {"DDotrahd", 8} } }, {0, { {"UpArrowBar", 10} } }, {0, { {"DownArrowBar", 12} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"Rarrtl", 6} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"latail", 6} } }, {0, { {"ratail", 6} } }, {0, { {"lAtail", 6} } }, - {0, { {"rAtail", 6} } }, {0, { {"larrfs", 6} } }, {0, { {"rarrfs", 6} } }, {0, { {"larrbfs", 7} } }, - {0, { {"rarrbfs", 7} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"nwarhk", 6} } }, - {0, { {"nearhk", 6} } }, {0, { {"searhk", 6} } }, {0, { {"swarhk", 6} } }, {0, { {"nwnear", 6} } }, - {0, { {"toea", 4} } }, {0, { {"seswar", 6} } }, {0, { {"swnwar", 6} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {1, { {(void *)multi_cp_html5_02933, 0} } }, - {0, { {NULL, 0} } }, {0, { {"cudarrr", 7} } }, {0, { {"ldca", 4} } }, {0, { {"rdca", 4} } }, - {0, { {"cudarrl", 7} } }, {0, { {"larrpl", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"curarrm", 7} } }, {0, { {"cularrp", 7} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02940[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"rarrpl", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"harrcir", 7} } }, {0, { {"Uarrocir", 8} } }, {0, { {"lurdshar", 8} } }, {0, { {"ldrushar", 8} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"LeftRightVector", 15} } }, {0, { {"RightUpDownVector", 17} } }, - {0, { {"DownLeftRightVector", 19} } }, {0, { {"LeftUpDownVector", 16} } }, {0, { {"LeftVectorBar", 13} } }, {0, { {"RightVectorBar", 14} } }, - {0, { {"RightUpVectorBar", 16} } }, {0, { {"RightDownVectorBar", 18} } }, {0, { {"DownLeftVectorBar", 17} } }, {0, { {"DownRightVectorBar", 18} } }, - {0, { {"LeftUpVectorBar", 15} } }, {0, { {"LeftDownVectorBar", 17} } }, {0, { {"LeftTeeVector", 13} } }, {0, { {"RightTeeVector", 14} } }, - {0, { {"RightUpTeeVector", 16} } }, {0, { {"RightDownTeeVector", 18} } }, {0, { {"DownLeftTeeVector", 17} } }, {0, { {"DownRightTeeVector", 18} } }, - {0, { {"LeftUpTeeVector", 15} } }, {0, { {"LeftDownTeeVector", 17} } }, {0, { {"lHar", 4} } }, {0, { {"uHar", 4} } }, - {0, { {"rHar", 4} } }, {0, { {"dHar", 4} } }, {0, { {"luruhar", 7} } }, {0, { {"ldrdhar", 7} } }, - {0, { {"ruluhar", 7} } }, {0, { {"rdldhar", 7} } }, {0, { {"lharul", 6} } }, {0, { {"llhard", 6} } }, - {0, { {"rharul", 6} } }, {0, { {"lrhard", 6} } }, {0, { {"udhar", 5} } }, {0, { {"ReverseUpEquilibrium", 20} } }, - {0, { {"RoundImplies", 12} } }, {0, { {"erarr", 5} } }, {0, { {"simrarr", 7} } }, {0, { {"larrsim", 7} } }, - {0, { {"rarrsim", 7} } }, {0, { {"rarrap", 6} } }, {0, { {"ltlarr", 6} } }, {0, { {NULL, 0} } }, - {0, { {"gtrarr", 6} } }, {0, { {"subrarr", 7} } }, {0, { {NULL, 0} } }, {0, { {"suplarr", 7} } }, - {0, { {"lfisht", 6} } }, {0, { {"rfisht", 6} } }, {0, { {"ufisht", 6} } }, {0, { {"dfisht", 6} } }, -}; - -static const entity_stage3_row stage3_table_html5_02980[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"lopar", 5} } }, {0, { {"ropar", 5} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"lbrke", 5} } }, - {0, { {"rbrke", 5} } }, {0, { {"lbrkslu", 7} } }, {0, { {"rbrksld", 7} } }, {0, { {"lbrksld", 7} } }, - {0, { {"rbrkslu", 7} } }, {0, { {"langd", 5} } }, {0, { {"rangd", 5} } }, {0, { {"lparlt", 6} } }, - {0, { {"rpargt", 6} } }, {0, { {"gtlPar", 6} } }, {0, { {"ltrPar", 6} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"vzigzag", 7} } }, {0, { {NULL, 0} } }, - {0, { {"vangrt", 6} } }, {0, { {"angrtvbd", 8} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"ange", 4} } }, {0, { {"range", 5} } }, {0, { {"dwangle", 7} } }, {0, { {"uwangle", 7} } }, - {0, { {"angmsdaa", 8} } }, {0, { {"angmsdab", 8} } }, {0, { {"angmsdac", 8} } }, {0, { {"angmsdad", 8} } }, - {0, { {"angmsdae", 8} } }, {0, { {"angmsdaf", 8} } }, {0, { {"angmsdag", 8} } }, {0, { {"angmsdah", 8} } }, - {0, { {"bemptyv", 7} } }, {0, { {"demptyv", 7} } }, {0, { {"cemptyv", 7} } }, {0, { {"raemptyv", 8} } }, - {0, { {"laemptyv", 8} } }, {0, { {"ohbar", 5} } }, {0, { {"omid", 4} } }, {0, { {"opar", 4} } }, - {0, { {NULL, 0} } }, {0, { {"operp", 5} } }, {0, { {NULL, 0} } }, {0, { {"olcross", 7} } }, - {0, { {"odsold", 6} } }, {0, { {NULL, 0} } }, {0, { {"olcir", 5} } }, {0, { {"ofcir", 5} } }, -}; - -static const entity_stage3_row stage3_table_html5_029C0[] = { - {0, { {"olt", 3} } }, {0, { {"ogt", 3} } }, {0, { {"cirscir", 7} } }, {0, { {"cirE", 4} } }, - {0, { {"solb", 4} } }, {0, { {"bsolb", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"boxbox", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"trisb", 5} } }, {0, { {"rtriltri", 8} } }, {1, { {(void *)multi_cp_html5_029CF, 0} } }, - {1, { {(void *)multi_cp_html5_029D0, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"iinfin", 6} } }, {0, { {"infintie", 8} } }, {0, { {"nvinfin", 7} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"eparsl", 6} } }, - {0, { {"smeparsl", 8} } }, {0, { {"eqvparsl", 8} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"lozf", 4} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"RuleDelayed", 11} } }, {0, { {NULL, 0} } }, {0, { {"dsol", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_02A00[] = { - {0, { {"xodot", 5} } }, {0, { {"bigoplus", 8} } }, {0, { {"bigotimes", 9} } }, {0, { {NULL, 0} } }, - {0, { {"biguplus", 8} } }, {0, { {NULL, 0} } }, {0, { {"bigsqcup", 8} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"iiiint", 6} } }, {0, { {"fpartint", 8} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"cirfnint", 8} } }, {0, { {"awint", 5} } }, {0, { {"rppolint", 8} } }, {0, { {"scpolint", 8} } }, - {0, { {"npolint", 7} } }, {0, { {"pointint", 8} } }, {0, { {"quatint", 7} } }, {0, { {"intlarhk", 8} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"pluscir", 7} } }, {0, { {"plusacir", 8} } }, - {0, { {"simplus", 7} } }, {0, { {"plusdu", 6} } }, {0, { {"plussim", 7} } }, {0, { {"plustwo", 7} } }, - {0, { {NULL, 0} } }, {0, { {"mcomma", 6} } }, {0, { {"minusdu", 7} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"loplus", 6} } }, {0, { {"roplus", 6} } }, {0, { {"Cross", 5} } }, - {0, { {"timesd", 6} } }, {0, { {"timesbar", 8} } }, {0, { {NULL, 0} } }, {0, { {"smashp", 6} } }, - {0, { {"lotimes", 7} } }, {0, { {"rotimes", 7} } }, {0, { {"otimesas", 8} } }, {0, { {"Otimes", 6} } }, - {0, { {"odiv", 4} } }, {0, { {"triplus", 7} } }, {0, { {"triminus", 8} } }, {0, { {"tritime", 7} } }, - {0, { {"iprod", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"amalg", 5} } }, -}; - -static const entity_stage3_row stage3_table_html5_02A40[] = { - {0, { {"capdot", 6} } }, {0, { {NULL, 0} } }, {0, { {"ncup", 4} } }, {0, { {"ncap", 4} } }, - {0, { {"capand", 6} } }, {0, { {"cupor", 5} } }, {0, { {"cupcap", 6} } }, {0, { {"capcup", 6} } }, - {0, { {"cupbrcap", 8} } }, {0, { {"capbrcup", 8} } }, {0, { {"cupcup", 6} } }, {0, { {"capcap", 6} } }, - {0, { {"ccups", 5} } }, {0, { {"ccaps", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"ccupssm", 7} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"And", 3} } }, - {0, { {"Or", 2} } }, {0, { {"andand", 6} } }, {0, { {"oror", 4} } }, {0, { {"orslope", 7} } }, - {0, { {"andslope", 8} } }, {0, { {NULL, 0} } }, {0, { {"andv", 4} } }, {0, { {"orv", 3} } }, - {0, { {"andd", 4} } }, {0, { {"ord", 3} } }, {0, { {NULL, 0} } }, {0, { {"wedbar", 6} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"sdote", 5} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"simdot", 6} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {1, { {(void *)multi_cp_html5_02A6D, 0} } }, {0, { {"easter", 6} } }, {0, { {"apacir", 6} } }, - {1, { {(void *)multi_cp_html5_02A70, 0} } }, {0, { {"eplus", 5} } }, {0, { {"pluse", 5} } }, {0, { {"Esim", 4} } }, - {0, { {"Colone", 6} } }, {0, { {"Equal", 5} } }, {0, { {NULL, 0} } }, {0, { {"ddotseq", 7} } }, - {0, { {"equivDD", 7} } }, {0, { {"ltcir", 5} } }, {0, { {"gtcir", 5} } }, {0, { {"ltquest", 7} } }, - {0, { {"gtquest", 7} } }, {1, { {(void *)multi_cp_html5_02A7D, 0} } }, {1, { {(void *)multi_cp_html5_02A7E, 0} } }, {0, { {"lesdot", 6} } }, -}; - -static const entity_stage3_row stage3_table_html5_02A80[] = { - {0, { {"gesdot", 6} } }, {0, { {"lesdoto", 7} } }, {0, { {"gesdoto", 7} } }, {0, { {"lesdotor", 8} } }, - {0, { {"gesdotol", 8} } }, {0, { {"lap", 3} } }, {0, { {"gap", 3} } }, {0, { {"lne", 3} } }, - {0, { {"gne", 3} } }, {0, { {"lnap", 4} } }, {0, { {"gnap", 4} } }, {0, { {"lesseqqgtr", 10} } }, - {0, { {"gEl", 3} } }, {0, { {"lsime", 5} } }, {0, { {"gsime", 5} } }, {0, { {"lsimg", 5} } }, - {0, { {"gsiml", 5} } }, {0, { {"lgE", 3} } }, {0, { {"glE", 3} } }, {0, { {"lesges", 6} } }, - {0, { {"gesles", 6} } }, {0, { {"els", 3} } }, {0, { {"egs", 3} } }, {0, { {"elsdot", 6} } }, - {0, { {"egsdot", 6} } }, {0, { {"el", 2} } }, {0, { {"eg", 2} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"siml", 4} } }, {0, { {"simg", 4} } }, {0, { {"simlE", 5} } }, - {0, { {"simgE", 5} } }, {1, { {(void *)multi_cp_html5_02AA1, 0} } }, {1, { {(void *)multi_cp_html5_02AA2, 0} } }, {0, { {NULL, 0} } }, - {0, { {"glj", 3} } }, {0, { {"gla", 3} } }, {0, { {"ltcc", 4} } }, {0, { {"gtcc", 4} } }, - {0, { {"lescc", 5} } }, {0, { {"gescc", 5} } }, {0, { {"smt", 3} } }, {0, { {"lat", 3} } }, - {1, { {(void *)multi_cp_html5_02AAC, 0} } }, {1, { {(void *)multi_cp_html5_02AAD, 0} } }, {0, { {"bumpE", 5} } }, {1, { {(void *)multi_cp_html5_02AAF, 0} } }, - {1, { {(void *)multi_cp_html5_02AB0, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"prE", 3} } }, - {0, { {"scE", 3} } }, {0, { {"precneqq", 8} } }, {0, { {"scnE", 4} } }, {0, { {"precapprox", 10} } }, - {0, { {"succapprox", 10} } }, {0, { {"precnapprox", 11} } }, {0, { {"succnapprox", 11} } }, {0, { {"Pr", 2} } }, - {0, { {"Sc", 2} } }, {0, { {"subdot", 6} } }, {0, { {"supdot", 6} } }, {0, { {"subplus", 7} } }, -}; - -static const entity_stage3_row stage3_table_html5_02AC0[] = { - {0, { {"supplus", 7} } }, {0, { {"submult", 7} } }, {0, { {"supmult", 7} } }, {0, { {"subedot", 7} } }, - {0, { {"supedot", 7} } }, {1, { {(void *)multi_cp_html5_02AC5, 0} } }, {1, { {(void *)multi_cp_html5_02AC6, 0} } }, {0, { {"subsim", 6} } }, - {0, { {"supsim", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {1, { {(void *)multi_cp_html5_02ACB, 0} } }, - {1, { {(void *)multi_cp_html5_02ACC, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"csub", 4} } }, - {0, { {"csup", 4} } }, {0, { {"csube", 5} } }, {0, { {"csupe", 5} } }, {0, { {"subsup", 6} } }, - {0, { {"supsub", 6} } }, {0, { {"subsub", 6} } }, {0, { {"supsup", 6} } }, {0, { {"suphsub", 7} } }, - {0, { {"supdsub", 7} } }, {0, { {"forkv", 5} } }, {0, { {"topfork", 7} } }, {0, { {"mlcp", 4} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"Dashv", 5} } }, {0, { {NULL, 0} } }, {0, { {"Vdashl", 6} } }, {0, { {"Barv", 4} } }, - {0, { {"vBar", 4} } }, {0, { {"vBarv", 5} } }, {0, { {NULL, 0} } }, {0, { {"Vbar", 4} } }, - {0, { {"Not", 3} } }, {0, { {"bNot", 4} } }, {0, { {"rnmid", 5} } }, {0, { {"cirmid", 6} } }, - {0, { {"midcir", 6} } }, {0, { {"topcir", 6} } }, {0, { {"nhpar", 5} } }, {0, { {"parsim", 6} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {1, { {(void *)multi_cp_html5_02AFD, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_0FB00[] = { - {0, { {"fflig", 5} } }, {0, { {"filig", 5} } }, {0, { {"fllig", 5} } }, {0, { {"ffilig", 6} } }, - {0, { {"ffllig", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_1D480[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"Ascr", 4} } }, {0, { {NULL, 0} } }, {0, { {"Cscr", 4} } }, {0, { {"Dscr", 4} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"Gscr", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"Jscr", 4} } }, {0, { {"Kscr", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"Nscr", 4} } }, {0, { {"Oscr", 4} } }, {0, { {"Pscr", 4} } }, - {0, { {"Qscr", 4} } }, {0, { {NULL, 0} } }, {0, { {"Sscr", 4} } }, {0, { {"Tscr", 4} } }, - {0, { {"Uscr", 4} } }, {0, { {"Vscr", 4} } }, {0, { {"Wscr", 4} } }, {0, { {"Xscr", 4} } }, - {0, { {"Yscr", 4} } }, {0, { {"Zscr", 4} } }, {0, { {"ascr", 4} } }, {0, { {"bscr", 4} } }, - {0, { {"cscr", 4} } }, {0, { {"dscr", 4} } }, {0, { {NULL, 0} } }, {0, { {"fscr", 4} } }, - {0, { {NULL, 0} } }, {0, { {"hscr", 4} } }, {0, { {"iscr", 4} } }, {0, { {"jscr", 4} } }, -}; - -static const entity_stage3_row stage3_table_html5_1D4C0[] = { - {0, { {"kscr", 4} } }, {0, { {"lscr", 4} } }, {0, { {"mscr", 4} } }, {0, { {"nscr", 4} } }, - {0, { {NULL, 0} } }, {0, { {"pscr", 4} } }, {0, { {"qscr", 4} } }, {0, { {"rscr", 4} } }, - {0, { {"sscr", 4} } }, {0, { {"tscr", 4} } }, {0, { {"uscr", 4} } }, {0, { {"vscr", 4} } }, - {0, { {"wscr", 4} } }, {0, { {"xscr", 4} } }, {0, { {"yscr", 4} } }, {0, { {"zscr", 4} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_1D500[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"Afr", 3} } }, {0, { {"Bfr", 3} } }, {0, { {NULL, 0} } }, {0, { {"Dfr", 3} } }, - {0, { {"Efr", 3} } }, {0, { {"Ffr", 3} } }, {0, { {"Gfr", 3} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"Jfr", 3} } }, {0, { {"Kfr", 3} } }, {0, { {"Lfr", 3} } }, - {0, { {"Mfr", 3} } }, {0, { {"Nfr", 3} } }, {0, { {"Ofr", 3} } }, {0, { {"Pfr", 3} } }, - {0, { {"Qfr", 3} } }, {0, { {NULL, 0} } }, {0, { {"Sfr", 3} } }, {0, { {"Tfr", 3} } }, - {0, { {"Ufr", 3} } }, {0, { {"Vfr", 3} } }, {0, { {"Wfr", 3} } }, {0, { {"Xfr", 3} } }, - {0, { {"Yfr", 3} } }, {0, { {NULL, 0} } }, {0, { {"afr", 3} } }, {0, { {"bfr", 3} } }, - {0, { {"cfr", 3} } }, {0, { {"dfr", 3} } }, {0, { {"efr", 3} } }, {0, { {"ffr", 3} } }, - {0, { {"gfr", 3} } }, {0, { {"hfr", 3} } }, {0, { {"ifr", 3} } }, {0, { {"jfr", 3} } }, - {0, { {"kfr", 3} } }, {0, { {"lfr", 3} } }, {0, { {"mfr", 3} } }, {0, { {"nfr", 3} } }, - {0, { {"ofr", 3} } }, {0, { {"pfr", 3} } }, {0, { {"qfr", 3} } }, {0, { {"rfr", 3} } }, - {0, { {"sfr", 3} } }, {0, { {"tfr", 3} } }, {0, { {"ufr", 3} } }, {0, { {"vfr", 3} } }, - {0, { {"wfr", 3} } }, {0, { {"xfr", 3} } }, {0, { {"yfr", 3} } }, {0, { {"zfr", 3} } }, - {0, { {"Aopf", 4} } }, {0, { {"Bopf", 4} } }, {0, { {NULL, 0} } }, {0, { {"Dopf", 4} } }, - {0, { {"Eopf", 4} } }, {0, { {"Fopf", 4} } }, {0, { {"Gopf", 4} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html5_1D540[] = { - {0, { {"Iopf", 4} } }, {0, { {"Jopf", 4} } }, {0, { {"Kopf", 4} } }, {0, { {"Lopf", 4} } }, - {0, { {"Mopf", 4} } }, {0, { {NULL, 0} } }, {0, { {"Oopf", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"Sopf", 4} } }, {0, { {"Topf", 4} } }, - {0, { {"Uopf", 4} } }, {0, { {"Vopf", 4} } }, {0, { {"Wopf", 4} } }, {0, { {"Xopf", 4} } }, - {0, { {"Yopf", 4} } }, {0, { {NULL, 0} } }, {0, { {"aopf", 4} } }, {0, { {"bopf", 4} } }, - {0, { {"copf", 4} } }, {0, { {"dopf", 4} } }, {0, { {"eopf", 4} } }, {0, { {"fopf", 4} } }, - {0, { {"gopf", 4} } }, {0, { {"hopf", 4} } }, {0, { {"iopf", 4} } }, {0, { {"jopf", 4} } }, - {0, { {"kopf", 4} } }, {0, { {"lopf", 4} } }, {0, { {"mopf", 4} } }, {0, { {"nopf", 4} } }, - {0, { {"oopf", 4} } }, {0, { {"popf", 4} } }, {0, { {"qopf", 4} } }, {0, { {"ropf", 4} } }, - {0, { {"sopf", 4} } }, {0, { {"topf", 4} } }, {0, { {"uopf", 4} } }, {0, { {"vopf", 4} } }, - {0, { {"wopf", 4} } }, {0, { {"xopf", 4} } }, {0, { {"yopf", 4} } }, {0, { {"zopf", 4} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -/* end of stage 3 Tables for HTML5 }}} */ - -/* {{{ Stage 2 Tables for HTML5 */ - -static const entity_stage2_row empty_stage2_table[] = { - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, -}; -static const entity_stage2_row stage2_table_html5_00000[] = { - stage3_table_html5_00000, stage3_table_html5_00040, stage3_table_html5_00080, stage3_table_html5_000C0, - stage3_table_html5_00100, stage3_table_html5_00140, stage3_table_html5_00180, stage3_table_html5_001C0, - stage3_table_html5_00200, empty_stage3_table, empty_stage3_table, stage3_table_html5_002C0, - stage3_table_html5_00300, empty_stage3_table, stage3_table_html5_00380, stage3_table_html5_003C0, - stage3_table_html5_00400, stage3_table_html5_00440, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, -}; - -static const entity_stage2_row stage2_table_html5_02000[] = { - stage3_table_html5_02000, stage3_table_html5_02040, stage3_table_html5_02080, stage3_table_html5_020C0, - stage3_table_html5_02100, stage3_table_html5_02140, stage3_table_html5_02180, stage3_table_html5_021C0, - stage3_table_html5_02200, stage3_table_html5_02240, stage3_table_html5_02280, stage3_table_html5_022C0, - stage3_table_html5_02300, stage3_table_html5_02340, stage3_table_html5_02380, stage3_table_html5_023C0, - stage3_table_html5_02400, empty_stage3_table, empty_stage3_table, stage3_table_html5_024C0, - stage3_table_html5_02500, stage3_table_html5_02540, stage3_table_html5_02580, stage3_table_html5_025C0, - stage3_table_html5_02600, stage3_table_html5_02640, empty_stage3_table, empty_stage3_table, - stage3_table_html5_02700, stage3_table_html5_02740, empty_stage3_table, stage3_table_html5_027C0, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - stage3_table_html5_02900, stage3_table_html5_02940, stage3_table_html5_02980, stage3_table_html5_029C0, - stage3_table_html5_02A00, stage3_table_html5_02A40, stage3_table_html5_02A80, stage3_table_html5_02AC0, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, -}; - -static const entity_stage2_row stage2_table_html5_0F000[] = { - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - stage3_table_html5_0FB00, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, -}; - -static const entity_stage2_row stage2_table_html5_1D000[] = { - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, stage3_table_html5_1D480, stage3_table_html5_1D4C0, - stage3_table_html5_1D500, stage3_table_html5_1D540, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, -}; - -/* end of stage 2 tables for HTML5 }}} */ - -static const entity_stage1_row entity_ms_table_html5[] = { - stage2_table_html5_00000, - empty_stage2_table, - stage2_table_html5_02000, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - stage2_table_html5_0F000, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - stage2_table_html5_1D000, -}; - -/* end of HTML5 multi-stage table for codepoint -> entity }}} */ - -/* {{{ HTML5 hash table for entity -> codepoint */ - -typedef struct { - const char *entity; - unsigned short entity_len; - unsigned int codepoint1; - unsigned int codepoint2; -} entity_cp_map; - -typedef const entity_cp_map *entity_ht_bucket; - -typedef struct { - unsigned num_elems; /* power of 2 */ - const entity_ht_bucket *buckets; /* .num_elems elements */ -} entity_ht; - -static const entity_cp_map ht_bucket_empty[] = { {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_000[] = { {"realpart", 8, 0x0211C, 0}, {"varr", 4, 0x02195, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_001[] = { {"angrt", 5, 0x0221F, 0}, {"iogon", 5, 0x0012F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_003[] = { {"lessdot", 7, 0x022D6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_005[] = { {"simrarr", 7, 0x02972, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_007[] = { {"Zscr", 4, 0x1D4B5, 0}, {"midast", 6, 0x0002A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_00D[] = { {"copf", 4, 0x1D554, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_00F[] = { {"female", 6, 0x02640, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_017[] = { {"NegativeThickSpace", 18, 0x0200B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_020[] = { {"copy", 4, 0x000A9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_022[] = { {"angst", 5, 0x000C5, 0}, {"searr", 5, 0x02198, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_024[] = { {"sqcups", 6, 0x02294, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_027[] = { {"Acirc", 5, 0x000C2, 0}, {"gtdot", 5, 0x022D7, 0}, {"varpi", 5, 0x003D6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_028[] = { {"UpTee", 5, 0x022A5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_029[] = { {"TildeTilde", 10, 0x02248, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_02A[] = { {"mfr", 3, 0x1D52A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_02B[] = { {"RightVectorBar", 14, 0x02953, 0}, {"gesdot", 6, 0x02A80, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_02C[] = { {"Uarrocir", 8, 0x02949, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_02E[] = { {"RightTriangleBar", 16, 0x029D0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_030[] = { {"Ocy", 3, 0x0041E, 0}, {"int", 3, 0x0222B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_034[] = { {"preccurlyeq", 11, 0x0227C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_038[] = { {"sccue", 5, 0x0227D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_040[] = { {"DoubleContourIntegral", 21, 0x0222F, 0}, {"nexist", 6, 0x02204, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_047[] = { {"acirc", 5, 0x000E2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_04C[] = { {"setmn", 5, 0x02216, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_04E[] = { {"Dopf", 4, 0x1D53B, 0}, {"LeftTee", 7, 0x022A3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_051[] = { {"SquareSuperset", 14, 0x02290, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_059[] = { {"udhar", 5, 0x0296E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_05D[] = { {"Equal", 5, 0x02A75, 0}, {"pscr", 4, 0x1D4C5, 0}, {"xvee", 4, 0x022C1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_05F[] = { {"approx", 6, 0x02248, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_060[] = { {"HARDcy", 6, 0x0042A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_061[] = { {"nGg", 3, 0x022D9, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_063[] = { {"yopf", 4, 0x1D56A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_064[] = { {"prcue", 5, 0x0227C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_065[] = { {"loarr", 5, 0x021FD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_069[] = { {"mho", 3, 0x02127, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_06A[] = { {"otimesas", 8, 0x02A36, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_06D[] = { {"capcap", 6, 0x02A4B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_06E[] = { {"eplus", 5, 0x02A71, 0}, {"nGt", 3, 0x0226B, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_06F[] = { {"Bumpeq", 6, 0x0224E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_071[] = { {"submult", 7, 0x02AC1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_073[] = { {"subplus", 7, 0x02ABF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_074[] = { {"auml", 4, 0x000E4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_07A[] = { {"RightDoubleBracket", 18, 0x027E7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_07B[] = { {"varkappa", 8, 0x003F0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_07C[] = { {"plusdo", 6, 0x02214, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_07F[] = { {"mid", 3, 0x02223, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_082[] = { {"plusdu", 6, 0x02A25, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_084[] = { {"notniva", 7, 0x0220C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_085[] = { {"notnivb", 7, 0x022FE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_086[] = { {"notnivc", 7, 0x022FD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_088[] = { {"varepsilon", 10, 0x003F5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_089[] = { {"nspar", 5, 0x02226, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_08C[] = { {"Ofr", 3, 0x1D512, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_08E[] = { {"Omega", 5, 0x003A9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_090[] = { {"equals", 6, 0x0003D, 0}, {"harrcir", 7, 0x02948, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_094[] = { {"Succeeds", 8, 0x0227B, 0}, {"cupdot", 6, 0x0228D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_097[] = { {"lsqb", 4, 0x0005B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_09E[] = { {"Qscr", 4, 0x1D4AC, 0}, {"urcorn", 6, 0x0231D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0A4[] = { {"Zopf", 4, 0x02124, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0A6[] = { {"triangleleft", 12, 0x025C3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0AB[] = { {"supdsub", 7, 0x02AD8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0AC[] = { {"chcy", 4, 0x00447, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0AD[] = { {"sqsupset", 8, 0x02290, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0AE[] = { {"omega", 5, 0x003C9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0AF[] = { {"rthree", 6, 0x022CC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0B0[] = { {"THORN", 5, 0x000DE, 0}, {"clubsuit", 8, 0x02663, 0}, {"filig", 5, 0x0FB01, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0B2[] = { {"ocir", 4, 0x0229A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0B8[] = { {"ShortDownArrow", 14, 0x02193, 0}, {"atilde", 6, 0x000E3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0B9[] = { {"DownLeftTeeVector", 17, 0x0295E, 0}, {"LeftTeeArrow", 12, 0x021A4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0BA[] = { {"GreaterFullEqual", 16, 0x02267, 0}, {"emsp", 4, 0x02003, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0C0[] = { {"lozf", 4, 0x029EB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0C4[] = { {"ThinSpace", 9, 0x02009, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0CE[] = { {"fnof", 4, 0x00192, 0}, {"multimap", 8, 0x022B8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0D1[] = { {"Zacute", 6, 0x00179, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0D2[] = { {"mdash", 5, 0x02014, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0D3[] = { {"minusb", 6, 0x0229F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0D5[] = { {"minusd", 6, 0x02238, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0DF[] = { {"varsigma", 8, 0x003C2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0E5[] = { {"ntilde", 6, 0x000F1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0E6[] = { {"Lambda", 6, 0x0039B, 0}, {"integers", 8, 0x02124, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0E8[] = { {"gesles", 6, 0x02A94, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0EC[] = { {"NotSubset", 9, 0x02282, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0EF[] = { {"NotLeftTriangleEqual", 20, 0x022EC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0F3[] = { {"LessLess", 8, 0x02AA1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0F4[] = { {"gscr", 4, 0x0210A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0FA[] = { {"popf", 4, 0x1D561, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0FB[] = { {"Agrave", 6, 0x000C0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0FD[] = { {"nvinfin", 7, 0x029DE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_0FE[] = { {"gacute", 6, 0x001F5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_100[] = { {"diam", 4, 0x022C4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_101[] = { {"nesim", 5, 0x02242, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_103[] = { {"YIcy", 4, 0x00407, 0}, {"bcy", 3, 0x00431, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_105[] = { {"Exists", 6, 0x02203, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_106[] = { {"vert", 4, 0x0007C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_109[] = { {"ropar", 5, 0x02986, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_10A[] = { {"topfork", 7, 0x02ADA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_10B[] = { {"nLl", 3, 0x022D8, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_10D[] = { {"notin", 5, 0x02209, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_10E[] = { {"SucceedsSlantEqual", 18, 0x0227D, 0}, {"toea", 4, 0x02928, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_10F[] = { {"ImaginaryI", 10, 0x02148, 0}, {"srarr", 5, 0x02192, 0}, {"ulcorner", 8, 0x0231C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_110[] = { {"LeftArrowBar", 12, 0x021E4, 0}, {"ldsh", 4, 0x021B2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_111[] = { {"DownBreve", 9, 0x00311, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_113[] = { {"nLt", 3, 0x0226A, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_116[] = { {"vltri", 5, 0x022B2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_11B[] = { {"VDash", 5, 0x022AB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_11C[] = { {"Dstrok", 6, 0x00110, 0}, {"Intersection", 12, 0x022C2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_11E[] = { {"lrhar", 5, 0x021CB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_121[] = { {"RightTee", 8, 0x022A2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_124[] = { {"RightArrowLeftArrow", 19, 0x021C4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_129[] = { {"Ccirc", 5, 0x00108, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_12A[] = { {"ntrianglelefteq", 15, 0x022EC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_12C[] = { {"leftharpoonup", 13, 0x021BC, 0}, {"scap", 4, 0x02AB8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_12E[] = { {"darr", 4, 0x02193, 0}, {"qfr", 3, 0x1D52E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_12F[] = { {"cdot", 4, 0x0010B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_130[] = { {"supseteqq", 9, 0x02AC6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_134[] = { {"Scy", 3, 0x00421, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_135[] = { {"Hscr", 4, 0x0210B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_137[] = { {"LowerRightArrow", 15, 0x02198, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_13A[] = { {"divide", 6, 0x000F7, 0}, {"tcedil", 6, 0x00163, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_13B[] = { {"LeftArrow", 9, 0x02190, 0}, {"Qopf", 4, 0x0211A, 0}, {"vDash", 5, 0x022A8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_145[] = { {"dash", 4, 0x02010, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_147[] = { {"oror", 4, 0x02A56, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_149[] = { {"ccirc", 5, 0x00109, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_14B[] = { {"LongLeftArrow", 13, 0x027F5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_14C[] = { {"straightphi", 11, 0x003D5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_14E[] = { {"xlarr", 5, 0x027F5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_14F[] = { {"DJcy", 4, 0x00402, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_158[] = { {"nbsp", 4, 0x000A0, 0}, {"succcurlyeq", 11, 0x0227D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_159[] = { {"njcy", 4, 0x0045A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_15B[] = { {"Leftarrow", 9, 0x021D0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_15E[] = { {"dtrif", 5, 0x025BE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_15F[] = { {"bfr", 3, 0x1D51F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_161[] = { {"GreaterTilde", 12, 0x02273, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_164[] = { {"hamilt", 6, 0x0210B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_165[] = { {"Dcy", 3, 0x00414, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_168[] = { {"LeftUpVector", 12, 0x021BF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_16A[] = { {"bigoplus", 8, 0x02A01, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_170[] = { {"nwarhk", 6, 0x02923, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_173[] = { {"diams", 5, 0x02666, 0}, {"suphsol", 7, 0x027C9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_17A[] = { {"boxminus", 8, 0x0229F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_17B[] = { {"leftarrow", 9, 0x02190, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_17C[] = { {"andd", 4, 0x02A5C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_17F[] = { {"NonBreakingSpace", 16, 0x000A0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_181[] = { {"xutri", 5, 0x025B3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_189[] = { {"Longleftrightarrow", 18, 0x027FA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_18B[] = { {"Longleftarrow", 13, 0x027F8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_18C[] = { {"gtrapprox", 9, 0x02A86, 0}, {"phmmat", 6, 0x02133, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_18E[] = { {"andv", 4, 0x02A5A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_18F[] = { {"equiv", 5, 0x02261, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_190[] = { {"Sfr", 3, 0x1D516, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_191[] = { {"gopf", 4, 0x1D558, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_193[] = { {"sqsub", 5, 0x0228F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_195[] = { {"approxeq", 8, 0x0224A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_19A[] = { {"Del", 3, 0x02207, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_19C[] = { {"nrightarrow", 11, 0x0219B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_19F[] = { {"SquareUnion", 11, 0x02294, 0}, {"strns", 5, 0x000AF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1A0[] = { {"Itilde", 6, 0x00128, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1A1[] = { {"sqsup", 5, 0x02290, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1A2[] = { {"Ouml", 4, 0x000D6, 0}, {"PrecedesTilde", 13, 0x0227E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1A3[] = { {"AMP", 3, 0x00026, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1A4[] = { {"plusmn", 6, 0x000B1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1A5[] = { {"xcup", 4, 0x022C3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1A8[] = { {"radic", 5, 0x0221A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1AB[] = { {"longleftarrow", 13, 0x027F5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1AC[] = { {"lrcorner", 8, 0x0231F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1AD[] = { {"notni", 5, 0x0220C, 0}, {"updownarrow", 11, 0x02195, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1AE[] = { {"szlig", 5, 0x000DF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1AF[] = { {"ugrave", 6, 0x000F9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1B0[] = { {"imof", 4, 0x022B7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1B2[] = { {"csub", 4, 0x02ACF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1B5[] = { {"gsim", 4, 0x02273, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1B9[] = { {"leftleftarrows", 14, 0x021C7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1BD[] = { {"backcong", 8, 0x0224C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1BE[] = { {"clubs", 5, 0x02663, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1C0[] = { {"csup", 4, 0x02AD0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1C1[] = { {"Dfr", 3, 0x1D507, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1C4[] = { {"profline", 8, 0x02312, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1C6[] = { {"Zdot", 4, 0x0017B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1C9[] = { {"ClockwiseContourIntegral", 24, 0x02232, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1CA[] = { {"roplus", 6, 0x02A2E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1CD[] = { {"Rang", 4, 0x027EB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1CE[] = { {"bcong", 5, 0x0224C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1D0[] = { {"tshcy", 5, 0x0045B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1D1[] = { {"eDot", 4, 0x02251, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1D2[] = { {"Hopf", 4, 0x0210D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1D4[] = { {"lpar", 4, 0x00028, 0}, {"odash", 5, 0x0229D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1D5[] = { {"capbrcup", 8, 0x02A49, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1D6[] = { {"ucy", 3, 0x00443, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1D8[] = { {"ofcir", 5, 0x029BF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1D9[] = { {"Breve", 5, 0x002D8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1DA[] = { {"barvee", 6, 0x022BD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1DF[] = { {"backsim", 7, 0x0223D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1E0[] = { {"ange", 4, 0x029A4, 0}, {"half", 4, 0x000BD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1E1[] = { {"tscr", 4, 0x1D4C9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1E5[] = { {"realine", 7, 0x0211B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1E6[] = { {"Oacute", 6, 0x000D3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1E7[] = { {"dfisht", 6, 0x0297F, 0}, {"swnwar", 6, 0x0292A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1E8[] = { {"tscy", 4, 0x00446, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1EB[] = { {"lsquor", 6, 0x0201A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1EF[] = { {"naturals", 8, 0x02115, 0}, {"utrif", 5, 0x025B4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1F0[] = { {"DiacriticalTilde", 16, 0x002DC, 0}, {"RightUpVectorBar", 16, 0x02954, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1F2[] = { {"rHar", 4, 0x02964, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1F4[] = { {"curlyeqprec", 11, 0x022DE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1F8[] = { {"dtri", 4, 0x025BF, 0}, {"euml", 4, 0x000EB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1F9[] = { {"breve", 5, 0x002D8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1FA[] = { {"Barwed", 6, 0x02306, 0}, {"nvlArr", 6, 0x02902, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1FC[] = { {"dcaron", 6, 0x0010F, 0}, {"natural", 7, 0x0266E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1FE[] = { {"nsupseteqq", 10, 0x02AC6, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_1FF[] = { {"nedot", 5, 0x02250, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_205[] = { {"bigtriangledown", 15, 0x025BD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_207[] = { {"fcy", 3, 0x00444, 0}, {"marker", 6, 0x025AE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_20E[] = { {"Union", 5, 0x022C3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_212[] = { {"varpropto", 9, 0x0221D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_213[] = { {"CloseCurlyDoubleQuote", 21, 0x0201D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_219[] = { {"DoubleLongRightArrow", 20, 0x027F9, 0}, {"GreaterGreater", 14, 0x02AA2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_21D[] = { {"Umacr", 5, 0x0016A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_220[] = { {"Colon", 5, 0x02237, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_222[] = { {"Hat", 3, 0x0005E, 0}, {"Uscr", 4, 0x1D4B0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_227[] = { {"SHCHcy", 6, 0x00429, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_229[] = { {"nLeftarrow", 10, 0x021CD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_22B[] = { {"Ecirc", 5, 0x000CA, 0}, {"Jukcy", 5, 0x00404, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_22C[] = { {"nbumpe", 6, 0x0224F, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_22D[] = { {"NotLess", 7, 0x0226E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_22F[] = { {"gtlPar", 6, 0x02995, 0}, {"suphsub", 7, 0x02AD7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_230[] = { {"gtreqqless", 10, 0x02A8C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_232[] = { {"ufr", 3, 0x1D532, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_234[] = { {"cirscir", 7, 0x029C2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_239[] = { {"LeftDownTeeVector", 17, 0x02961, 0}, {"duhar", 5, 0x0296F, 0}, {"nrtrie", 6, 0x022ED, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_23C[] = { {"llhard", 6, 0x0296B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_23D[] = { {"umacr", 5, 0x0016B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_23E[] = { {"lates", 5, 0x02AAD, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_240[] = { {"colon", 5, 0x0003A, 0}, {"iacute", 6, 0x000ED, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_241[] = { {"NotPrecedes", 11, 0x02280, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_242[] = { {"cirfnint", 8, 0x02A10, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_246[] = { {"barwedge", 8, 0x02305, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_249[] = { {"nleftarrow", 10, 0x0219A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_24A[] = { {"Ubrcy", 5, 0x0040E, 0}, {"leftthreetimes", 14, 0x022CB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_24B[] = { {"andand", 6, 0x02A55, 0}, {"ecirc", 5, 0x000EA, 0}, {"jukcy", 5, 0x00454, 0}, {"quatint", 7, 0x02A16, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_24D[] = { {"lharul", 6, 0x0296A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_251[] = { {"smtes", 5, 0x02AAC, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_252[] = { {"UnionPlus", 9, 0x0228E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_257[] = { {"NotLeftTriangle", 15, 0x022EA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_25A[] = { {"bne", 3, 0x0003D, 0x020E5}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_25B[] = { {"gtrsim", 6, 0x02273, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_25C[] = { {"Rarr", 4, 0x021A0, 0}, {"ldquor", 6, 0x0201E, 0}, {"phiv", 4, 0x003D5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_25D[] = { {"because", 7, 0x02235, 0}, {"gEl", 3, 0x02A8C, 0}, {"setminus", 8, 0x02216, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_263[] = { {"ffr", 3, 0x1D523, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_26A[] = { {"ubrcy", 5, 0x0045E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_26B[] = { {"elinters", 8, 0x023E7, 0}, {"plusb", 5, 0x0229E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_26E[] = { {"pluse", 5, 0x02A72, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_274[] = { {"CapitalDifferentialD", 20, 0x02145, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_277[] = { {"daleth", 6, 0x02138, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_278[] = { {"kscr", 4, 0x1D4C0, 0}, {"ogon", 4, 0x002DB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_27C[] = { {"SHcy", 4, 0x00428, 0}, {"equest", 6, 0x0225F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_27E[] = { {"rbarr", 5, 0x0290D, 0}, {"topf", 4, 0x1D565, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_283[] = { {"tritime", 7, 0x02A3B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_28A[] = { {"bot", 3, 0x022A5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_294[] = { {"Wfr", 3, 0x1D51A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_297[] = { {"HumpEqual", 9, 0x0224F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_298[] = { {"rightleftharpoons", 17, 0x021CC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_29D[] = { {"frasl", 5, 0x02044, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_29F[] = { {"UnderBracket", 12, 0x023B5, 0}, {"ovbar", 5, 0x0233D, 0}, {"upharpoonright", 14, 0x021BE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2A0[] = { {"euro", 4, 0x020AC, 0}, {"nhArr", 5, 0x021CE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2A9[] = { {"NotSupersetEqual", 16, 0x02289, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2AE[] = { {"cularr", 6, 0x021B6, 0}, {"scnE", 4, 0x02AB6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2B1[] = { {"napid", 5, 0x0224B, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2B2[] = { {"harr", 4, 0x02194, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2B3[] = { {"gdot", 4, 0x00121, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2B9[] = { {"Lscr", 4, 0x02112, 0}, {"zeta", 4, 0x003B6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2BF[] = { {"ENG", 3, 0x0014A, 0}, {"Uopf", 4, 0x1D54C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2C4[] = { {"esdot", 5, 0x02250, 0}, {"scsim", 5, 0x0227F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2C5[] = { {"Hfr", 3, 0x0210C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2CE[] = { {"RightArrow", 10, 0x02192, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2CF[] = { {"Sqrt", 4, 0x0221A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2D3[] = { {"xodot", 5, 0x02A00, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2DA[] = { {"ycy", 3, 0x0044B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2DB[] = { {"hkswarow", 8, 0x02926, 0}, {"urtri", 5, 0x025F9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2DC[] = { {"roang", 5, 0x027ED, 0}, {"tosa", 4, 0x02929, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2E3[] = { {"CircleMinus", 11, 0x02296, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2E4[] = { {"Lcaron", 6, 0x0013D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2EB[] = { {"ShortLeftArrow", 14, 0x02190, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2EC[] = { {"Dot", 3, 0x000A8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2EE[] = { {"Rightarrow", 10, 0x021D2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2F0[] = { {"prsim", 5, 0x0227E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2F2[] = { {"notinE", 6, 0x022F9, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_2F8[] = { {"becaus", 6, 0x02235, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_300[] = { {"NotEqualTilde", 13, 0x02242, 0x00338}, {"nparallel", 9, 0x02226, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_301[] = { {"capcup", 6, 0x02A47, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_304[] = { {"simeq", 5, 0x02243, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_305[] = { {"forall", 6, 0x02200, 0}, {"straightepsilon", 15, 0x003F5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_308[] = { {"ruluhar", 7, 0x02968, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_30B[] = { {"jcy", 3, 0x00439, 0}, {"ltcc", 4, 0x02AA6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_30F[] = { {"bscr", 4, 0x1D4B7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_311[] = { {"ExponentialE", 12, 0x02147, 0}, {"weierp", 6, 0x02118, 0}, {"yen", 3, 0x000A5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_313[] = { {"blacksquare", 11, 0x025AA, 0}, {"uml", 3, 0x000A8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_315[] = { {"backsimeq", 9, 0x022CD, 0}, {"kopf", 4, 0x1D55C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_319[] = { {"NotPrecedesEqual", 16, 0x02AAF, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_31A[] = { {"simgE", 5, 0x02AA0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_31B[] = { {"tridot", 6, 0x025EC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_326[] = { {"DoubleLongLeftArrow", 19, 0x027F8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_329[] = { {"models", 6, 0x022A7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_32A[] = { {"emptyv", 6, 0x02205, 0}, {"eqslantgtr", 10, 0x02A96, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_32D[] = { {"Gcirc", 5, 0x0011C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_330[] = { {"bernou", 6, 0x0212C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_331[] = { {"HumpDownHump", 12, 0x0224E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_336[] = { {"yfr", 3, 0x1D536, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_338[] = { {"blacktriangle", 13, 0x025B4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_33B[] = { {"yacy", 4, 0x0044F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_33F[] = { {"lsime", 5, 0x02A8D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_340[] = { {"NotTildeEqual", 13, 0x02244, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_341[] = { {"lsimg", 5, 0x02A8F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_347[] = { {"ncap", 4, 0x02A43, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_34D[] = { {"DD", 2, 0x02145, 0}, {"gcirc", 5, 0x0011D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_350[] = { {"Cscr", 4, 0x1D49E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_356[] = { {"Lopf", 4, 0x1D543, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_358[] = { {"lBarr", 5, 0x0290E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_359[] = { {"Leftrightarrow", 14, 0x021D4, 0}, {"gtrdot", 6, 0x022D7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_35D[] = { {"NotSquareSubset", 15, 0x0228F, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_35F[] = { {"sqsubset", 8, 0x0228F, 0}, {"subsetneq", 9, 0x0228A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_361[] = { {"doublebarwedge", 14, 0x02306, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_363[] = { {"blacktriangleleft", 17, 0x025C2, 0}, {"hellip", 6, 0x02026, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_365[] = { {"xscr", 4, 0x1D4CD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_367[] = { {"LessFullEqual", 13, 0x02266, 0}, {"jfr", 3, 0x1D527, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_369[] = { {"GreaterSlantEqual", 17, 0x02A7E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_36A[] = { {"Uring", 5, 0x0016E, 0}, {"VeryThinSpace", 13, 0x0200A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_36B[] = { {"roarr", 5, 0x021FE, 0}, {"scaron", 6, 0x00161, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_36D[] = { {"Lcy", 3, 0x0041B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_36E[] = { {"RightDownVector", 15, 0x021C2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_36F[] = { {"Sub", 3, 0x022D0, 0}, {"pitchfork", 9, 0x022D4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_372[] = { {"nvsim", 5, 0x0223C, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_374[] = { {"xrArr", 5, 0x027F9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_378[] = { {"CloseCurlyQuote", 15, 0x02019, 0}, {"uwangle", 7, 0x029A7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_37A[] = { {"Sum", 3, 0x02211, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_37C[] = { {"iuml", 4, 0x000EF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_37D[] = { {"Sup", 3, 0x022D1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_37E[] = { {"planck", 6, 0x0210F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_37F[] = { {"Egrave", 6, 0x000C8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_380[] = { {"curlywedge", 10, 0x022CF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_382[] = { {"TildeFullEqual", 14, 0x02245, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_383[] = { {"searhk", 6, 0x02925, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_386[] = { {"ETH", 3, 0x000D0, 0}, {"napos", 5, 0x00149, 0}, {"upsi", 4, 0x003C5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_387[] = { {"twoheadleftarrow", 16, 0x0219E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_38A[] = { {"Assign", 6, 0x02254, 0}, {"uring", 5, 0x0016F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_38D[] = { {"SquareIntersection", 18, 0x02293, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_38E[] = { {"lmidot", 6, 0x00140, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_391[] = { {"kcedil", 6, 0x00137, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_394[] = { {"curren", 6, 0x000A4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_397[] = { {"acute", 5, 0x000B4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_398[] = { {"curlyeqsucc", 11, 0x022DF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_39C[] = { {"Omicron", 7, 0x0039F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_39F[] = { {"uarr", 4, 0x02191, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3A0[] = { {"Hstrok", 6, 0x00126, 0}, {"UnderBrace", 10, 0x023DF, 0}, {"tdot", 4, 0x020DB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3A1[] = { {"qint", 4, 0x02A0C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3A4[] = { {"sfrown", 6, 0x02322, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3A5[] = { {"trpezium", 8, 0x023E2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3A6[] = { {"Yscr", 4, 0x1D4B4, 0}, {"cedil", 5, 0x000B8, 0}, {"planckh", 7, 0x0210E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3A7[] = { {"lang", 4, 0x027E8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3AC[] = { {"bopf", 4, 0x1D553, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3B2[] = { {"lbbrk", 5, 0x02772, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3B4[] = { {"khcy", 4, 0x00445, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3BF[] = { {"Epsilon", 7, 0x00395, 0}, {"simlE", 5, 0x02A9F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3C0[] = { {"GT", 2, 0x0003E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3C4[] = { {"nap", 3, 0x02249, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3C9[] = { {"Lfr", 3, 0x1D50F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3CD[] = { {"succapprox", 10, 0x02AB8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3D0[] = { {"bsim", 4, 0x0223D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3D3[] = { {"Gg", 2, 0x022D9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3D9[] = { {"angrtvb", 7, 0x022BE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3DE[] = { {"xcirc", 5, 0x025EF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3E0[] = { {"Gt", 2, 0x0226B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3E1[] = { {"LeftRightVector", 15, 0x0294E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3E3[] = { {"circledast", 10, 0x0229B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3E4[] = { {"telrec", 6, 0x02315, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3E6[] = { {"SucceedsTilde", 13, 0x0227F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3E9[] = { {"nLtv", 4, 0x0226A, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3ED[] = { {"Copf", 4, 0x02102, 0}, {"napprox", 7, 0x02249, 0}, {"nsupseteq", 9, 0x02289, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3F1[] = { {"VerticalTilde", 13, 0x02240, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3F2[] = { {"parallel", 8, 0x02225, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3F7[] = { {"precnapprox", 11, 0x02AB9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3FC[] = { {"oscr", 4, 0x02134, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_3FE[] = { {"supsetneqq", 10, 0x02ACC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_402[] = { {"xopf", 4, 0x1D569, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_405[] = { {"mumap", 5, 0x022B8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_407[] = { {"varsupsetneqq", 13, 0x02ACC, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_409[] = { {"ReverseEquilibrium", 18, 0x021CB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_40E[] = { {"Ubreve", 6, 0x0016C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_40F[] = { {"YUcy", 4, 0x0042E, 0}, {"ncy", 3, 0x0043D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_413[] = { {"ltimes", 6, 0x022C9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_41A[] = { {"UpperRightArrow", 15, 0x02197, 0}, {"nvap", 4, 0x0224D, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_41B[] = { {"Im", 2, 0x02111, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_421[] = { {"simne", 5, 0x02246, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_423[] = { {"ccups", 5, 0x02A4C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_424[] = { {"nlArr", 5, 0x021CD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_425[] = { {"rarrsim", 7, 0x02974, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_426[] = { {"Ncaron", 6, 0x00147, 0}, {"vsupnE", 6, 0x02ACC, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_429[] = { {"succeq", 6, 0x02AB0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_42C[] = { {"Gammad", 6, 0x003DC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_42F[] = { {"Icirc", 5, 0x000CE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_430[] = { {"backepsilon", 11, 0x003F6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_432[] = { {"ddarr", 5, 0x021CA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_436[] = { {"larr", 4, 0x02190, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_439[] = { {"divideontimes", 13, 0x022C7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_43C[] = { {"succsim", 7, 0x0227F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_43D[] = { {"Pscr", 4, 0x1D4AB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_43E[] = { {"puncsp", 6, 0x02008, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_43F[] = { {"gtreqless", 9, 0x022DB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_440[] = { {"intcal", 6, 0x022BA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_441[] = { {"nsime", 5, 0x02244, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_443[] = { {"Yopf", 4, 0x1D550, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_446[] = { {"angsph", 6, 0x02222, 0}, {"vsupne", 6, 0x0228B, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_447[] = { {"NotNestedLessLess", 17, 0x02AA1, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_44A[] = { {"PrecedesSlantEqual", 18, 0x0227C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_44F[] = { {"icirc", 5, 0x000EE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_450[] = { {"DownLeftVectorBar", 17, 0x02956, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_454[] = { {"Auml", 4, 0x000C4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_457[] = { {"LJcy", 4, 0x00409, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_458[] = { {"sqsube", 6, 0x02291, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_45D[] = { {"nprec", 5, 0x02280, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_45F[] = { {"ngE", 3, 0x02267, 0x00338}, {"smile", 5, 0x02323, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_465[] = { {"LT", 2, 0x0003C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_466[] = { {"ldrdhar", 7, 0x02967, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_469[] = { {"utri", 4, 0x025B5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_46A[] = { {"Sacute", 6, 0x0015A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_46B[] = { {"late", 4, 0x02AAD, 0}, {"nfr", 3, 0x1D52B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_46D[] = { {"NotNestedGreaterGreater", 23, 0x02AA2, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_46F[] = { {"nwarr", 5, 0x02196, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_470[] = { {"biguplus", 8, 0x02A04, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_471[] = { {"Pcy", 3, 0x0041F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_472[] = { {"bigtriangleup", 13, 0x025B3, 0}, {"rationals", 9, 0x0211A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_473[] = { {"congdot", 7, 0x02A6D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_475[] = { {"PlusMinus", 9, 0x000B1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_479[] = { {"IOcy", 4, 0x00401, 0}, {"Scedil", 6, 0x0015E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_47C[] = { {"eqcirc", 6, 0x02256, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_47D[] = { {"Ll", 2, 0x022D8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_47F[] = { {"Cayleys", 7, 0x0212D, 0}, {"nge", 3, 0x02271, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_480[] = { {"NotGreater", 10, 0x0226F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_485[] = { {"Lt", 2, 0x0226A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_488[] = { {"rotimes", 7, 0x02A35, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_48C[] = { {"caps", 4, 0x02229, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_48E[] = { {"ngt", 3, 0x0226F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_48F[] = { {"Cross", 5, 0x02A2F, 0}, {"bumpeq", 6, 0x0224F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_490[] = { {"VerticalSeparator", 17, 0x02758, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_491[] = { {"plankv", 6, 0x0210F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_493[] = { {"fscr", 4, 0x1D4BB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_495[] = { {"bsol", 4, 0x0005C, 0}, {"sqsubseteq", 10, 0x02291, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_496[] = { {"boxH", 4, 0x02550, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_498[] = { {"rightarrowtail", 14, 0x021A3, 0}, {"ufisht", 6, 0x0297E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_499[] = { {"oopf", 4, 0x1D560, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_49F[] = { {"lobrk", 5, 0x027E6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4A2[] = { {"Acy", 3, 0x00410, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4A4[] = { {"NotSubsetEqual", 14, 0x02288, 0}, {"boxV", 4, 0x02551, 0}, {"dHar", 4, 0x02965, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4A6[] = { {"precnsim", 8, 0x022E8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4A7[] = { {"Mu", 2, 0x0039C, 0}, {"aelig", 5, 0x000E6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4AA[] = { {"gescc", 5, 0x02AA9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4AB[] = { {"origof", 6, 0x022B6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4AE[] = { {"upsih", 5, 0x003D2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4AF[] = { {"cross", 5, 0x02717, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4B2[] = { {"LeftFloor", 9, 0x0230A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4B6[] = { {"boxh", 4, 0x02500, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4B8[] = { {"NotGreaterEqual", 15, 0x02271, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4BC[] = { {"profalar", 8, 0x0232E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4C0[] = { {"nsmid", 5, 0x02224, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4C2[] = { {"hbar", 4, 0x0210F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4C3[] = { {"udarr", 5, 0x021C5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4C4[] = { {"boxv", 4, 0x02502, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4C5[] = { {"olarr", 5, 0x021BA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4C8[] = { {"Nu", 2, 0x0039D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4CB[] = { {"NotCongruent", 12, 0x02262, 0}, {"bkarow", 6, 0x0290D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4CD[] = { {"Pfr", 3, 0x1D513, 0}, {"forkv", 5, 0x02AD9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4CF[] = { {"nis", 3, 0x022FC, 0}, {"trianglerighteq", 15, 0x022B5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4D0[] = { {"ngeq", 4, 0x02271, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4D2[] = { {"cudarrl", 7, 0x02938, 0}, {"nges", 4, 0x02A7E, 0x00338}, {"niv", 3, 0x0220B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4D3[] = { {"SubsetEqual", 11, 0x02286, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4D4[] = { {"Gscr", 4, 0x1D4A2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4D5[] = { {"complexes", 9, 0x02102, 0}, {"eDDot", 5, 0x02A77, 0}, {"nvge", 4, 0x02265, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4D8[] = { {"cudarrr", 7, 0x02935, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4DA[] = { {"Popf", 4, 0x02119, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4DE[] = { {"LongRightArrow", 14, 0x027F6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4DF[] = { {"supseteq", 8, 0x02287, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4E3[] = { {"dollar", 6, 0x00024, 0}, {"gnsim", 5, 0x022E7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4E4[] = { {"nvgt", 4, 0x0003E, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4E6[] = { {"Or", 2, 0x02A54, 0}, {"Vert", 4, 0x02016, 0}, {"lneqq", 5, 0x02268, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4E7[] = { {"nLeftrightarrow", 15, 0x021CE, 0}, {"nbump", 5, 0x0224E, 0x00338}, {"ntriangleright", 14, 0x022EB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4E8[] = { {"ecir", 4, 0x02256, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4E9[] = { {"npolint", 7, 0x02A14, 0}, {"plus", 4, 0x0002B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4ED[] = { {"centerdot", 9, 0x000B7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4F1[] = { {"zacute", 6, 0x0017A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4F7[] = { {"odiv", 4, 0x02A38, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4F9[] = { {"cap", 3, 0x02229, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4FB[] = { {"ensp", 4, 0x02002, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_4FE[] = { {"Afr", 3, 0x1D504, 0}, {"Pi", 2, 0x003A0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_500[] = { {"iquest", 6, 0x000BF, 0}, {"ltri", 4, 0x025C3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_504[] = { {"nlE", 3, 0x02266, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_506[] = { {"Phi", 3, 0x003A6, 0}, {"lambda", 6, 0x003BB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_507[] = { {"Pr", 2, 0x02ABB, 0}, {"Vdashl", 6, 0x02AE6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_509[] = { {"SuchThat", 8, 0x0220B, 0}, {"Supset", 6, 0x022D1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_50E[] = { {"Darr", 4, 0x021A1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_50F[] = { {"Cdot", 4, 0x0010A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_513[] = { {"rcy", 3, 0x00440, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_516[] = { {"orderof", 7, 0x02134, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_518[] = { {"leqq", 4, 0x02266, 0}, {"precsim", 7, 0x0227E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_519[] = { {"RightTriangle", 13, 0x022B3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_51B[] = { {"agrave", 6, 0x000E0, 0}, {"succnapprox", 11, 0x02ABA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_51C[] = { {"Tab", 3, 0x00009, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_524[] = { {"nle", 3, 0x02270, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_525[] = { {"spades", 6, 0x02660, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_526[] = { {"gtcc", 4, 0x02AA7, 0}, {"llcorner", 8, 0x0231E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_52F[] = { {"Oslash", 6, 0x000D8, 0}, {"Tau", 3, 0x003A4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_530[] = { {"fopf", 4, 0x1D557, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_532[] = { {"Mellintrf", 9, 0x02133, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_533[] = { {"nlt", 3, 0x0226E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_534[] = { {"lparlt", 6, 0x02993, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_53B[] = { {"Ccaron", 6, 0x0010C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_53C[] = { {"Re", 2, 0x0211C, 0}, {"dstrok", 6, 0x00111, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_53F[] = { {"leftharpoondown", 15, 0x021BD, 0}, {"ssetmn", 6, 0x02216, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_542[] = { {"lrhard", 6, 0x0296D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_543[] = { {"reg", 3, 0x000AE, 0}, {"sharp", 5, 0x0266F, 0}, {"yicy", 4, 0x00457, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_545[] = { {"ShortUpArrow", 12, 0x02191, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_548[] = { {"plusacir", 8, 0x02A23, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_54F[] = { {"cent", 4, 0x000A2, 0}, {"natur", 5, 0x0266E, 0}, {"varphi", 6, 0x003D5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_550[] = { {"lesg", 4, 0x022DA, 0x0FE00}, {"supnE", 5, 0x02ACC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_551[] = { {"ohbar", 5, 0x029B5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_557[] = { {"NotLessGreater", 14, 0x02278, 0}, {"nleqslant", 9, 0x02A7D, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_55B[] = { {"Sc", 2, 0x02ABC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_55D[] = { {"NotSucceedsEqual", 16, 0x02AB0, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_55F[] = { {"DZcy", 4, 0x0040F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_564[] = { {"vartheta", 8, 0x003D1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_565[] = { {"ltrie", 5, 0x022B4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_566[] = { {"Otilde", 6, 0x000D5, 0}, {"ltrif", 5, 0x025C2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_56C[] = { {"Lsh", 3, 0x021B0, 0}, {"hookleftarrow", 13, 0x021A9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_56F[] = { {"rfr", 3, 0x1D52F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_570[] = { {"supne", 5, 0x0228B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_571[] = { {"Gopf", 4, 0x1D53E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_572[] = { {"UpEquilibrium", 13, 0x0296E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_575[] = { {"Tcy", 3, 0x00422, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_576[] = { {"ffilig", 6, 0x0FB03, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_577[] = { {"fork", 4, 0x022D4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_578[] = { {"oplus", 5, 0x02295, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_57A[] = { {"nvle", 4, 0x02264, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_57B[] = { {"HilbertSpace", 12, 0x0210B, 0}, {"subedot", 7, 0x02AC3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_57C[] = { {"TripleDot", 9, 0x020DB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_580[] = { {"sscr", 4, 0x1D4C8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_582[] = { {"osol", 4, 0x02298, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_583[] = { {"plustwo", 7, 0x02A27, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_586[] = { {"LessGreater", 11, 0x02276, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_588[] = { {"lrarr", 5, 0x021C6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_589[] = { {"nvlt", 4, 0x0003C, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_58D[] = { {"questeq", 7, 0x0225F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_58E[] = { {"LessTilde", 9, 0x02272, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_58F[] = { {"djcy", 4, 0x00452, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_590[] = { {"xoplus", 6, 0x02A01, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_595[] = { {"primes", 6, 0x02119, 0}, {"solb", 4, 0x029C4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_596[] = { {"not", 3, 0x000AC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_59A[] = { {"angzarr", 7, 0x0237C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_59D[] = { {"nearr", 5, 0x02197, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_59F[] = { {"lowast", 6, 0x02217, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5A0[] = { {"cfr", 3, 0x1D520, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5A3[] = { {"ltcir", 5, 0x02A79, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5A6[] = { {"Ecy", 3, 0x0042D, 0}, {"gesdotol", 8, 0x02A84, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5A9[] = { {"longleftrightarrow", 18, 0x027F7, 0}, {"para", 4, 0x000B6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5AC[] = { {"Uacute", 6, 0x000DA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5AD[] = { {"blank", 5, 0x02423, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5AE[] = { {"rho", 3, 0x003C1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5B0[] = { {"dharl", 5, 0x021C3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5B1[] = { {"rsquor", 6, 0x02019, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5B5[] = { {"NotSquareSubsetEqual", 20, 0x022E2, 0}, {"npr", 3, 0x02280, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5B6[] = { {"dharr", 5, 0x021C2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5B7[] = { {"NewLine", 7, 0x0000A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5BB[] = { {"odot", 4, 0x02299, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5BC[] = { {"part", 4, 0x02202, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5BD[] = { {"cuvee", 5, 0x022CE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5BF[] = { {"lesdoto", 7, 0x02A81, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5C0[] = { {"itilde", 6, 0x00129, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5C1[] = { {"Tscr", 4, 0x1D4AF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5C2[] = { {"nsubE", 5, 0x02AC5, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5C4[] = { {"ratio", 5, 0x02236, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5D0[] = { {"Conint", 6, 0x0222F, 0}, {"LeftDownVectorBar", 17, 0x02959, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5D1[] = { {"Tfr", 3, 0x1D517, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5D3[] = { {"fllig", 5, 0x0FB02, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5D5[] = { {"thksim", 6, 0x0223C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5D8[] = { {"Euml", 4, 0x000CB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5D9[] = { {"chi", 3, 0x003C7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5DB[] = { {"ncup", 4, 0x02A42, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5DD[] = { {"SOFTcy", 6, 0x0042C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5DF[] = { {"bnequiv", 7, 0x02261, 0x020E5}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5E2[] = { {"nsube", 5, 0x02288, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5E4[] = { {"mapstoleft", 10, 0x021A4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5E7[] = { {"NotLessSlantEqual", 17, 0x02A7D, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5EA[] = { {"ldrushar", 8, 0x0294B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5ED[] = { {"Equilibrium", 11, 0x021CC, 0}, {"Uogon", 5, 0x00172, 0}, {"supsetneq", 9, 0x0228B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5F0[] = { {"Vbar", 4, 0x02AEB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5F3[] = { {"vnsub", 5, 0x02282, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5F6[] = { {"Square", 6, 0x025A1, 0}, {"lessapprox", 10, 0x02A85, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5F8[] = { {"And", 3, 0x02A53, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5FA[] = { {"gesdoto", 7, 0x02A82, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_5FD[] = { {"gap", 3, 0x02A86, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_601[] = { {"nsucc", 5, 0x02281, 0}, {"thicksim", 8, 0x0223C, 0}, {"vnsup", 5, 0x02283, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_602[] = { {"Efr", 3, 0x1D508, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_603[] = { {"Igrave", 6, 0x000CC, 0}, {"cir", 3, 0x025CB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_606[] = { {"Xi", 2, 0x0039E, 0}, {"oacute", 6, 0x000F3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_609[] = { {"nsc", 3, 0x02281, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_60D[] = { {"uogon", 5, 0x00173, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_613[] = { {"rharul", 6, 0x0296C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_615[] = { {"RuleDelayed", 11, 0x029F4, 0}, {"apacir", 6, 0x02A6F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_617[] = { {"jscr", 4, 0x1D4BF, 0}, {"vcy", 3, 0x00432, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_61A[] = { {"barwed", 6, 0x02305, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_61D[] = { {"sopf", 4, 0x1D564, 0}, {"thkap", 5, 0x02248, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_61F[] = { {"lesseqgtr", 9, 0x022DA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_622[] = { {"rdquor", 6, 0x0201D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_624[] = { {"Lstrok", 6, 0x00141, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_626[] = { {"Product", 7, 0x0220F, 0}, {"sqsupe", 6, 0x02292, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_628[] = { {"awconint", 8, 0x02233, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_62C[] = { {"hearts", 6, 0x02665, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_630[] = { {"rlm", 3, 0x0200F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_632[] = { {"comma", 5, 0x0002C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_636[] = { {"PartialD", 8, 0x02202, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_63A[] = { {"wedbar", 6, 0x02A5F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_63C[] = { {"oline", 5, 0x0203E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_63D[] = { {"OverBracket", 11, 0x023B4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_63E[] = { {"RBarr", 5, 0x02910, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_641[] = { {"uharl", 5, 0x021BF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_642[] = { {"leftrightsquigarrow", 19, 0x021AD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_645[] = { {"RightFloor", 10, 0x0230B, 0}, {"intprod", 7, 0x02A3C, 0}, {"vee", 3, 0x02228, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_646[] = { {"zigrarr", 7, 0x021DD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_647[] = { {"uharr", 5, 0x021BE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_648[] = { {"gcy", 3, 0x00433, 0}, {"varsubsetneq", 12, 0x0228A, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_649[] = { {"leqslant", 8, 0x02A7D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_64A[] = { {"Odblac", 6, 0x00150, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_651[] = { {"minus", 5, 0x02212, 0}, {"scpolint", 8, 0x02A13, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_652[] = { {"lrtri", 5, 0x022BF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_653[] = { {"DiacriticalGrave", 16, 0x00060, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_655[] = { {"num", 3, 0x00023, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_657[] = { {"quest", 5, 0x0003F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_658[] = { {"Kscr", 4, 0x1D4A6, 0}, {"UnderBar", 8, 0x0005F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_659[] = { {"lsquo", 5, 0x02018, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_65C[] = { {"rArr", 4, 0x021D2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_65E[] = { {"Topf", 4, 0x1D54B, 0}, {"heartsuit", 9, 0x02665, 0}, {"rBarr", 5, 0x0290F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_660[] = { {"emptyset", 8, 0x02205, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_669[] = { {"UnderParenthesis", 16, 0x023DD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_670[] = { {"dotplus", 7, 0x02214, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_671[] = { {"Psi", 3, 0x003A8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_672[] = { {"GJcy", 4, 0x00403, 0}, {"exist", 5, 0x02203, 0}, {"simplus", 7, 0x02A24, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_673[] = { {"vfr", 3, 0x1D533, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_676[] = { {"tprime", 6, 0x02034, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_678[] = { {"leftrightharpoons", 17, 0x021CB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_679[] = { {"rbrksld", 7, 0x0298E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_67D[] = { {"Ecaron", 6, 0x0011A, 0}, {"gel", 3, 0x022DB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_680[] = { {"capdot", 6, 0x02A40, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_682[] = { {"geq", 3, 0x02265, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_684[] = { {"LowerLeftArrow", 14, 0x02199, 0}, {"ges", 3, 0x02A7E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_685[] = { {"Colone", 6, 0x02A74, 0}, {"NotLessEqual", 12, 0x02270, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_68A[] = { {"nrarr", 5, 0x0219B, 0}, {"rbrkslu", 7, 0x02990, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_68C[] = { {"flat", 4, 0x0266D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_691[] = { {"there4", 6, 0x02234, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_693[] = { {"Gdot", 4, 0x00120, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_694[] = { {"ijlig", 5, 0x00133, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_696[] = { {"blacklozenge", 12, 0x029EB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_699[] = { {"Zeta", 4, 0x00396, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6A3[] = { {"duarr", 5, 0x021F5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6A4[] = { {"DotEqual", 8, 0x02250, 0}, {"dtdot", 5, 0x022F1, 0}, {"gfr", 3, 0x1D524, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6A8[] = { {"cirE", 4, 0x029C3, 0}, {"period", 6, 0x0002E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6A9[] = { {"lmoust", 6, 0x023B0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6AA[] = { {"Icy", 3, 0x00418, 0}, {"Rcaron", 6, 0x00158, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6AB[] = { {"LeftCeiling", 11, 0x02308, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6AE[] = { {"ascr", 4, 0x1D4B6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6B0[] = { {"boxtimes", 8, 0x022A0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6B4[] = { {"jopf", 4, 0x1D55B, 0}, {"ntriangleleft", 13, 0x022EA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6B6[] = { {"eqcolon", 7, 0x02255, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6B8[] = { {"rbbrk", 5, 0x02773, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6B9[] = { {"homtht", 6, 0x0223B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6BA[] = { {"ggg", 3, 0x022D9, 0}, {"seswar", 6, 0x02929, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6BC[] = { {"perp", 4, 0x022A5, 0}, {"shcy", 4, 0x00448, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6BF[] = { {"phone", 5, 0x0260E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6C0[] = { {"NotDoubleVerticalBar", 20, 0x02226, 0}, {"ngtr", 4, 0x0226F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6C4[] = { {"ThickSpace", 10, 0x0205F, 0x0200A}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6C5[] = { {"ForAll", 6, 0x02200, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6C6[] = { {"circ", 4, 0x002C6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6C7[] = { {"Verbar", 6, 0x02016, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6C8[] = { {"cire", 4, 0x02257, 0}, {"lesges", 6, 0x02A93, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6C9[] = { {"slarr", 5, 0x02190, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6CC[] = { {"RightDownTeeVector", 18, 0x0295D, 0}, {"triangleq", 9, 0x0225C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6CE[] = { {"checkmark", 9, 0x02713, 0}, {"quot", 4, 0x00022, 0}, {"suplarr", 7, 0x0297B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6D1[] = { {"Backslash", 9, 0x02216, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6D2[] = { {"fallingdotseq", 13, 0x02252, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6D4[] = { {"swArr", 5, 0x021D9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6D5[] = { {"Xfr", 3, 0x1D51B, 0}, {"lbrke", 5, 0x0298B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6D9[] = { {"jmath", 5, 0x00237, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6DA[] = { {"lmoustache", 10, 0x023B0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6DB[] = { {"DownTee", 7, 0x022A4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6DC[] = { {"reals", 5, 0x0211D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6DE[] = { {"quaternions", 11, 0x0210D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6E7[] = { {"vzigzag", 7, 0x0299A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6EB[] = { {"pound", 5, 0x000A3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6EE[] = { {"permil", 6, 0x02030, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6EF[] = { {"Bscr", 4, 0x0212C, 0}, {"lfisht", 6, 0x0297C, 0}, {"vartriangleleft", 15, 0x022B2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6F5[] = { {"Kopf", 4, 0x1D542, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6F7[] = { {"Tilde", 5, 0x0223C, 0}, {"gtrarr", 6, 0x02978, 0}, {"lAarr", 5, 0x021DA, 0}, {"opar", 4, 0x029B7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_6FB[] = { {"triangle", 8, 0x025B5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_704[] = { {"lcaron", 6, 0x0013E, 0}, {"wscr", 4, 0x1D4CC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_705[] = { {"asympeq", 7, 0x0224D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_706[] = { {"Ifr", 3, 0x02111, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_707[] = { {"DoubleDot", 9, 0x000A8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_709[] = { {"nVdash", 6, 0x022AE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_70C[] = { {"hairsp", 6, 0x0200A, 0}, {"leftrightarrows", 15, 0x021C6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_70E[] = { {"lbrace", 6, 0x0007B, 0}, {"rightarrow", 10, 0x02192, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_70F[] = { {"Dagger", 6, 0x02021, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_712[] = { {"rsh", 3, 0x021B1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_714[] = { {"eqslantless", 11, 0x02A95, 0}, {"gnapprox", 8, 0x02A8A, 0}, {"lbrack", 6, 0x0005B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_715[] = { {"uHar", 4, 0x02963, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_717[] = { {"tilde", 5, 0x002DC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_719[] = { {"complement", 10, 0x02201, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_71B[] = { {"zcy", 3, 0x00437, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_71E[] = { {"boxDL", 5, 0x02557, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_71F[] = { {"micro", 5, 0x000B5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_723[] = { {"horbar", 6, 0x02015, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_724[] = { {"boxDR", 5, 0x02554, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_727[] = { {"bsolhsub", 8, 0x027C8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_729[] = { {"ac", 2, 0x0223E, 0}, {"nvdash", 6, 0x022AC, 0}, {"precapprox", 10, 0x02AB7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_72C[] = { {"af", 2, 0x02061, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_72D[] = { {"bullet", 6, 0x02022, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_72E[] = { {"demptyv", 7, 0x029B1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_733[] = { {"geqq", 4, 0x02267, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_734[] = { {"uuarr", 5, 0x021C8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_735[] = { {"Ocirc", 5, 0x000D4, 0}, {"utdot", 5, 0x022F0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_736[] = { {"ap", 2, 0x02248, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_738[] = { {"bNot", 4, 0x02AED, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_73B[] = { {"CirclePlus", 10, 0x02295, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_73D[] = { {"glE", 3, 0x02A92, 0}, {"midcir", 6, 0x02AF0, 0}, {"rppolint", 8, 0x02A12, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_73E[] = { {"boxDl", 5, 0x02556, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_73F[] = { {"sdot", 4, 0x022C5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_744[] = { {"boxDr", 5, 0x02553, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_745[] = { {"Xscr", 4, 0x1D4B3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_749[] = { {"dlcrop", 6, 0x0230D, 0}, {"gtrless", 7, 0x02277, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_74B[] = { {"aopf", 4, 0x1D552, 0}, {"operp", 5, 0x029B9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_74C[] = { {"kcy", 3, 0x0043A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_74F[] = { {"larrfs", 6, 0x0291D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_751[] = { {"rcub", 4, 0x0007D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_754[] = { {"nrtri", 5, 0x022EB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_755[] = { {"nparsl", 6, 0x02AFD, 0x020E5}, {"ocirc", 5, 0x000F4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_759[] = { {"gla", 3, 0x02AA5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_75C[] = { {"Iuml", 4, 0x000CF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_75F[] = { {"mcomma", 6, 0x02A29, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_762[] = { {"glj", 3, 0x02AA4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_763[] = { {"Map", 3, 0x02905, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_765[] = { {"copysr", 6, 0x02117, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_766[] = { {"DownTeeArrow", 12, 0x021A7, 0}, {"Upsi", 4, 0x003D2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_768[] = { {"awint", 5, 0x02A11, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_76E[] = { {"DownRightVector", 15, 0x021C1, 0}, {"NotEqual", 8, 0x02260, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_770[] = { {"gesl", 4, 0x022DB, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_772[] = { {"NotCupCap", 9, 0x0226D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_776[] = { {"blacktriangleright", 18, 0x025B8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_777[] = { {"zfr", 3, 0x1D537, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_779[] = { {"leftrightarrow", 14, 0x02194, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_77A[] = { {"Abreve", 6, 0x00102, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_77F[] = { {"Uarr", 4, 0x0219F, 0}, {"gnE", 3, 0x02269, 0}, {"supmult", 7, 0x02AC2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_781[] = { {"supplus", 7, 0x02AC0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_783[] = { {"nabla", 5, 0x02207, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_787[] = { {"Lang", 4, 0x027EA, 0}, {"laquo", 5, 0x000AB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_789[] = { {"larrhk", 6, 0x021A9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_78C[] = { {"Bopf", 4, 0x1D539, 0}, {"lowbar", 6, 0x0005F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_78D[] = { {"cup", 3, 0x0222A, 0}, {"dd", 2, 0x02146, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_78E[] = { {"nsce", 4, 0x02AB0, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_790[] = { {"nshortparallel", 14, 0x02226, 0}, {"nsupE", 5, 0x02AC6, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_794[] = { {"OpenCurlyQuote", 14, 0x02018, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_797[] = { {"bsolb", 5, 0x029C5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_798[] = { {"DScy", 4, 0x00405, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_79A[] = { {"boxHD", 5, 0x02566, 0}, {"ltrPar", 6, 0x02996, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_79B[] = { {"nscr", 4, 0x1D4C3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_79D[] = { {"lEg", 3, 0x02A8B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_79F[] = { {"egrave", 6, 0x000E8, 0}, {"gne", 3, 0x02A88, 0}, {"larrsim", 7, 0x02973, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7A0[] = { {"COPY", 4, 0x000A9, 0}, {"bdquo", 5, 0x0201E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7A1[] = { {"wopf", 4, 0x1D568, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7A2[] = { {"NotRightTriangleEqual", 21, 0x022ED, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7A5[] = { {"robrk", 5, 0x027E7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7A8[] = { {"kfr", 3, 0x1D528, 0}, {"nlsim", 5, 0x02274, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7AA[] = { {"xhArr", 5, 0x027FA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7AB[] = { {"boxHU", 5, 0x02569, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7AC[] = { {"lHar", 4, 0x02962, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7AE[] = { {"Mcy", 3, 0x0041C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7AF[] = { {"ee", 2, 0x02147, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7B0[] = { {"nsupe", 5, 0x02289, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7B1[] = { {"eg", 2, 0x02A9A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7B5[] = { {"trade", 5, 0x02122, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7B6[] = { {"el", 2, 0x02A99, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7B7[] = { {"nsucceq", 7, 0x02AB0, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7B8[] = { {"langle", 6, 0x027E8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7BA[] = { {"boxHd", 5, 0x02564, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7BB[] = { {"Subset", 6, 0x022D0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7BD[] = { {"DownArrowBar", 12, 0x02913, 0}, {"topbot", 6, 0x02336, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7BE[] = { {"OverBrace", 9, 0x023DE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7BF[] = { {"Eta", 3, 0x00397, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7C0[] = { {"hstrok", 6, 0x00127, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7C1[] = { {"Hacek", 5, 0x002C7, 0}, {"diamond", 7, 0x022C4, 0}, {"isinsv", 6, 0x022F3, 0}, {"rtriltri", 8, 0x029CE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7C9[] = { {"nvltrie", 7, 0x022B4, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7CB[] = { {"boxHu", 5, 0x02567, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7CD[] = { {"fpartint", 8, 0x02A0D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7CE[] = { {"Proportional", 12, 0x0221D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7D1[] = { {"NotSuperset", 11, 0x02283, 0x020D2}, {"gE", 2, 0x02267, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7D2[] = { {"scnsim", 6, 0x022E9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7D5[] = { {"uparrow", 7, 0x02191, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7D6[] = { {"ltlarr", 6, 0x02976, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7D9[] = { {"rtimes", 6, 0x022CA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7DA[] = { {"ncong", 5, 0x02247, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7DC[] = { {"Oscr", 4, 0x1D4AA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7E0[] = { {"vArr", 4, 0x021D5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7E2[] = { {"Xopf", 4, 0x1D54F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7E4[] = { {"notinva", 7, 0x02209, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7E5[] = { {"notinvb", 7, 0x022F7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7E6[] = { {"notinvc", 7, 0x022F6, 0}, {"nsqsube", 7, 0x022E2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7EC[] = { {"Tcaron", 6, 0x00164, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7EF[] = { {"upsilon", 7, 0x003C5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7F1[] = { {"ge", 2, 0x02265, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7F3[] = { {"gg", 2, 0x0226B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7F6[] = { {"KJcy", 4, 0x0040C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7F8[] = { {"gl", 2, 0x02277, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7FB[] = { {"dblac", 5, 0x002DD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_7FC[] = { {"lAtail", 6, 0x0291B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_800[] = { {"gt", 2, 0x0003E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_802[] = { {"lotimes", 7, 0x02A34, 0}, {"seArr", 5, 0x021D8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_803[] = { {"Lacute", 6, 0x00139, 0}, {"Laplacetrf", 10, 0x02112, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_808[] = { {"uuml", 4, 0x000FC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_809[] = { {"Amacr", 5, 0x00100, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_80A[] = { {"Mfr", 3, 0x1D510, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_810[] = { {"Int", 3, 0x0222C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_811[] = { {"Vvdash", 6, 0x022AA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_812[] = { {"Lcedil", 6, 0x0013B, 0}, {"larrlp", 6, 0x021AB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_816[] = { {"Larr", 4, 0x0219E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_819[] = { {"CircleTimes", 11, 0x02297, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_81C[] = { {"NotReverseElement", 17, 0x0220C, 0}, {"latail", 6, 0x02919, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_81D[] = { {"ntrianglerighteq", 16, 0x022ED, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_821[] = { {"blk12", 5, 0x02592, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_822[] = { {"intlarhk", 8, 0x02A17, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_823[] = { {"blk14", 5, 0x02591, 0}, {"ccupssm", 7, 0x02A50, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_824[] = { {"hercon", 6, 0x022B9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_828[] = { {"bigotimes", 9, 0x02A02, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_829[] = { {"amacr", 5, 0x00101, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_82D[] = { {"nrarrc", 6, 0x02933, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_82E[] = { {"ubreve", 6, 0x0016D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_830[] = { {"Yacute", 6, 0x000DD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_831[] = { {"ic", 2, 0x02063, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_832[] = { {"escr", 4, 0x0212F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_837[] = { {"ii", 2, 0x02148, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_838[] = { {"DownArrowUpArrow", 16, 0x021F5, 0}, {"nopf", 4, 0x1D55F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_83C[] = { {"in", 2, 0x02208, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_83E[] = { {"bumpE", 5, 0x02AAE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_83F[] = { {"rightharpoonup", 14, 0x021C0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_841[] = { {"nrarrw", 6, 0x0219D, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_842[] = { {"it", 2, 0x02062, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_846[] = { {"ncaron", 6, 0x00148, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_84A[] = { {"succnsim", 8, 0x022E9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_84C[] = { {"gammad", 6, 0x003DD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_84F[] = { {"yucy", 4, 0x0044E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_850[] = { {"ocy", 3, 0x0043E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_855[] = { {"hybull", 6, 0x02043, 0}, {"rpargt", 6, 0x02994, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_857[] = { {"csube", 5, 0x02AD1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_85B[] = { {"iiota", 5, 0x02129, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_85C[] = { {"nsim", 4, 0x02241, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_85E[] = { {"LeftTriangleEqual", 17, 0x022B4, 0}, {"bumpe", 5, 0x0224F, 0}, {"nearhk", 6, 0x02924, 0}, {"nhpar", 5, 0x02AF2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_861[] = { {"risingdotseq", 12, 0x02253, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_865[] = { {"blk34", 5, 0x02593, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_866[] = { {"LeftTriangle", 12, 0x022B2, 0}, {"vBarv", 5, 0x02AE9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_867[] = { {"AElig", 5, 0x000C6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_868[] = { {"DoubleUpDownArrow", 17, 0x021D5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_86A[] = { {"cwint", 5, 0x02231, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_86B[] = { {"rtrie", 5, 0x022B5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_86C[] = { {"rtrif", 5, 0x025B8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_873[] = { {"Fscr", 4, 0x02131, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_876[] = { {"lE", 2, 0x02266, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_879[] = { {"Oopf", 4, 0x1D546, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_87B[] = { {"spar", 4, 0x02225, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_87E[] = { {"uplus", 5, 0x0228E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_88A[] = { {"sacute", 6, 0x0015B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_88C[] = { {"fltns", 5, 0x025B1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_88E[] = { {"rrarr", 5, 0x021C9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_892[] = { {"larrpl", 6, 0x02939, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_895[] = { {"ultri", 5, 0x025F8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_896[] = { {"le", 2, 0x02264, 0}, {"xuplus", 6, 0x02A04, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_897[] = { {"ljcy", 4, 0x00459, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_898[] = { {"lg", 2, 0x02276, 0}, {"vsubnE", 6, 0x02ACB, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_899[] = { {"scedil", 6, 0x0015F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_89D[] = { {"ll", 2, 0x0226A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8A5[] = { {"lt", 2, 0x0003C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8AC[] = { {"ofr", 3, 0x1D52C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8B3[] = { {"nexists", 7, 0x02204, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8B6[] = { {"smallsetminus", 13, 0x02216, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8B7[] = { {"InvisibleComma", 14, 0x02063, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8B8[] = { {"dotminus", 8, 0x02238, 0}, {"vsubne", 6, 0x0228A, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8B9[] = { {"iocy", 4, 0x00451, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8BA[] = { {"gsime", 5, 0x02A8E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8BC[] = { {"Rarrtl", 6, 0x02916, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8BD[] = { {"cirmid", 6, 0x02AEF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8C0[] = { {"ominus", 6, 0x02296, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8C1[] = { {"gsiml", 5, 0x02A90, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8C2[] = { {"Prime", 5, 0x02033, 0}, {"mp", 2, 0x02213, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8C4[] = { {"tint", 4, 0x0222D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8C7[] = { {"mu", 2, 0x003BC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8CF[] = { {"dbkarow", 7, 0x0290F, 0}, {"eopf", 4, 0x1D556, 0}, {"ogt", 3, 0x029C1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8D0[] = { {"Precedes", 8, 0x0227A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8D3[] = { {"UpTeeArrow", 10, 0x021A5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8D6[] = { {"varsupsetneq", 12, 0x0228B, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8D8[] = { {"ne", 2, 0x02260, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8DC[] = { {"ni", 2, 0x0220B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8DD[] = { {"mDDot", 5, 0x0223A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8DE[] = { {"cularrp", 7, 0x0293D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8DF[] = { {"rnmid", 5, 0x02AEE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8E0[] = { {"hardcy", 6, 0x0044A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8E2[] = { {"prime", 5, 0x02032, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8E3[] = { {"Bcy", 3, 0x00411, 0}, {"REG", 3, 0x000AE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8E7[] = { {"oS", 2, 0x024C8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8E8[] = { {"nu", 2, 0x003BD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8E9[] = { {"ohm", 3, 0x003A9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8EB[] = { {"langd", 5, 0x02991, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8F3[] = { {"backprime", 9, 0x02035, 0}, {"esim", 4, 0x02242, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8FB[] = { {"veeeq", 5, 0x0225A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8FE[] = { {"RightCeiling", 12, 0x02309, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_8FF[] = { {"crarr", 5, 0x021B5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_904[] = { {"eqsim", 5, 0x02242, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_906[] = { {"or", 2, 0x02228, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_907[] = { {"OverParenthesis", 15, 0x023DC, 0}, {"UpperLeftArrow", 14, 0x02196, 0}, {"nleftrightarrow", 15, 0x021AE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_909[] = { {"expectation", 11, 0x02130, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_90C[] = { {"coprod", 6, 0x02210, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_90E[] = { {"Qfr", 3, 0x1D514, 0}, {"dArr", 4, 0x021D3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_910[] = { {"Fopf", 4, 0x1D53D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_913[] = { {"Cconint", 7, 0x02230, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_916[] = { {"larrtl", 6, 0x021A2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_918[] = { {"Aacute", 6, 0x000C1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_919[] = { {"DownLeftRightVector", 19, 0x02950, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_91B[] = { {"circleddash", 11, 0x0229D, 0}, {"thinsp", 6, 0x02009, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_91E[] = { {"Longrightarrow", 14, 0x027F9, 0}, {"pi", 2, 0x003C0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_91F[] = { {"hookrightarrow", 14, 0x021AA, 0}, {"rscr", 4, 0x1D4C7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_920[] = { {"scE", 3, 0x02AB4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_922[] = { {"pm", 2, 0x000B1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_923[] = { {"ZHcy", 4, 0x00416, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_927[] = { {"pr", 2, 0x0227A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_929[] = { {"LongLeftRightArrow", 18, 0x027F7, 0}, {"supset", 6, 0x02283, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_92A[] = { {"UpArrowBar", 10, 0x02912, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_92C[] = { {"Utilde", 6, 0x00168, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_92E[] = { {"xlArr", 5, 0x027F8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_930[] = { {"DoubleUpArrow", 13, 0x021D1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_936[] = { {"alefsym", 7, 0x02135, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_939[] = { {"Scirc", 5, 0x0015C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_93B[] = { {"xotime", 6, 0x02A02, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_93F[] = { {"Bfr", 3, 0x1D505, 0}, {"rdca", 4, 0x02937, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_940[] = { {"sce", 3, 0x02AB0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_945[] = { {"Nacute", 6, 0x00143, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_947[] = { {"amalg", 5, 0x02A3F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_94D[] = { {"UpDownArrow", 11, 0x02195, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_94F[] = { {"EqualTilde", 10, 0x02242, 0}, {"boxUL", 5, 0x0255D, 0}, {"oslash", 6, 0x000F8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_950[] = { {"lnap", 4, 0x02A89, 0}, {"thorn", 5, 0x000FE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_952[] = { {"ssmile", 6, 0x02323, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_953[] = { {"ndash", 5, 0x02013, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_954[] = { {"Ncedil", 6, 0x00145, 0}, {"scy", 3, 0x00441, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_955[] = { {"boxUR", 5, 0x0255A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_956[] = { {"Aring", 5, 0x000C5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_959[] = { {"scirc", 5, 0x0015D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_95B[] = { {"ccaron", 6, 0x0010D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_95D[] = { {"dotsquare", 9, 0x022A1, 0}, {"nshortmid", 9, 0x02224, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_95F[] = { {"rsquo", 5, 0x02019, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_960[] = { {"Sscr", 4, 0x1D4AE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_963[] = { {"bigwedge", 8, 0x022C0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_964[] = { {"Bernoullis", 10, 0x0212C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_969[] = { {"harrw", 5, 0x021AD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_96C[] = { {"SquareSubset", 12, 0x0228F, 0}, {"boxVH", 5, 0x0256C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_96F[] = { {"boxUl", 5, 0x0255C, 0}, {"rx", 2, 0x0211E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_970[] = { {"boxVL", 5, 0x02563, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_974[] = { {"olt", 3, 0x029C0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_975[] = { {"boxUr", 5, 0x02559, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_976[] = { {"aring", 5, 0x000E5, 0}, {"boxVR", 5, 0x02560, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_97B[] = { {"sc", 2, 0x0227B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_97C[] = { {"NestedGreaterGreater", 20, 0x0226B, 0}, {"oast", 4, 0x0229B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_97F[] = { {"star", 4, 0x02606, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_981[] = { {"LeftTeeVector", 13, 0x0295A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_983[] = { {"bigsqcup", 8, 0x02A06, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_985[] = { {"dcy", 3, 0x00434, 0}, {"preceq", 6, 0x02AAF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_986[] = { {"otilde", 6, 0x000F5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_988[] = { {"luruhar", 7, 0x02966, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_98C[] = { {"boxVh", 5, 0x0256B, 0}, {"capand", 6, 0x02A44, 0}, {"yuml", 4, 0x000FF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_98D[] = { {"Updownarrow", 11, 0x021D5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_98F[] = { {"TildeEqual", 10, 0x02243, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_990[] = { {"boxVl", 5, 0x02562, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_996[] = { {"boxVr", 5, 0x0255F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_997[] = { {"HorizontalLine", 14, 0x02500, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_99B[] = { {"xmap", 4, 0x027FC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_99C[] = { {"sigmaf", 6, 0x003C2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_99E[] = { {"EmptySmallSquare", 16, 0x025FB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_99F[] = { {"dzcy", 4, 0x0045F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9A0[] = { {"cups", 4, 0x0222A, 0x0FE00}, {"zwj", 3, 0x0200D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9A1[] = { {"beta", 4, 0x003B2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9A6[] = { {"supsim", 6, 0x02AC8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9A8[] = { {"beth", 4, 0x02136, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9AA[] = { {"Iukcy", 5, 0x00406, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9AC[] = { {"eparsl", 6, 0x029E3, 0}, {"sigmav", 6, 0x003C2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9B0[] = { {"lhard", 5, 0x021BD, 0}, {"sfr", 3, 0x1D530, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9B4[] = { {"nsqsupe", 7, 0x022E3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9B5[] = { {"Jsercy", 6, 0x00408, 0}, {"deg", 3, 0x000B0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9B6[] = { {"Ucy", 3, 0x00423, 0}, {"iscr", 4, 0x1D4BE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9B7[] = { {"efDot", 5, 0x02252, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9BB[] = { {"uhblk", 5, 0x02580, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9BC[] = { {"ropf", 4, 0x1D563, 0}, {"vprop", 5, 0x0221D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9BD[] = { {"isinE", 5, 0x022F9, 0}, {"raemptyv", 8, 0x029B3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9C1[] = { {"lharu", 5, 0x021BC, 0}, {"ncongdot", 8, 0x02A6D, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9C2[] = { {"subnE", 5, 0x02ACB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9C3[] = { {"ngsim", 5, 0x02275, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9C5[] = { {"starf", 5, 0x02605, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9C9[] = { {"Ograve", 6, 0x000D2, 0}, {"hksearow", 8, 0x02925, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9CA[] = { {"iukcy", 5, 0x00456, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9CC[] = { {"uacute", 6, 0x000FA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9CF[] = { {"asymp", 5, 0x02248, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9D5[] = { {"lneq", 4, 0x02A87, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9D6[] = { {"Otimes", 6, 0x02A37, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9DA[] = { {"NotTildeTilde", 13, 0x02249, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9DB[] = { {"Integral", 8, 0x0222B, 0}, {"rbrke", 5, 0x0298C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9DD[] = { {"nsub", 4, 0x02284, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9DE[] = { {"rlhar", 5, 0x021CC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9E1[] = { {"dfr", 3, 0x1D521, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9E2[] = { {"subne", 5, 0x0228A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9E5[] = { {"varnothing", 10, 0x02205, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9E7[] = { {"Fcy", 3, 0x00424, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9E9[] = { {"DoubleLeftTee", 13, 0x02AE4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9EB[] = { {"isins", 5, 0x022F4, 0}, {"nsup", 4, 0x02285, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9ED[] = { {"circlearrowleft", 15, 0x021BA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9EE[] = { {"isinv", 5, 0x02208, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9EF[] = { {"IEcy", 4, 0x00415, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9F0[] = { {"conint", 6, 0x0222E, 0}, {"vBar", 4, 0x02AE8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9F1[] = { {"edot", 4, 0x00117, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9F2[] = { {"Kappa", 5, 0x0039A, 0}, {"MediumSpace", 11, 0x0205F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9F3[] = { {"lbrksld", 7, 0x0298F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9F4[] = { {"sect", 4, 0x000A7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9F5[] = { {"nldr", 4, 0x02025, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9F7[] = { {"Jscr", 4, 0x1D4A5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9F9[] = { {"shy", 3, 0x000AD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9FA[] = { {"ulcrop", 6, 0x0230F, 0}, {"veebar", 6, 0x022BB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_9FD[] = { {"Sopf", 4, 0x1D54A, 0}, {"cuwed", 5, 0x022CF, 0}, {"rAarr", 5, 0x021DB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A01[] = { {"erarr", 5, 0x02971, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A04[] = { {"lbrkslu", 7, 0x0298D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A05[] = { {"NotSucceeds", 11, 0x02281, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A06[] = { {"nsccue", 6, 0x022E1, 0}, {"subrarr", 7, 0x02979, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A08[] = { {"looparrowright", 14, 0x021AC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A0C[] = { {"wp", 2, 0x02118, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A0D[] = { {"Emacr", 5, 0x00112, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A0E[] = { {"sim", 3, 0x0223C, 0}, {"wr", 2, 0x02240, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A10[] = { {"Udblac", 6, 0x00170, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A12[] = { {"Ufr", 3, 0x1D518, 0}, {"kappa", 5, 0x003BA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A14[] = { {"notindot", 8, 0x022F5, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A15[] = { {"nleq", 4, 0x02270, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A16[] = { {"NestedLessLess", 14, 0x0226A, 0}, {"square", 6, 0x025A1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A17[] = { {"nles", 4, 0x02A7D, 0x00338}, {"squarf", 6, 0x025AA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A21[] = { {"order", 5, 0x02134, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A23[] = { {"igrave", 6, 0x000EC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A24[] = { {"precneqq", 8, 0x02AB5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A25[] = { {"csupe", 5, 0x02AD2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A26[] = { {"xi", 2, 0x003BE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A28[] = { {"NotHumpEqual", 12, 0x0224F, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A2A[] = { {"ord", 3, 0x02A5D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A2D[] = { {"emacr", 5, 0x00113, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A30[] = { {"nwnear", 6, 0x02927, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A32[] = { {"nprcue", 6, 0x022E0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A36[] = { {"NotExists", 9, 0x02204, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A37[] = { {"die", 3, 0x000A8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A39[] = { {"ddotseq", 7, 0x02A77, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A3B[] = { {"Dashv", 5, 0x02AE4, 0}, {"Ucirc", 5, 0x000DB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A3C[] = { {"orv", 3, 0x02A5B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A3D[] = { {"Because", 7, 0x02235, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A41[] = { {"kgreen", 6, 0x00138, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A43[] = { {"Ffr", 3, 0x1D509, 0}, {"LeftVector", 10, 0x021BC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A44[] = { {"lstrok", 6, 0x00142, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A45[] = { {"twixt", 5, 0x0226C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A48[] = { {"compfn", 6, 0x02218, 0}, {"div", 3, 0x000F7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A4F[] = { {"drcrop", 6, 0x0230C, 0}, {"shortmid", 8, 0x02223, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A53[] = { {"iopf", 4, 0x1D55A, 0}, {"triangledown", 12, 0x025BF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A54[] = { {"IJlig", 5, 0x00132, 0}, {"thetasym", 8, 0x003D1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A56[] = { {"Sigma", 5, 0x003A3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A57[] = { {"equivDD", 7, 0x02A78, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A5A[] = { {"Cacute", 6, 0x00106, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A5B[] = { {"dashv", 5, 0x022A3, 0}, {"ucirc", 5, 0x000FB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A61[] = { {"gneqq", 5, 0x02269, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A62[] = { {"gvertneqq", 9, 0x02269, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A63[] = { {"RightDownVectorBar", 18, 0x02955, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A64[] = { {"NotLessLess", 11, 0x0226A, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A69[] = { {"Ccedil", 6, 0x000C7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A6A[] = { {"odblac", 6, 0x00151, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A6B[] = { {"mstpos", 6, 0x0223E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A6D[] = { {"cemptyv", 7, 0x029B2, 0}, {"rarrap", 6, 0x02975, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A6F[] = { {"rmoust", 6, 0x023B1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A70[] = { {"elsdot", 6, 0x02A97, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A76[] = { {"sigma", 5, 0x003C3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A78[] = { {"Implies", 7, 0x021D2, 0}, {"isin", 4, 0x02208, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A7A[] = { {"bottom", 6, 0x022A5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A7E[] = { {"ShortRightArrow", 15, 0x02192, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A81[] = { {"cupcap", 6, 0x02A46, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A82[] = { {"NotSquareSuperset", 17, 0x02290, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A84[] = { {"LeftArrowRightArrow", 19, 0x021C6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A85[] = { {"FilledVerySmallSquare", 21, 0x025AA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A86[] = { {"LeftUpTeeVector", 15, 0x02960, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A89[] = { {"DoubleRightArrow", 16, 0x021D2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A8D[] = { {"raquo", 5, 0x000BB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A8E[] = { {"Ascr", 4, 0x1D49C, 0}, {"ReverseUpEquilibrium", 20, 0x0296F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A92[] = { {"hArr", 4, 0x021D4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A94[] = { {"Jopf", 4, 0x1D541, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A96[] = { {"npar", 4, 0x02226, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A98[] = { {"SupersetEqual", 13, 0x02287, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A99[] = { {"ffllig", 6, 0x0FB04, 0}, {"smt", 3, 0x02AAA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A9A[] = { {"twoheadrightarrow", 17, 0x021A0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A9D[] = { {"ecaron", 6, 0x0011B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_A9F[] = { {"NotRightTriangleBar", 19, 0x029D0, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AA3[] = { {"apid", 4, 0x0224B, 0}, {"vscr", 4, 0x1D4CB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AA4[] = { {"supdot", 6, 0x02ABE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AA5[] = { {"colone", 6, 0x02254, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AA7[] = { {"dwangle", 7, 0x029A6, 0}, {"shchcy", 6, 0x00449, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AAC[] = { {"ltdot", 5, 0x022D6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AB2[] = { {"downharpoonright", 16, 0x021C2, 0}, {"gjcy", 4, 0x00453, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AB4[] = { {"wfr", 3, 0x1D534, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AB5[] = { {"rfisht", 6, 0x0297D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ABA[] = { {"Ycy", 3, 0x0042B, 0}, {"swarrow", 7, 0x02199, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AC0[] = { {"nharr", 5, 0x021AE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AC4[] = { {"frac12", 6, 0x000BD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AC5[] = { {"frac13", 6, 0x02153, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AC6[] = { {"frac14", 6, 0x000BC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AC7[] = { {"GreaterEqual", 12, 0x02265, 0}, {"frac15", 6, 0x02155, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AC8[] = { {"Gamma", 5, 0x00393, 0}, {"frac16", 6, 0x02159, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ACA[] = { {"dzigrarr", 8, 0x027FF, 0}, {"frac18", 6, 0x0215B, 0}, {"rcaron", 6, 0x00159, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ACC[] = { {"DownRightTeeVector", 18, 0x0295F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ACF[] = { {"nvrtrie", 7, 0x022B5, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AD2[] = { {"iota", 4, 0x003B9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AD3[] = { {"sol", 3, 0x0002F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AD4[] = { {"rbrace", 6, 0x0007D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ADA[] = { {"rbrack", 6, 0x0005D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ADD[] = { {"rsqb", 4, 0x0005D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ADF[] = { {"oint", 4, 0x0222E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AE4[] = { {"Wscr", 4, 0x1D4B2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AE5[] = { {"hfr", 3, 0x1D525, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AE6[] = { {"frac23", 6, 0x02154, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AE7[] = { {"dlcorn", 6, 0x0231E, 0}, {"verbar", 6, 0x0007C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AE8[] = { {"frac25", 6, 0x02156, 0}, {"gamma", 5, 0x003B3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AE9[] = { {"nVDash", 6, 0x022AF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AEB[] = { {"Jcy", 3, 0x00419, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AF5[] = { {"nwarrow", 7, 0x02196, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AF6[] = { {"OverBar", 7, 0x0203E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AF7[] = { {"rightsquigarrow", 15, 0x0219D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AFA[] = { {"iexcl", 5, 0x000A1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AFD[] = { {"sqcap", 5, 0x02293, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_AFE[] = { {"pertenk", 7, 0x02031, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B08[] = { {"PrecedesEqual", 13, 0x02AAF, 0}, {"frac34", 6, 0x000BE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B09[] = { {"Therefore", 9, 0x02234, 0}, {"frac35", 6, 0x02157, 0}, {"nvDash", 6, 0x022AD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B0A[] = { {"odsold", 6, 0x029BC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B0C[] = { {"dot", 3, 0x002D9, 0}, {"frac38", 6, 0x0215C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B10[] = { {"sqcaps", 6, 0x02293, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B11[] = { {"ZeroWidthSpace", 14, 0x0200B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B15[] = { {"rarrfs", 6, 0x0291E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B16[] = { {"Yfr", 3, 0x1D51C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B1E[] = { {"CircleDot", 9, 0x02299, 0}, {"gtcir", 5, 0x02A7A, 0}, {"squ", 3, 0x025A1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B1F[] = { {"angmsd", 6, 0x02221, 0}, {"nsubseteq", 9, 0x02288, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B23[] = { {"iprod", 5, 0x02A3C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B24[] = { {"bprime", 6, 0x02035, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B27[] = { {"supsub", 6, 0x02AD4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B29[] = { {"SquareSupersetEqual", 19, 0x02292, 0}, {"therefore", 9, 0x02234, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B2A[] = { {"frac45", 6, 0x02158, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B2B[] = { {"Aopf", 4, 0x1D538, 0}, {"NotGreaterFullEqual", 19, 0x02267, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B2C[] = { {"Tstrok", 6, 0x00166, 0}, {"rightleftarrows", 15, 0x021C4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B2D[] = { {"Fouriertrf", 10, 0x02131, 0}, {"epar", 4, 0x022D5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B2E[] = { {"omid", 4, 0x029B6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B2F[] = { {"OpenCurlyDoubleQuote", 20, 0x0201C, 0}, {"dagger", 6, 0x02020, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B33[] = { {"semi", 4, 0x0003B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B35[] = { {"supsup", 6, 0x02AD6, 0}, {"zeetrf", 6, 0x02128, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B36[] = { {"DifferentialD", 13, 0x02146, 0}, {"topcir", 6, 0x02AF1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B3A[] = { {"mscr", 4, 0x1D4C2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B3D[] = { {"Wcirc", 5, 0x00174, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B3E[] = { {"boxdL", 5, 0x02555, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B40[] = { {"Gbreve", 6, 0x0011E, 0}, {"vopf", 4, 0x1D567, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B42[] = { {"lap", 3, 0x02A85, 0}, {"llarr", 5, 0x021C7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B44[] = { {"boxdR", 5, 0x02552, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B46[] = { {"RightAngleBracket", 17, 0x027E9, 0}, {"lat", 3, 0x02AAB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B47[] = { {"Jfr", 3, 0x1D50D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B4C[] = { {"frac56", 6, 0x0215A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B4E[] = { {"frac58", 6, 0x0215D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B4F[] = { {"rarrhk", 6, 0x021AA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B50[] = { {"lesdot", 6, 0x02A7F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B51[] = { {"ApplyFunction", 13, 0x02061, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B52[] = { {"NotGreaterTilde", 15, 0x02275, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B53[] = { {"Cedilla", 7, 0x000B8, 0}, {"curvearrowright", 15, 0x021B7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B56[] = { {"rdsh", 4, 0x021B3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B58[] = { {"larrb", 5, 0x021E4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B5C[] = { {"vrtri", 5, 0x022B3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B5D[] = { {"nequiv", 6, 0x02262, 0}, {"wcirc", 5, 0x00175, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B5E[] = { {"boxdl", 5, 0x02510, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B63[] = { {"DoubleDownArrow", 15, 0x021D3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B64[] = { {"boxdr", 5, 0x0250C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B67[] = { {"pluscir", 7, 0x02A22, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B69[] = { {"longmapsto", 10, 0x027FC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B6B[] = { {"gnap", 4, 0x02A8A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B6D[] = { {"bigodot", 7, 0x02A00, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B72[] = { {"thickapprox", 11, 0x02248, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B73[] = { {"DotDot", 6, 0x020DC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B77[] = { {"incare", 6, 0x02105, 0}, {"rarrbfs", 7, 0x02920, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B78[] = { {"apos", 4, 0x00027, 0}, {"tbrk", 4, 0x023B4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B7A[] = { {"grave", 5, 0x00060, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B7B[] = { {"Nscr", 4, 0x1D4A9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B7E[] = { {"rangle", 6, 0x027E9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B7F[] = { {"uArr", 4, 0x021D1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B81[] = { {"Wopf", 4, 0x1D54E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B82[] = { {"doteq", 5, 0x02250, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B87[] = { {"times", 5, 0x000D7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B8D[] = { {"fflig", 5, 0x0FB00, 0}, {"lcy", 3, 0x0043B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B8F[] = { {"sub", 3, 0x02282, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B90[] = { {"frac78", 6, 0x0215E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B94[] = { {"xrarr", 5, 0x027F6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B98[] = { {"UpArrowDownArrow", 16, 0x021C5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B99[] = { {"bbrktbrk", 8, 0x023B6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B9A[] = { {"abreve", 6, 0x00103, 0}, {"lsaquo", 6, 0x02039, 0}, {"sum", 3, 0x02211, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B9C[] = { {"Eacute", 6, 0x000C9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_B9D[] = { {"sup", 3, 0x02283, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BA5[] = { {"ContourIntegral", 15, 0x0222E, 0}, {"DiacriticalDot", 14, 0x002D9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BA9[] = { {"trisb", 5, 0x029CD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BAE[] = { {"Hcirc", 5, 0x00124, 0}, {"lceil", 5, 0x02308, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BB2[] = { {"Zcaron", 6, 0x0017D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BB5[] = { {"looparrowleft", 13, 0x021AB, 0}, {"oelig", 5, 0x00153, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BB6[] = { {"LessSlantEqual", 14, 0x02A7D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BB7[] = { {"NegativeThinSpace", 17, 0x0200B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BBA[] = { {"boxhD", 5, 0x02565, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BBC[] = { {"omicron", 7, 0x003BF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BBD[] = { {"leg", 3, 0x022DA, 0}, {"rightthreetimes", 15, 0x022CC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BBF[] = { {"NotSucceedsSlantEqual", 21, 0x022E1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BC1[] = { {"angmsdaa", 8, 0x029A8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BC2[] = { {"angmsdab", 8, 0x029A9, 0}, {"rAtail", 6, 0x0291C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BC3[] = { {"angmsdac", 8, 0x029AA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BC4[] = { {"angmsdad", 8, 0x029AB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BC5[] = { {"angmsdae", 8, 0x029AC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BC6[] = { {"angmsdaf", 8, 0x029AD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BC7[] = { {"angmsdag", 8, 0x029AE, 0}, {"leq", 3, 0x02264, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BC8[] = { {"angmsdah", 8, 0x029AF, 0}, {"solbar", 6, 0x0233F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BC9[] = { {"Racute", 6, 0x00154, 0}, {"les", 3, 0x02A7D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BCB[] = { {"boxhU", 5, 0x02568, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BCE[] = { {"hcirc", 5, 0x00125, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BD1[] = { {"dscr", 4, 0x1D4B9, 0}, {"smashp", 6, 0x02A33, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BD7[] = { {"mopf", 4, 0x1D55E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BD8[] = { {"Rcedil", 6, 0x00156, 0}, {"dscy", 4, 0x00455, 0}, {"prap", 4, 0x02AB7, 0}, {"rarrlp", 6, 0x021AC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BD9[] = { {"Aogon", 5, 0x00104, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BDA[] = { {"boxhd", 5, 0x0252C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BDB[] = { {"subset", 6, 0x02282, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BDD[] = { {"lgE", 3, 0x02A91, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BDF[] = { {"epsilon", 7, 0x003B5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BE1[] = { {"curarrm", 7, 0x0293C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BE2[] = { {"ratail", 6, 0x0291A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BE4[] = { {"DoubleLongLeftRightArrow", 24, 0x027FA, 0}, {"rhov", 4, 0x003F1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BE7[] = { {"LeftDoubleBracket", 17, 0x027E6, 0}, {"Lleftarrow", 10, 0x021DA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BE8[] = { {"Uuml", 4, 0x000DC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BE9[] = { {"lfr", 3, 0x1D529, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BEA[] = { {"minusdu", 7, 0x02A2A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BEB[] = { {"boxhu", 5, 0x02534, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BEF[] = { {"Ncy", 3, 0x0041D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BF0[] = { {"gneq", 4, 0x02A88, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BF1[] = { {"rangd", 5, 0x02992, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BF2[] = { {"range", 5, 0x029A5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BF3[] = { {"lfloor", 6, 0x0230A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BF7[] = { {"NotSucceedsTilde", 16, 0x0227F, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BF9[] = { {"aogon", 5, 0x00105, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BFA[] = { {"NotGreaterSlantEqual", 20, 0x02A7E, 0x00338}, {"NotSquareSupersetEqual", 22, 0x022E3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_BFC[] = { {"profsurf", 8, 0x02313, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C02[] = { {"wedgeq", 6, 0x02259, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C0B[] = { {"Alpha", 5, 0x00391, 0}, {"DiacriticalDoubleAcute", 22, 0x002DD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C0C[] = { {"lltri", 5, 0x025FA, 0}, {"tcaron", 6, 0x00165, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C11[] = { {"Imacr", 5, 0x0012A, 0}, {"subseteq", 8, 0x02286, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C12[] = { {"Escr", 4, 0x02130, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C16[] = { {"lArr", 4, 0x021D0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C18[] = { {"Nopf", 4, 0x02115, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C1A[] = { {"rpar", 4, 0x00029, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C1D[] = { {"divonx", 6, 0x022C7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C1E[] = { {"olcir", 5, 0x029BE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C23[] = { {"lacute", 6, 0x0013A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C27[] = { {"zscr", 4, 0x1D4CF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C2B[] = { {"alpha", 5, 0x003B1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C31[] = { {"imacr", 5, 0x0012B, 0}, {"vellip", 6, 0x022EE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C32[] = { {"lcedil", 6, 0x0013C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C33[] = { {"sime", 4, 0x02243, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C34[] = { {"empty", 5, 0x02205, 0}, {"imped", 5, 0x001B5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C35[] = { {"simg", 4, 0x02A9E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C36[] = { {"kjcy", 4, 0x0045C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C3A[] = { {"siml", 4, 0x02A9D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C3E[] = { {"LessEqualGreater", 16, 0x022DA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C3F[] = { {"Ycirc", 5, 0x00176, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C40[] = { {"RoundImplies", 12, 0x02970, 0}, {"nvrArr", 6, 0x02903, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C43[] = { {"check", 5, 0x02713, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C44[] = { {"nlarr", 5, 0x0219A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C46[] = { {"middot", 6, 0x000B7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C48[] = { {"par", 3, 0x02225, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C4A[] = { {"NotGreaterGreater", 17, 0x0226B, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C4B[] = { {"Nfr", 3, 0x1D511, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C4F[] = { {"nwArr", 5, 0x021D6, 0}, {"prec", 4, 0x0227A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C50[] = { {"Barv", 4, 0x02AE7, 0}, {"yacute", 6, 0x000FD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C54[] = { {"DoubleLeftRightArrow", 20, 0x021D4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C58[] = { {"Coproduct", 9, 0x02210, 0}, {"rarrpl", 6, 0x02945, 0}, {"subsim", 6, 0x02AC7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C5A[] = { {"ntgl", 4, 0x02279, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C5B[] = { {"LeftTriangleBar", 15, 0x029CF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C5F[] = { {"ycirc", 5, 0x00177, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C69[] = { {"doteqdot", 8, 0x02251, 0}, {"nang", 4, 0x02220, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C6B[] = { {"bigcap", 6, 0x022C2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C6C[] = { {"CHcy", 4, 0x00427, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C6E[] = { {"dopf", 4, 0x1D555, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C72[] = { {"inodot", 6, 0x00131, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C76[] = { {"nvHarr", 6, 0x02904, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C77[] = { {"laemptyv", 8, 0x029B4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C78[] = { {"bigcirc", 7, 0x025EF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C7A[] = { {"scnap", 5, 0x02ABA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C7B[] = { {"DownLeftVector", 14, 0x021BD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C80[] = { {"race", 4, 0x0223D, 0x00331}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C82[] = { {"vartriangleright", 16, 0x022B3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C89[] = { {"napE", 4, 0x02A70, 0x00338}, {"supedot", 7, 0x02AC4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C8E[] = { {"acE", 3, 0x0223E, 0x00333}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C91[] = { {"pcy", 3, 0x0043F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C93[] = { {"qprime", 6, 0x02057, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C94[] = { {"RightTeeVector", 14, 0x0295B, 0}, {"curlyvee", 8, 0x022CE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C95[] = { {"swarhk", 6, 0x02926, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_C98[] = { {"Atilde", 6, 0x000C3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CA6[] = { {"bbrk", 4, 0x023B5, 0}, {"prnap", 5, 0x02AB9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CA8[] = { {"image", 5, 0x02111, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CA9[] = { {"sext", 4, 0x02736, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CAA[] = { {"ldquo", 5, 0x0201C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CAC[] = { {"NotLeftTriangleBar", 18, 0x029CF, 0x00338}, {"epsiv", 5, 0x003F5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CAD[] = { {"CenterDot", 9, 0x000B7, 0}, {"acd", 3, 0x0223F, 0}, {"upuparrows", 10, 0x021C8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CAF[] = { {"Eopf", 4, 0x1D53C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CB0[] = { {"Jcirc", 5, 0x00134, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CB2[] = { {"smid", 4, 0x02223, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CB4[] = { {"bull", 4, 0x02022, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CB6[] = { {"rhard", 5, 0x021C1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CB7[] = { {"nsupset", 7, 0x02283, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CBA[] = { {"npre", 4, 0x02AAF, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CBE[] = { {"qscr", 4, 0x1D4C6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CC2[] = { {"acy", 3, 0x00430, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CC4[] = { {"lnE", 3, 0x02268, 0}, {"zopf", 4, 0x1D56B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CC5[] = { {"Ntilde", 6, 0x000D1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CC7[] = { {"rharu", 5, 0x021C0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CC8[] = { {"kappav", 6, 0x003F0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CC9[] = { {"timesb", 6, 0x022A0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CCB[] = { {"iiiint", 6, 0x02A0C, 0}, {"timesd", 6, 0x02A30, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CD0[] = { {"jcirc", 5, 0x00135, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CD2[] = { {"nsimeq", 6, 0x02244, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CD3[] = { {"Esim", 4, 0x02A73, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CD9[] = { {"Cap", 3, 0x022D2, 0}, {"bump", 4, 0x0224E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CDA[] = { {"lvnE", 4, 0x02268, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CDC[] = { {"rarrtl", 6, 0x021A3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CE4[] = { {"lne", 3, 0x02A87, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CE6[] = { {"commat", 6, 0x00040, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CE8[] = { {"hslash", 6, 0x0210F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CE9[] = { {"lthree", 6, 0x022CB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CED[] = { {"Gcedil", 6, 0x00122, 0}, {"pfr", 3, 0x1D52D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CF1[] = { {"RightTriangleEqual", 18, 0x022B5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CF2[] = { {"ngeqslant", 9, 0x02A7E, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CF3[] = { {"Rcy", 3, 0x00420, 0}, {"gimel", 5, 0x02137, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CF4[] = { {"curarr", 6, 0x021B7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CFA[] = { {"ntlg", 4, 0x02278, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_CFF[] = { {"Rscr", 4, 0x0211B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D00[] = { {"urcrop", 6, 0x0230E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D06[] = { {"Poincareplane", 13, 0x0210C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D07[] = { {"NoBreak", 7, 0x02060, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D0B[] = { {"lcub", 4, 0x0007B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D0E[] = { {"nltri", 5, 0x022EA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D10[] = { {"blacktriangledown", 17, 0x025BE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D11[] = { {"fjlig", 5, 0x00066, 0x0006A}, {"percnt", 6, 0x00025, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D12[] = { {"rightharpoondown", 16, 0x021C1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D13[] = { {"LeftAngleBracket", 16, 0x027E8, 0}, {"npreceq", 7, 0x02AAF, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D15[] = { {"cupcup", 6, 0x02A4A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D18[] = { {"LeftVectorBar", 13, 0x02952, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D19[] = { {"NJcy", 4, 0x0040A, 0}, {"triangleright", 13, 0x025B9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D1A[] = { {"Tcedil", 6, 0x00162, 0}, {"loz", 3, 0x025CA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D1E[] = { {"afr", 3, 0x1D51E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D1F[] = { {"NotLessTilde", 12, 0x02274, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D20[] = { {"NotElement", 10, 0x02209, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D22[] = { {"NotHumpDownHump", 15, 0x0224E, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D24[] = { {"SquareSubsetEqual", 17, 0x02291, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D26[] = { {"nleqq", 5, 0x02266, 0x00338}, {"phi", 3, 0x003C6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D2A[] = { {"NotRightTriangle", 16, 0x022EB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D32[] = { {"lhblk", 5, 0x02584, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D34[] = { {"caret", 5, 0x02041, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D35[] = { {"bsemi", 5, 0x0204F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D38[] = { {"aacute", 6, 0x000E1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D39[] = { {"mapsto", 6, 0x021A6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D3A[] = { {"Congruent", 9, 0x02261, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D3B[] = { {"Vdash", 5, 0x022A9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D3E[] = { {"longrightarrow", 14, 0x027F6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D42[] = { {"iinfin", 6, 0x029DC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D44[] = { {"EmptyVerySmallSquare", 20, 0x025AB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D49[] = { {"real", 4, 0x0211C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D4C[] = { {"SucceedsEqual", 13, 0x02AB0, 0}, {"utilde", 6, 0x00169, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D4F[] = { {"Rfr", 3, 0x0211C, 0}, {"tau", 3, 0x003C4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D51[] = { {"Wedge", 5, 0x022C0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D54[] = { {"piv", 3, 0x003D6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D55[] = { {"hscr", 4, 0x1D4BD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D56[] = { {"subdot", 6, 0x02ABD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D57[] = { {"dsol", 4, 0x029F6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D5A[] = { {"prnE", 4, 0x02AB5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D5B[] = { {"qopf", 4, 0x1D562, 0}, {"vdash", 5, 0x022A2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D5F[] = { {"Star", 4, 0x022C6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D63[] = { {"sqsupseteq", 10, 0x02292, 0}, {"zhcy", 4, 0x00436, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D65[] = { {"nacute", 6, 0x00144, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D69[] = { {"lessgtr", 7, 0x02276, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D6A[] = { {"nless", 5, 0x0226E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D6C[] = { {"RightTeeArrow", 13, 0x021A6, 0}, {"Yuml", 4, 0x00178, 0}, {"target", 6, 0x02316, 0}, {"upharpoonleft", 13, 0x021BF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D6F[] = { {"between", 7, 0x0226C, 0}, {"boxuL", 5, 0x0255B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D70[] = { {"TSHcy", 5, 0x0040B, 0}, {"lrm", 3, 0x0200E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D71[] = { {"excl", 4, 0x00021, 0}, {"hyphen", 6, 0x02010, 0}, {"mlcp", 4, 0x02ADB, 0}, {"wedge", 5, 0x02227, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D74[] = { {"ncedil", 6, 0x00146, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D75[] = { {"boxuR", 5, 0x02558, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D76[] = { {"Not", 3, 0x02AEC, 0}, {"epsi", 4, 0x003B5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D7C[] = { {"disin", 5, 0x022F2, 0}, {"nRightarrow", 11, 0x021CF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D7D[] = { {"cylcty", 6, 0x0232D, 0}, {"neArr", 5, 0x021D7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D7E[] = { {"prnsim", 6, 0x022E8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D80[] = { {"Cfr", 3, 0x0212D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D81[] = { {"Beta", 4, 0x00392, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D85[] = { {"leftarrowtail", 13, 0x021A2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D87[] = { {"parsl", 5, 0x02AFD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D89[] = { {"xwedge", 6, 0x022C0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D8A[] = { {"olcross", 7, 0x029BB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D8C[] = { {"boxvH", 5, 0x0256A, 0}, {"lsh", 3, 0x021B0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D8D[] = { {"circledR", 8, 0x000AE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D8E[] = { {"Rho", 3, 0x003A1, 0}, {"circledS", 8, 0x024C8, 0}, {"cupor", 5, 0x02A45, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D8F[] = { {"Ugrave", 6, 0x000D9, 0}, {"boxul", 5, 0x02518, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D90[] = { {"boxvL", 5, 0x02561, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D91[] = { {"sqcup", 5, 0x02294, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D93[] = { {"rect", 4, 0x025AD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D94[] = { {"mldr", 4, 0x02026, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D95[] = { {"boxur", 5, 0x02514, 0}, {"digamma", 7, 0x003DD, 0}, {"tcy", 3, 0x00442, 0}, {"urcorner", 8, 0x0231D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D96[] = { {"DoubleLeftArrow", 15, 0x021D0, 0}, {"Iscr", 4, 0x02110, 0}, {"boxvR", 5, 0x0255E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D98[] = { {"ulcorn", 6, 0x0231C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D9A[] = { {"prod", 4, 0x0220F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_D9C[] = { {"Ropf", 4, 0x0211D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DA0[] = { {"rmoustache", 10, 0x023B1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DA5[] = { {"NegativeMediumSpace", 19, 0x0200B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DA6[] = { {"prop", 4, 0x0221D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DA8[] = { {"TScy", 4, 0x00426, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DA9[] = { {"xsqcup", 6, 0x02A06, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DAC[] = { {"bemptyv", 7, 0x029B0, 0}, {"boxvh", 5, 0x0253C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DB0[] = { {"boxvl", 5, 0x02524, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DB3[] = { {"NotTildeFullEqual", 17, 0x02247, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DB4[] = { {"subE", 4, 0x02AC5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DB6[] = { {"boxvr", 5, 0x0251C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DB7[] = { {"bigvee", 6, 0x022C1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DB9[] = { {"Chi", 3, 0x003A7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DBC[] = { {"circeq", 6, 0x02257, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DBE[] = { {"emsp13", 6, 0x02004, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DBF[] = { {"emsp14", 6, 0x02005, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DC2[] = { {"ouml", 4, 0x000F6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DC3[] = { {"RightArrowBar", 13, 0x021E5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DC6[] = { {"ecy", 3, 0x0044D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DC8[] = { {"succneqq", 8, 0x02AB6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DCA[] = { {"npart", 5, 0x02202, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DCF[] = { {"Element", 7, 0x02208, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DD1[] = { {"Edot", 4, 0x00116, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DD3[] = { {"RightUpDownVector", 17, 0x0294F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DD4[] = { {"sube", 4, 0x02286, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DD5[] = { {"jsercy", 6, 0x00458, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DD7[] = { {"varrho", 6, 0x003F1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DD9[] = { {"subsub", 6, 0x02AD5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DDC[] = { {"Dcaron", 6, 0x0010E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DDD[] = { {"Eogon", 5, 0x00118, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DE4[] = { {"geqslant", 8, 0x02A7E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DE6[] = { {"rdldhar", 7, 0x02969, 0}, {"zdot", 4, 0x0017C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DE7[] = { {"subsup", 6, 0x02AD3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DE9[] = { {"ograve", 6, 0x000F2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DEB[] = { {"ReverseElement", 14, 0x0220B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DED[] = { {"drcorn", 6, 0x0231F, 0}, {"rang", 4, 0x027E9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DF1[] = { {"tfr", 3, 0x1D531, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DF2[] = { {"hopf", 4, 0x1D559, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DF3[] = { {"succ", 4, 0x0227B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DF6[] = { {"otimes", 6, 0x02297, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DF7[] = { {"Vcy", 3, 0x00412, 0}, {"ltquest", 7, 0x02A7B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DF9[] = { {"lozenge", 7, 0x025CA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DFB[] = { {"LeftDownVector", 14, 0x021C3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_DFD[] = { {"eogon", 5, 0x00119, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E03[] = { {"amp", 3, 0x00026, 0}, {"lopar", 5, 0x02985, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E04[] = { {"loplus", 6, 0x02A2D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E08[] = { {"NotTilde", 8, 0x02241, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E09[] = { {"CounterClockwiseContourIntegral", 31, 0x02233, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E0C[] = { {"InvisibleTimes", 14, 0x02062, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E11[] = { {"lesdotor", 8, 0x02A83, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E18[] = { {"and", 3, 0x02227, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E1B[] = { {"RightUpVector", 13, 0x021BE, 0}, {"ang", 3, 0x02220, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E1C[] = { {"DoubleRightTee", 14, 0x022A8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E1D[] = { {"LeftUpVectorBar", 15, 0x02958, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E1E[] = { {"smte", 4, 0x02AAC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E20[] = { {"Iacute", 6, 0x000CD, 0}, {"triminus", 8, 0x02A3A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E22[] = { {"efr", 3, 0x1D522, 0}, {"iiint", 5, 0x0222D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E23[] = { {"ctdot", 5, 0x022EF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E24[] = { {"mnplus", 6, 0x02213, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E25[] = { {"Vee", 3, 0x022C1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E28[] = { {"Gcy", 3, 0x00413, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E2A[] = { {"lurdshar", 8, 0x0294A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E2C[] = { {"smeparsl", 8, 0x029E4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E2F[] = { {"DoubleVerticalBar", 17, 0x02225, 0}, {"iecy", 4, 0x00435, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E30[] = { {"udblac", 6, 0x00171, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E32[] = { {"gtquest", 7, 0x02A7C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E33[] = { {"Iopf", 4, 0x1D540, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E35[] = { {"bsime", 5, 0x022CD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E36[] = { {"RightVector", 11, 0x021C0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E37[] = { {"NotGreaterLess", 14, 0x02279, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E3B[] = { {"apE", 3, 0x02A70, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E41[] = { {"CupCap", 6, 0x0224D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E42[] = { {"uscr", 4, 0x1D4CA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E43[] = { {"erDot", 5, 0x02253, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E44[] = { {"egs", 3, 0x02A96, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E48[] = { {"rlarr", 5, 0x021C4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E4C[] = { {"prE", 3, 0x02AB3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E4E[] = { {"QUOT", 4, 0x00022, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E53[] = { {"Vfr", 3, 0x1D519, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E55[] = { {"cupbrcap", 8, 0x02A48, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E57[] = { {"intercal", 8, 0x022BA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E58[] = { {"imath", 5, 0x00131, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E59[] = { {"RightUpTeeVector", 16, 0x0295C, 0}, {"trie", 4, 0x0225C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E5B[] = { {"ape", 3, 0x0224A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E5D[] = { {"softcy", 6, 0x0044C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E5E[] = { {"rarrb", 5, 0x021E5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E5F[] = { {"FilledSmallSquare", 17, 0x025FC, 0}, {"rarrc", 5, 0x02933, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E60[] = { {"Superset", 8, 0x02283, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E61[] = { {"hoarr", 5, 0x021FF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E63[] = { {"DownRightVectorBar", 18, 0x02957, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E64[] = { {"brvbar", 6, 0x000A6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E65[] = { {"ecolon", 6, 0x02255, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E66[] = { {"GreaterLess", 11, 0x02277, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E6A[] = { {"nrArr", 5, 0x021CF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E6C[] = { {"pre", 3, 0x02AAF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E6F[] = { {"aleph", 5, 0x02135, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E70[] = { {"DiacriticalAcute", 16, 0x000B4, 0}, {"SmallCircle", 11, 0x02218, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E71[] = { {"parsim", 6, 0x02AF3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E73[] = { {"rarrw", 5, 0x0219D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E78[] = { {"caron", 5, 0x002C7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E7A[] = { {"cacute", 6, 0x00107, 0}, {"lagran", 6, 0x02112, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E7C[] = { {"rarr", 4, 0x02192, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E80[] = { {"Rrightarrow", 11, 0x021DB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E83[] = { {"Vscr", 4, 0x1D4B1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E84[] = { {"Gfr", 3, 0x1D50A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E89[] = { {"ccedil", 6, 0x000E7, 0}, {"propto", 6, 0x0221D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E8E[] = { {"zwnj", 4, 0x0200C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E91[] = { {"psi", 3, 0x003C8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E99[] = { {"infin", 5, 0x0221E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_E9C[] = { {"circledcirc", 11, 0x0229A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EA1[] = { {"Proportion", 10, 0x02237, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EA2[] = { {"subseteqq", 9, 0x02AC5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EA4[] = { {"nGtv", 4, 0x0226B, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EA8[] = { {"macr", 4, 0x000AF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EA9[] = { {"orslope", 7, 0x02A57, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EB1[] = { {"frown", 5, 0x02322, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EB2[] = { {"Iota", 4, 0x00399, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EB4[] = { {"rceil", 5, 0x02309, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EB7[] = { {"spadesuit", 9, 0x02660, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EB8[] = { {"sstarf", 6, 0x022C6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ECA[] = { {"icy", 3, 0x00438, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ECD[] = { {"ast", 3, 0x0002A, 0}, {"nmid", 4, 0x02224, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ECF[] = { {"bowtie", 6, 0x022C8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ED1[] = { {"thetav", 6, 0x003D1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ED7[] = { {"vangrt", 6, 0x0299C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ED8[] = { {"numsp", 5, 0x02007, 0}, {"triplus", 7, 0x02A39, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_ED9[] = { {"lscr", 4, 0x1D4C1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EDA[] = { {"pointint", 8, 0x02A15, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EDB[] = { {"Theta", 5, 0x00398, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EDF[] = { {"rightrightarrows", 16, 0x021C9, 0}, {"uopf", 4, 0x1D566, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EE2[] = { {"ell", 3, 0x02113, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EE4[] = { {"cuepr", 5, 0x022DE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EE5[] = { {"NotVerticalBar", 14, 0x02224, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EE7[] = { {"xnis", 4, 0x022FB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EE9[] = { {"els", 3, 0x02A95, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EEF[] = { {"DDotrahd", 8, 0x02911, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EF1[] = { {"larrbfs", 7, 0x0291F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EF2[] = { {"Rsh", 3, 0x021B1, 0}, {"boxplus", 7, 0x0229E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EF4[] = { {"swarr", 5, 0x02199, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EF5[] = { {"gvnE", 4, 0x02269, 0x0FE00}, {"xfr", 3, 0x1D535, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EF9[] = { {"ldca", 4, 0x02936, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EFB[] = { {"NotPrecedesSlantEqual", 21, 0x022E0, 0}, {"YAcy", 4, 0x0042F, 0}, {"Zcy", 3, 0x00417, 0}, {"andslope", 8, 0x02A58, 0}, {"numero", 6, 0x02116, 0}, {"theta", 5, 0x003B8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EFE[] = { {"mapstoup", 8, 0x021A5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_EFF[] = { {"bigcup", 6, 0x022C3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F03[] = { {"nesear", 6, 0x02928, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F05[] = { {"lesssim", 7, 0x02272, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F08[] = { {"DownArrow", 9, 0x02193, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F0B[] = { {"orarr", 5, 0x021BB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F0F[] = { {"ccaps", 5, 0x02A4D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F10[] = { {"xdtri", 5, 0x025BD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F11[] = { {"xcap", 4, 0x022C2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F13[] = { {"downdownarrows", 14, 0x021CA, 0}, {"nisd", 4, 0x022FA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F14[] = { {"VerticalBar", 11, 0x02223, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F15[] = { {"TRADE", 5, 0x02122, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F17[] = { {"Omacr", 5, 0x0014C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F18[] = { {"top", 3, 0x022A4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F19[] = { {"LeftRightArrow", 14, 0x02194, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F1A[] = { {"Mscr", 4, 0x02133, 0}, {"iff", 3, 0x021D4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F1F[] = { {"downharpoonleft", 15, 0x021C3, 0}, {"eng", 3, 0x0014B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F20[] = { {"Vopf", 4, 0x1D54D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F26[] = { {"ifr", 3, 0x1D526, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F28[] = { {"Downarrow", 9, 0x021D3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F2C[] = { {"Kcy", 3, 0x0041A, 0}, {"angle", 5, 0x02220, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F2F[] = { {"lescc", 5, 0x02AA8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F30[] = { {"lesseqqgtr", 10, 0x02A8B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F31[] = { {"bigstar", 7, 0x02605, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F33[] = { {"ddagger", 7, 0x02021, 0}, {"nltrie", 6, 0x022EC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F37[] = { {"omacr", 5, 0x0014D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F38[] = { {"cuesc", 5, 0x022DF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F40[] = { {"circlearrowright", 16, 0x021BB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F41[] = { {"ngeqq", 5, 0x02267, 0x00338}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F44[] = { {"squf", 4, 0x025AA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F46[] = { {"rtri", 4, 0x025B9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F47[] = { {"VerticalLine", 12, 0x0007C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F48[] = { {"downarrow", 9, 0x02193, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F4B[] = { {"Scaron", 6, 0x00160, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F4C[] = { {"tstrok", 6, 0x00167, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F50[] = { {"wreath", 6, 0x02240, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F51[] = { {"exponentiale", 12, 0x02147, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F55[] = { {"Idot", 4, 0x00130, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F57[] = { {"Zfr", 3, 0x02128, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F58[] = { {"bnot", 4, 0x02310, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F5B[] = { {"infintie", 8, 0x029DD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F5D[] = { {"angrtvbd", 8, 0x0299D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F5F[] = { {"prurel", 6, 0x022B0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F60[] = { {"gbreve", 6, 0x0011F, 0}, {"rsaquo", 6, 0x0203A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F62[] = { {"sung", 4, 0x0266A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F67[] = { {"lvertneqq", 9, 0x02268, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F68[] = { {"lnsim", 5, 0x022E6, 0}, {"searrow", 7, 0x02198, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F69[] = { {"nsubset", 7, 0x02282, 0x020D2}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F6D[] = { {"Cup", 3, 0x022D3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F6E[] = { {"Lmidot", 6, 0x0013F, 0}, {"sup1", 4, 0x000B9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F6F[] = { {"Delta", 5, 0x00394, 0}, {"sbquo", 5, 0x0201A, 0}, {"sup2", 4, 0x000B2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F70[] = { {"cscr", 4, 0x1D4B8, 0}, {"nsubseteqq", 10, 0x02AC5, 0x00338}, {"sup3", 4, 0x000B3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F71[] = { {"Kcedil", 6, 0x00136, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F72[] = { {"plussim", 7, 0x02A26, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F74[] = { {"KHcy", 4, 0x00425, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F75[] = { {"OElig", 5, 0x00152, 0}, {"simdot", 6, 0x02A6A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F76[] = { {"lopf", 4, 0x1D55D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F77[] = { {"boxbox", 6, 0x029C9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F78[] = { {"bepsi", 5, 0x003F6, 0}, {"lbarr", 5, 0x0290C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F79[] = { {"lnapprox", 8, 0x02A89, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F81[] = { {"sdotb", 5, 0x022A1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F82[] = { {"measuredangle", 13, 0x02221, 0}, {"supE", 4, 0x02AC6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F83[] = { {"map", 3, 0x021A6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F84[] = { {"sdote", 5, 0x02A66, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F86[] = { {"diamondsuit", 11, 0x02666, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F88[] = { {"Kfr", 3, 0x1D50E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F8B[] = { {"imagline", 8, 0x02110, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F8F[] = { {"delta", 5, 0x003B4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F91[] = { {"mapstodown", 10, 0x021A7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F93[] = { {"eqvparsl", 8, 0x029E5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F95[] = { {"UpArrow", 7, 0x02191, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F9A[] = { {"imagpart", 8, 0x02111, 0}, {"lsim", 4, 0x02272, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F9C[] = { {"trianglelefteq", 14, 0x022B4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_F9F[] = { {"isindot", 7, 0x022F5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FA0[] = { {"LeftUpDownVector", 16, 0x02951, 0}, {"curvearrowleft", 14, 0x021B6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FA1[] = { {"Diamond", 7, 0x022C4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FA2[] = { {"supe", 4, 0x02287, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FA3[] = { {"nearrow", 7, 0x02197, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FA9[] = { {"easter", 6, 0x02A6E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FB0[] = { {"rdquo", 5, 0x0201D, 0}, {"subsetneqq", 10, 0x02ACB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FB1[] = { {"Dscr", 4, 0x1D49F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FB4[] = { {"comp", 4, 0x02201, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FB5[] = { {"Uparrow", 7, 0x021D1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FB6[] = { {"coloneq", 7, 0x02254, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FB7[] = { {"Mopf", 4, 0x1D544, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FB9[] = { {"rfloor", 6, 0x0230B, 0}, {"varsubsetneqq", 13, 0x02ACB, 0x0FE00}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FBC[] = { {"eacute", 6, 0x000E9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FC2[] = { {"shortparallel", 13, 0x02225, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FC4[] = { {"male", 4, 0x02642, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FC6[] = { {"yscr", 4, 0x1D4CE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FCA[] = { {"xharr", 5, 0x027F7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FCC[] = { {"cong", 4, 0x02245, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FCE[] = { {"mcy", 3, 0x0043C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FCF[] = { {"Upsilon", 7, 0x003A5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FD0[] = { {"block", 5, 0x02588, 0}, {"maltese", 7, 0x02720, 0}, {"ordf", 4, 0x000AA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FD2[] = { {"zcaron", 6, 0x0017E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FD3[] = { {"malt", 4, 0x02720, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FD6[] = { {"loang", 5, 0x027EC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FD7[] = { {"ordm", 4, 0x000BA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FDD[] = { {"NegativeVeryThinSpace", 21, 0x0200B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FDF[] = { {"eta", 3, 0x003B7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FE1[] = { {"Iogon", 5, 0x0012E, 0}, {"drbkarow", 8, 0x02910, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FE6[] = { {"eth", 3, 0x000F0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FE9[] = { {"racute", 6, 0x00155, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FEA[] = { {"cwconint", 8, 0x02232, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FEB[] = { {"egsdot", 6, 0x02A98, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FF5[] = { {"MinusPlus", 9, 0x02213, 0}, {"ring", 4, 0x002DA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FF8[] = { {"rcedil", 6, 0x00157, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FFC[] = { {"timesbar", 8, 0x02A31, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html5_FFE[] = { {"GreaterEqualLess", 16, 0x022DB, 0}, {NULL, 0, 0, 0} }; - -static const entity_cp_map *const ht_buckets_html5[] = { - ht_bucket_html5_000, ht_bucket_html5_001, ht_bucket_empty, ht_bucket_html5_003, - ht_bucket_empty, ht_bucket_html5_005, ht_bucket_empty, ht_bucket_html5_007, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_00D, ht_bucket_empty, ht_bucket_html5_00F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_017, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_020, ht_bucket_empty, ht_bucket_html5_022, ht_bucket_empty, - ht_bucket_html5_024, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_027, - ht_bucket_html5_028, ht_bucket_html5_029, ht_bucket_html5_02A, ht_bucket_html5_02B, - ht_bucket_html5_02C, ht_bucket_empty, ht_bucket_html5_02E, ht_bucket_empty, - ht_bucket_html5_030, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_034, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_038, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_040, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_047, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_04C, ht_bucket_empty, ht_bucket_html5_04E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_051, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_059, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_05D, ht_bucket_empty, ht_bucket_html5_05F, - ht_bucket_html5_060, ht_bucket_html5_061, ht_bucket_empty, ht_bucket_html5_063, - ht_bucket_html5_064, ht_bucket_html5_065, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_069, ht_bucket_html5_06A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_06D, ht_bucket_html5_06E, ht_bucket_html5_06F, - ht_bucket_empty, ht_bucket_html5_071, ht_bucket_empty, ht_bucket_html5_073, - ht_bucket_html5_074, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_07A, ht_bucket_html5_07B, - ht_bucket_html5_07C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_07F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_082, ht_bucket_empty, - ht_bucket_html5_084, ht_bucket_html5_085, ht_bucket_html5_086, ht_bucket_empty, - ht_bucket_html5_088, ht_bucket_html5_089, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_08C, ht_bucket_empty, ht_bucket_html5_08E, ht_bucket_empty, - ht_bucket_html5_090, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_094, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_097, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_09E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_0A4, ht_bucket_empty, ht_bucket_html5_0A6, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_0AB, - ht_bucket_html5_0AC, ht_bucket_html5_0AD, ht_bucket_html5_0AE, ht_bucket_html5_0AF, - ht_bucket_html5_0B0, ht_bucket_empty, ht_bucket_html5_0B2, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_0B8, ht_bucket_html5_0B9, ht_bucket_html5_0BA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_0C0, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_0C4, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_0CE, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_0D1, ht_bucket_html5_0D2, ht_bucket_html5_0D3, - ht_bucket_empty, ht_bucket_html5_0D5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_0DF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_0E5, ht_bucket_html5_0E6, ht_bucket_empty, - ht_bucket_html5_0E8, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_0EC, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_0EF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_0F3, - ht_bucket_html5_0F4, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_0FA, ht_bucket_html5_0FB, - ht_bucket_empty, ht_bucket_html5_0FD, ht_bucket_html5_0FE, ht_bucket_empty, - ht_bucket_html5_100, ht_bucket_html5_101, ht_bucket_empty, ht_bucket_html5_103, - ht_bucket_empty, ht_bucket_html5_105, ht_bucket_html5_106, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_109, ht_bucket_html5_10A, ht_bucket_html5_10B, - ht_bucket_empty, ht_bucket_html5_10D, ht_bucket_html5_10E, ht_bucket_html5_10F, - ht_bucket_html5_110, ht_bucket_html5_111, ht_bucket_empty, ht_bucket_html5_113, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_116, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_11B, - ht_bucket_html5_11C, ht_bucket_empty, ht_bucket_html5_11E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_121, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_124, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_129, ht_bucket_html5_12A, ht_bucket_empty, - ht_bucket_html5_12C, ht_bucket_empty, ht_bucket_html5_12E, ht_bucket_html5_12F, - ht_bucket_html5_130, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_134, ht_bucket_html5_135, ht_bucket_empty, ht_bucket_html5_137, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_13A, ht_bucket_html5_13B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_145, ht_bucket_empty, ht_bucket_html5_147, - ht_bucket_empty, ht_bucket_html5_149, ht_bucket_empty, ht_bucket_html5_14B, - ht_bucket_html5_14C, ht_bucket_empty, ht_bucket_html5_14E, ht_bucket_html5_14F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_158, ht_bucket_html5_159, ht_bucket_empty, ht_bucket_html5_15B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_15E, ht_bucket_html5_15F, - ht_bucket_empty, ht_bucket_html5_161, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_164, ht_bucket_html5_165, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_168, ht_bucket_empty, ht_bucket_html5_16A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_170, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_173, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_17A, ht_bucket_html5_17B, - ht_bucket_html5_17C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_17F, - ht_bucket_empty, ht_bucket_html5_181, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_189, ht_bucket_empty, ht_bucket_html5_18B, - ht_bucket_html5_18C, ht_bucket_empty, ht_bucket_html5_18E, ht_bucket_html5_18F, - ht_bucket_html5_190, ht_bucket_html5_191, ht_bucket_empty, ht_bucket_html5_193, - ht_bucket_empty, ht_bucket_html5_195, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_19A, ht_bucket_empty, - ht_bucket_html5_19C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_19F, - ht_bucket_html5_1A0, ht_bucket_html5_1A1, ht_bucket_html5_1A2, ht_bucket_html5_1A3, - ht_bucket_html5_1A4, ht_bucket_html5_1A5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_1A8, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_1AB, - ht_bucket_html5_1AC, ht_bucket_html5_1AD, ht_bucket_html5_1AE, ht_bucket_html5_1AF, - ht_bucket_html5_1B0, ht_bucket_empty, ht_bucket_html5_1B2, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_1B5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_1B9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_1BD, ht_bucket_html5_1BE, ht_bucket_empty, - ht_bucket_html5_1C0, ht_bucket_html5_1C1, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_1C4, ht_bucket_empty, ht_bucket_html5_1C6, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_1C9, ht_bucket_html5_1CA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_1CD, ht_bucket_html5_1CE, ht_bucket_empty, - ht_bucket_html5_1D0, ht_bucket_html5_1D1, ht_bucket_html5_1D2, ht_bucket_empty, - ht_bucket_html5_1D4, ht_bucket_html5_1D5, ht_bucket_html5_1D6, ht_bucket_empty, - ht_bucket_html5_1D8, ht_bucket_html5_1D9, ht_bucket_html5_1DA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_1DF, - ht_bucket_html5_1E0, ht_bucket_html5_1E1, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_1E5, ht_bucket_html5_1E6, ht_bucket_html5_1E7, - ht_bucket_html5_1E8, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_1EB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_1EF, - ht_bucket_html5_1F0, ht_bucket_empty, ht_bucket_html5_1F2, ht_bucket_empty, - ht_bucket_html5_1F4, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_1F8, ht_bucket_html5_1F9, ht_bucket_html5_1FA, ht_bucket_empty, - ht_bucket_html5_1FC, ht_bucket_empty, ht_bucket_html5_1FE, ht_bucket_html5_1FF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_205, ht_bucket_empty, ht_bucket_html5_207, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_20E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_212, ht_bucket_html5_213, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_219, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_21D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_220, ht_bucket_empty, ht_bucket_html5_222, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_227, - ht_bucket_empty, ht_bucket_html5_229, ht_bucket_empty, ht_bucket_html5_22B, - ht_bucket_html5_22C, ht_bucket_html5_22D, ht_bucket_empty, ht_bucket_html5_22F, - ht_bucket_html5_230, ht_bucket_empty, ht_bucket_html5_232, ht_bucket_empty, - ht_bucket_html5_234, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_239, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_23C, ht_bucket_html5_23D, ht_bucket_html5_23E, ht_bucket_empty, - ht_bucket_html5_240, ht_bucket_html5_241, ht_bucket_html5_242, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_246, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_249, ht_bucket_html5_24A, ht_bucket_html5_24B, - ht_bucket_empty, ht_bucket_html5_24D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_251, ht_bucket_html5_252, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_257, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_25A, ht_bucket_html5_25B, - ht_bucket_html5_25C, ht_bucket_html5_25D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_263, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_26A, ht_bucket_html5_26B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_26E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_274, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_277, - ht_bucket_html5_278, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_27C, ht_bucket_empty, ht_bucket_html5_27E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_283, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_28A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_294, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_297, - ht_bucket_html5_298, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_29D, ht_bucket_empty, ht_bucket_html5_29F, - ht_bucket_html5_2A0, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_2A9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_2AE, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_2B1, ht_bucket_html5_2B2, ht_bucket_html5_2B3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_2B9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_2BF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_2C4, ht_bucket_html5_2C5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_2CE, ht_bucket_html5_2CF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_2D3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_2DA, ht_bucket_html5_2DB, - ht_bucket_html5_2DC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_2E3, - ht_bucket_html5_2E4, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_2EB, - ht_bucket_html5_2EC, ht_bucket_empty, ht_bucket_html5_2EE, ht_bucket_empty, - ht_bucket_html5_2F0, ht_bucket_empty, ht_bucket_html5_2F2, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_2F8, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_300, ht_bucket_html5_301, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_304, ht_bucket_html5_305, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_308, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_30B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_30F, - ht_bucket_empty, ht_bucket_html5_311, ht_bucket_empty, ht_bucket_html5_313, - ht_bucket_empty, ht_bucket_html5_315, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_319, ht_bucket_html5_31A, ht_bucket_html5_31B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_326, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_329, ht_bucket_html5_32A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_32D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_330, ht_bucket_html5_331, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_336, ht_bucket_empty, - ht_bucket_html5_338, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_33B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_33F, - ht_bucket_html5_340, ht_bucket_html5_341, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_347, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_34D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_350, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_356, ht_bucket_empty, - ht_bucket_html5_358, ht_bucket_html5_359, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_35D, ht_bucket_empty, ht_bucket_html5_35F, - ht_bucket_empty, ht_bucket_html5_361, ht_bucket_empty, ht_bucket_html5_363, - ht_bucket_empty, ht_bucket_html5_365, ht_bucket_empty, ht_bucket_html5_367, - ht_bucket_empty, ht_bucket_html5_369, ht_bucket_html5_36A, ht_bucket_html5_36B, - ht_bucket_empty, ht_bucket_html5_36D, ht_bucket_html5_36E, ht_bucket_html5_36F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_372, ht_bucket_empty, - ht_bucket_html5_374, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_378, ht_bucket_empty, ht_bucket_html5_37A, ht_bucket_empty, - ht_bucket_html5_37C, ht_bucket_html5_37D, ht_bucket_html5_37E, ht_bucket_html5_37F, - ht_bucket_html5_380, ht_bucket_empty, ht_bucket_html5_382, ht_bucket_html5_383, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_386, ht_bucket_html5_387, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_38A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_38D, ht_bucket_html5_38E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_391, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_394, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_397, - ht_bucket_html5_398, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_39C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_39F, - ht_bucket_html5_3A0, ht_bucket_html5_3A1, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_3A4, ht_bucket_html5_3A5, ht_bucket_html5_3A6, ht_bucket_html5_3A7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_3AC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_3B2, ht_bucket_empty, - ht_bucket_html5_3B4, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_3BF, - ht_bucket_html5_3C0, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_3C4, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_3C9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_3CD, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_3D0, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_3D3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_3D9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_3DE, ht_bucket_empty, - ht_bucket_html5_3E0, ht_bucket_html5_3E1, ht_bucket_empty, ht_bucket_html5_3E3, - ht_bucket_html5_3E4, ht_bucket_empty, ht_bucket_html5_3E6, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_3E9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_3ED, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_3F1, ht_bucket_html5_3F2, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_3F7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_3FC, ht_bucket_empty, ht_bucket_html5_3FE, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_402, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_405, ht_bucket_empty, ht_bucket_html5_407, - ht_bucket_empty, ht_bucket_html5_409, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_40E, ht_bucket_html5_40F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_413, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_41A, ht_bucket_html5_41B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_421, ht_bucket_empty, ht_bucket_html5_423, - ht_bucket_html5_424, ht_bucket_html5_425, ht_bucket_html5_426, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_429, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_42C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_42F, - ht_bucket_html5_430, ht_bucket_empty, ht_bucket_html5_432, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_436, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_439, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_43C, ht_bucket_html5_43D, ht_bucket_html5_43E, ht_bucket_html5_43F, - ht_bucket_html5_440, ht_bucket_html5_441, ht_bucket_empty, ht_bucket_html5_443, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_446, ht_bucket_html5_447, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_44A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_44F, - ht_bucket_html5_450, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_454, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_457, - ht_bucket_html5_458, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_45D, ht_bucket_empty, ht_bucket_html5_45F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_465, ht_bucket_html5_466, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_469, ht_bucket_html5_46A, ht_bucket_html5_46B, - ht_bucket_empty, ht_bucket_html5_46D, ht_bucket_empty, ht_bucket_html5_46F, - ht_bucket_html5_470, ht_bucket_html5_471, ht_bucket_html5_472, ht_bucket_html5_473, - ht_bucket_empty, ht_bucket_html5_475, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_479, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_47C, ht_bucket_html5_47D, ht_bucket_empty, ht_bucket_html5_47F, - ht_bucket_html5_480, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_485, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_488, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_48C, ht_bucket_empty, ht_bucket_html5_48E, ht_bucket_html5_48F, - ht_bucket_html5_490, ht_bucket_html5_491, ht_bucket_empty, ht_bucket_html5_493, - ht_bucket_empty, ht_bucket_html5_495, ht_bucket_html5_496, ht_bucket_empty, - ht_bucket_html5_498, ht_bucket_html5_499, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_49F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_4A2, ht_bucket_empty, - ht_bucket_html5_4A4, ht_bucket_empty, ht_bucket_html5_4A6, ht_bucket_html5_4A7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_4AA, ht_bucket_html5_4AB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_4AE, ht_bucket_html5_4AF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_4B2, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_4B6, ht_bucket_empty, - ht_bucket_html5_4B8, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_4BC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_4C0, ht_bucket_empty, ht_bucket_html5_4C2, ht_bucket_html5_4C3, - ht_bucket_html5_4C4, ht_bucket_html5_4C5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_4C8, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_4CB, - ht_bucket_empty, ht_bucket_html5_4CD, ht_bucket_empty, ht_bucket_html5_4CF, - ht_bucket_html5_4D0, ht_bucket_empty, ht_bucket_html5_4D2, ht_bucket_html5_4D3, - ht_bucket_html5_4D4, ht_bucket_html5_4D5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_4D8, ht_bucket_empty, ht_bucket_html5_4DA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_4DE, ht_bucket_html5_4DF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_4E3, - ht_bucket_html5_4E4, ht_bucket_empty, ht_bucket_html5_4E6, ht_bucket_html5_4E7, - ht_bucket_html5_4E8, ht_bucket_html5_4E9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_4ED, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_4F1, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_4F7, - ht_bucket_empty, ht_bucket_html5_4F9, ht_bucket_empty, ht_bucket_html5_4FB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_4FE, ht_bucket_empty, - ht_bucket_html5_500, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_504, ht_bucket_empty, ht_bucket_html5_506, ht_bucket_html5_507, - ht_bucket_empty, ht_bucket_html5_509, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_50E, ht_bucket_html5_50F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_513, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_516, ht_bucket_empty, - ht_bucket_html5_518, ht_bucket_html5_519, ht_bucket_empty, ht_bucket_html5_51B, - ht_bucket_html5_51C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_524, ht_bucket_html5_525, ht_bucket_html5_526, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_52F, - ht_bucket_html5_530, ht_bucket_empty, ht_bucket_html5_532, ht_bucket_html5_533, - ht_bucket_html5_534, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_53B, - ht_bucket_html5_53C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_53F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_542, ht_bucket_html5_543, - ht_bucket_empty, ht_bucket_html5_545, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_548, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_54F, - ht_bucket_html5_550, ht_bucket_html5_551, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_557, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_55B, - ht_bucket_empty, ht_bucket_html5_55D, ht_bucket_empty, ht_bucket_html5_55F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_564, ht_bucket_html5_565, ht_bucket_html5_566, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_56C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_56F, - ht_bucket_html5_570, ht_bucket_html5_571, ht_bucket_html5_572, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_575, ht_bucket_html5_576, ht_bucket_html5_577, - ht_bucket_html5_578, ht_bucket_empty, ht_bucket_html5_57A, ht_bucket_html5_57B, - ht_bucket_html5_57C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_580, ht_bucket_empty, ht_bucket_html5_582, ht_bucket_html5_583, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_586, ht_bucket_empty, - ht_bucket_html5_588, ht_bucket_html5_589, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_58D, ht_bucket_html5_58E, ht_bucket_html5_58F, - ht_bucket_html5_590, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_595, ht_bucket_html5_596, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_59A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_59D, ht_bucket_empty, ht_bucket_html5_59F, - ht_bucket_html5_5A0, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_5A3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_5A6, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_5A9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_5AC, ht_bucket_html5_5AD, ht_bucket_html5_5AE, ht_bucket_empty, - ht_bucket_html5_5B0, ht_bucket_html5_5B1, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_5B5, ht_bucket_html5_5B6, ht_bucket_html5_5B7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_5BB, - ht_bucket_html5_5BC, ht_bucket_html5_5BD, ht_bucket_empty, ht_bucket_html5_5BF, - ht_bucket_html5_5C0, ht_bucket_html5_5C1, ht_bucket_html5_5C2, ht_bucket_empty, - ht_bucket_html5_5C4, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_5D0, ht_bucket_html5_5D1, ht_bucket_empty, ht_bucket_html5_5D3, - ht_bucket_empty, ht_bucket_html5_5D5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_5D8, ht_bucket_html5_5D9, ht_bucket_empty, ht_bucket_html5_5DB, - ht_bucket_empty, ht_bucket_html5_5DD, ht_bucket_empty, ht_bucket_html5_5DF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_5E2, ht_bucket_empty, - ht_bucket_html5_5E4, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_5E7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_5EA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_5ED, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_5F0, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_5F3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_5F6, ht_bucket_empty, - ht_bucket_html5_5F8, ht_bucket_empty, ht_bucket_html5_5FA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_5FD, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_601, ht_bucket_html5_602, ht_bucket_html5_603, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_606, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_609, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_60D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_613, - ht_bucket_empty, ht_bucket_html5_615, ht_bucket_empty, ht_bucket_html5_617, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_61A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_61D, ht_bucket_empty, ht_bucket_html5_61F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_622, ht_bucket_empty, - ht_bucket_html5_624, ht_bucket_empty, ht_bucket_html5_626, ht_bucket_empty, - ht_bucket_html5_628, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_62C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_630, ht_bucket_empty, ht_bucket_html5_632, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_636, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_63A, ht_bucket_empty, - ht_bucket_html5_63C, ht_bucket_html5_63D, ht_bucket_html5_63E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_641, ht_bucket_html5_642, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_645, ht_bucket_html5_646, ht_bucket_html5_647, - ht_bucket_html5_648, ht_bucket_html5_649, ht_bucket_html5_64A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_651, ht_bucket_html5_652, ht_bucket_html5_653, - ht_bucket_empty, ht_bucket_html5_655, ht_bucket_empty, ht_bucket_html5_657, - ht_bucket_html5_658, ht_bucket_html5_659, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_65C, ht_bucket_empty, ht_bucket_html5_65E, ht_bucket_empty, - ht_bucket_html5_660, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_669, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_670, ht_bucket_html5_671, ht_bucket_html5_672, ht_bucket_html5_673, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_676, ht_bucket_empty, - ht_bucket_html5_678, ht_bucket_html5_679, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_67D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_680, ht_bucket_empty, ht_bucket_html5_682, ht_bucket_empty, - ht_bucket_html5_684, ht_bucket_html5_685, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_68A, ht_bucket_empty, - ht_bucket_html5_68C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_691, ht_bucket_empty, ht_bucket_html5_693, - ht_bucket_html5_694, ht_bucket_empty, ht_bucket_html5_696, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_699, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_6A3, - ht_bucket_html5_6A4, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_6A8, ht_bucket_html5_6A9, ht_bucket_html5_6AA, ht_bucket_html5_6AB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_6AE, ht_bucket_empty, - ht_bucket_html5_6B0, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_6B4, ht_bucket_empty, ht_bucket_html5_6B6, ht_bucket_empty, - ht_bucket_html5_6B8, ht_bucket_html5_6B9, ht_bucket_html5_6BA, ht_bucket_empty, - ht_bucket_html5_6BC, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_6BF, - ht_bucket_html5_6C0, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_6C4, ht_bucket_html5_6C5, ht_bucket_html5_6C6, ht_bucket_html5_6C7, - ht_bucket_html5_6C8, ht_bucket_html5_6C9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_6CC, ht_bucket_empty, ht_bucket_html5_6CE, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_6D1, ht_bucket_html5_6D2, ht_bucket_empty, - ht_bucket_html5_6D4, ht_bucket_html5_6D5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_6D9, ht_bucket_html5_6DA, ht_bucket_html5_6DB, - ht_bucket_html5_6DC, ht_bucket_empty, ht_bucket_html5_6DE, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_6E7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_6EB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_6EE, ht_bucket_html5_6EF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_6F5, ht_bucket_empty, ht_bucket_html5_6F7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_6FB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_704, ht_bucket_html5_705, ht_bucket_html5_706, ht_bucket_html5_707, - ht_bucket_empty, ht_bucket_html5_709, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_70C, ht_bucket_empty, ht_bucket_html5_70E, ht_bucket_html5_70F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_712, ht_bucket_empty, - ht_bucket_html5_714, ht_bucket_html5_715, ht_bucket_empty, ht_bucket_html5_717, - ht_bucket_empty, ht_bucket_html5_719, ht_bucket_empty, ht_bucket_html5_71B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_71E, ht_bucket_html5_71F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_723, - ht_bucket_html5_724, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_727, - ht_bucket_empty, ht_bucket_html5_729, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_72C, ht_bucket_html5_72D, ht_bucket_html5_72E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_733, - ht_bucket_html5_734, ht_bucket_html5_735, ht_bucket_html5_736, ht_bucket_empty, - ht_bucket_html5_738, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_73B, - ht_bucket_empty, ht_bucket_html5_73D, ht_bucket_html5_73E, ht_bucket_html5_73F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_744, ht_bucket_html5_745, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_749, ht_bucket_empty, ht_bucket_html5_74B, - ht_bucket_html5_74C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_74F, - ht_bucket_empty, ht_bucket_html5_751, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_754, ht_bucket_html5_755, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_759, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_75C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_75F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_762, ht_bucket_html5_763, - ht_bucket_empty, ht_bucket_html5_765, ht_bucket_html5_766, ht_bucket_empty, - ht_bucket_html5_768, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_76E, ht_bucket_empty, - ht_bucket_html5_770, ht_bucket_empty, ht_bucket_html5_772, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_776, ht_bucket_html5_777, - ht_bucket_empty, ht_bucket_html5_779, ht_bucket_html5_77A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_77F, - ht_bucket_empty, ht_bucket_html5_781, ht_bucket_empty, ht_bucket_html5_783, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_787, - ht_bucket_empty, ht_bucket_html5_789, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_78C, ht_bucket_html5_78D, ht_bucket_html5_78E, ht_bucket_empty, - ht_bucket_html5_790, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_794, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_797, - ht_bucket_html5_798, ht_bucket_empty, ht_bucket_html5_79A, ht_bucket_html5_79B, - ht_bucket_empty, ht_bucket_html5_79D, ht_bucket_empty, ht_bucket_html5_79F, - ht_bucket_html5_7A0, ht_bucket_html5_7A1, ht_bucket_html5_7A2, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_7A5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_7A8, ht_bucket_empty, ht_bucket_html5_7AA, ht_bucket_html5_7AB, - ht_bucket_html5_7AC, ht_bucket_empty, ht_bucket_html5_7AE, ht_bucket_html5_7AF, - ht_bucket_html5_7B0, ht_bucket_html5_7B1, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_7B5, ht_bucket_html5_7B6, ht_bucket_html5_7B7, - ht_bucket_html5_7B8, ht_bucket_empty, ht_bucket_html5_7BA, ht_bucket_html5_7BB, - ht_bucket_empty, ht_bucket_html5_7BD, ht_bucket_html5_7BE, ht_bucket_html5_7BF, - ht_bucket_html5_7C0, ht_bucket_html5_7C1, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_7C9, ht_bucket_empty, ht_bucket_html5_7CB, - ht_bucket_empty, ht_bucket_html5_7CD, ht_bucket_html5_7CE, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_7D1, ht_bucket_html5_7D2, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_7D5, ht_bucket_html5_7D6, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_7D9, ht_bucket_html5_7DA, ht_bucket_empty, - ht_bucket_html5_7DC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_7E0, ht_bucket_empty, ht_bucket_html5_7E2, ht_bucket_empty, - ht_bucket_html5_7E4, ht_bucket_html5_7E5, ht_bucket_html5_7E6, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_7EC, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_7EF, - ht_bucket_empty, ht_bucket_html5_7F1, ht_bucket_empty, ht_bucket_html5_7F3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_7F6, ht_bucket_empty, - ht_bucket_html5_7F8, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_7FB, - ht_bucket_html5_7FC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_800, ht_bucket_empty, ht_bucket_html5_802, ht_bucket_html5_803, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_808, ht_bucket_html5_809, ht_bucket_html5_80A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_810, ht_bucket_html5_811, ht_bucket_html5_812, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_816, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_819, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_81C, ht_bucket_html5_81D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_821, ht_bucket_html5_822, ht_bucket_html5_823, - ht_bucket_html5_824, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_828, ht_bucket_html5_829, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_82D, ht_bucket_html5_82E, ht_bucket_empty, - ht_bucket_html5_830, ht_bucket_html5_831, ht_bucket_html5_832, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_837, - ht_bucket_html5_838, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_83C, ht_bucket_empty, ht_bucket_html5_83E, ht_bucket_html5_83F, - ht_bucket_empty, ht_bucket_html5_841, ht_bucket_html5_842, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_846, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_84A, ht_bucket_empty, - ht_bucket_html5_84C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_84F, - ht_bucket_html5_850, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_855, ht_bucket_empty, ht_bucket_html5_857, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_85B, - ht_bucket_html5_85C, ht_bucket_empty, ht_bucket_html5_85E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_861, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_865, ht_bucket_html5_866, ht_bucket_html5_867, - ht_bucket_html5_868, ht_bucket_empty, ht_bucket_html5_86A, ht_bucket_html5_86B, - ht_bucket_html5_86C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_873, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_876, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_879, ht_bucket_empty, ht_bucket_html5_87B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_87E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_88A, ht_bucket_empty, - ht_bucket_html5_88C, ht_bucket_empty, ht_bucket_html5_88E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_892, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_895, ht_bucket_html5_896, ht_bucket_html5_897, - ht_bucket_html5_898, ht_bucket_html5_899, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_89D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_8A5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_8AC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_8B3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_8B6, ht_bucket_html5_8B7, - ht_bucket_html5_8B8, ht_bucket_html5_8B9, ht_bucket_html5_8BA, ht_bucket_empty, - ht_bucket_html5_8BC, ht_bucket_html5_8BD, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_8C0, ht_bucket_html5_8C1, ht_bucket_html5_8C2, ht_bucket_empty, - ht_bucket_html5_8C4, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_8C7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_8CF, - ht_bucket_html5_8D0, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_8D3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_8D6, ht_bucket_empty, - ht_bucket_html5_8D8, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_8DC, ht_bucket_html5_8DD, ht_bucket_html5_8DE, ht_bucket_html5_8DF, - ht_bucket_html5_8E0, ht_bucket_empty, ht_bucket_html5_8E2, ht_bucket_html5_8E3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_8E7, - ht_bucket_html5_8E8, ht_bucket_html5_8E9, ht_bucket_empty, ht_bucket_html5_8EB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_8F3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_8FB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_8FE, ht_bucket_html5_8FF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_904, ht_bucket_empty, ht_bucket_html5_906, ht_bucket_html5_907, - ht_bucket_empty, ht_bucket_html5_909, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_90C, ht_bucket_empty, ht_bucket_html5_90E, ht_bucket_empty, - ht_bucket_html5_910, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_913, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_916, ht_bucket_empty, - ht_bucket_html5_918, ht_bucket_html5_919, ht_bucket_empty, ht_bucket_html5_91B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_91E, ht_bucket_html5_91F, - ht_bucket_html5_920, ht_bucket_empty, ht_bucket_html5_922, ht_bucket_html5_923, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_927, - ht_bucket_empty, ht_bucket_html5_929, ht_bucket_html5_92A, ht_bucket_empty, - ht_bucket_html5_92C, ht_bucket_empty, ht_bucket_html5_92E, ht_bucket_empty, - ht_bucket_html5_930, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_936, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_939, ht_bucket_empty, ht_bucket_html5_93B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_93F, - ht_bucket_html5_940, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_945, ht_bucket_empty, ht_bucket_html5_947, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_94D, ht_bucket_empty, ht_bucket_html5_94F, - ht_bucket_html5_950, ht_bucket_empty, ht_bucket_html5_952, ht_bucket_html5_953, - ht_bucket_html5_954, ht_bucket_html5_955, ht_bucket_html5_956, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_959, ht_bucket_empty, ht_bucket_html5_95B, - ht_bucket_empty, ht_bucket_html5_95D, ht_bucket_empty, ht_bucket_html5_95F, - ht_bucket_html5_960, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_963, - ht_bucket_html5_964, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_969, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_96C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_96F, - ht_bucket_html5_970, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_974, ht_bucket_html5_975, ht_bucket_html5_976, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_97B, - ht_bucket_html5_97C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_97F, - ht_bucket_empty, ht_bucket_html5_981, ht_bucket_empty, ht_bucket_html5_983, - ht_bucket_empty, ht_bucket_html5_985, ht_bucket_html5_986, ht_bucket_empty, - ht_bucket_html5_988, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_98C, ht_bucket_html5_98D, ht_bucket_empty, ht_bucket_html5_98F, - ht_bucket_html5_990, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_996, ht_bucket_html5_997, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_99B, - ht_bucket_html5_99C, ht_bucket_empty, ht_bucket_html5_99E, ht_bucket_html5_99F, - ht_bucket_html5_9A0, ht_bucket_html5_9A1, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_9A6, ht_bucket_empty, - ht_bucket_html5_9A8, ht_bucket_empty, ht_bucket_html5_9AA, ht_bucket_empty, - ht_bucket_html5_9AC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_9B0, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_9B4, ht_bucket_html5_9B5, ht_bucket_html5_9B6, ht_bucket_html5_9B7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_9BB, - ht_bucket_html5_9BC, ht_bucket_html5_9BD, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_9C1, ht_bucket_html5_9C2, ht_bucket_html5_9C3, - ht_bucket_empty, ht_bucket_html5_9C5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_9C9, ht_bucket_html5_9CA, ht_bucket_empty, - ht_bucket_html5_9CC, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_9CF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_9D5, ht_bucket_html5_9D6, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_9DA, ht_bucket_html5_9DB, - ht_bucket_empty, ht_bucket_html5_9DD, ht_bucket_html5_9DE, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_9E1, ht_bucket_html5_9E2, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_9E5, ht_bucket_empty, ht_bucket_html5_9E7, - ht_bucket_empty, ht_bucket_html5_9E9, ht_bucket_empty, ht_bucket_html5_9EB, - ht_bucket_empty, ht_bucket_html5_9ED, ht_bucket_html5_9EE, ht_bucket_html5_9EF, - ht_bucket_html5_9F0, ht_bucket_html5_9F1, ht_bucket_html5_9F2, ht_bucket_html5_9F3, - ht_bucket_html5_9F4, ht_bucket_html5_9F5, ht_bucket_empty, ht_bucket_html5_9F7, - ht_bucket_empty, ht_bucket_html5_9F9, ht_bucket_html5_9FA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_9FD, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_A01, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_A04, ht_bucket_html5_A05, ht_bucket_html5_A06, ht_bucket_empty, - ht_bucket_html5_A08, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_A0C, ht_bucket_html5_A0D, ht_bucket_html5_A0E, ht_bucket_empty, - ht_bucket_html5_A10, ht_bucket_empty, ht_bucket_html5_A12, ht_bucket_empty, - ht_bucket_html5_A14, ht_bucket_html5_A15, ht_bucket_html5_A16, ht_bucket_html5_A17, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_A21, ht_bucket_empty, ht_bucket_html5_A23, - ht_bucket_html5_A24, ht_bucket_html5_A25, ht_bucket_html5_A26, ht_bucket_empty, - ht_bucket_html5_A28, ht_bucket_empty, ht_bucket_html5_A2A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_A2D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_A30, ht_bucket_empty, ht_bucket_html5_A32, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_A36, ht_bucket_html5_A37, - ht_bucket_empty, ht_bucket_html5_A39, ht_bucket_empty, ht_bucket_html5_A3B, - ht_bucket_html5_A3C, ht_bucket_html5_A3D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_A41, ht_bucket_empty, ht_bucket_html5_A43, - ht_bucket_html5_A44, ht_bucket_html5_A45, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_A48, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_A4F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_A53, - ht_bucket_html5_A54, ht_bucket_empty, ht_bucket_html5_A56, ht_bucket_html5_A57, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_A5A, ht_bucket_html5_A5B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_A61, ht_bucket_html5_A62, ht_bucket_html5_A63, - ht_bucket_html5_A64, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_A69, ht_bucket_html5_A6A, ht_bucket_html5_A6B, - ht_bucket_empty, ht_bucket_html5_A6D, ht_bucket_empty, ht_bucket_html5_A6F, - ht_bucket_html5_A70, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_A76, ht_bucket_empty, - ht_bucket_html5_A78, ht_bucket_empty, ht_bucket_html5_A7A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_A7E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_A81, ht_bucket_html5_A82, ht_bucket_empty, - ht_bucket_html5_A84, ht_bucket_html5_A85, ht_bucket_html5_A86, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_A89, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_A8D, ht_bucket_html5_A8E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_A92, ht_bucket_empty, - ht_bucket_html5_A94, ht_bucket_empty, ht_bucket_html5_A96, ht_bucket_empty, - ht_bucket_html5_A98, ht_bucket_html5_A99, ht_bucket_html5_A9A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_A9D, ht_bucket_empty, ht_bucket_html5_A9F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_AA3, - ht_bucket_html5_AA4, ht_bucket_html5_AA5, ht_bucket_empty, ht_bucket_html5_AA7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_AAC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_AB2, ht_bucket_empty, - ht_bucket_html5_AB4, ht_bucket_html5_AB5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_ABA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_AC0, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_AC4, ht_bucket_html5_AC5, ht_bucket_html5_AC6, ht_bucket_html5_AC7, - ht_bucket_html5_AC8, ht_bucket_empty, ht_bucket_html5_ACA, ht_bucket_empty, - ht_bucket_html5_ACC, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_ACF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_AD2, ht_bucket_html5_AD3, - ht_bucket_html5_AD4, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_ADA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_ADD, ht_bucket_empty, ht_bucket_html5_ADF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_AE4, ht_bucket_html5_AE5, ht_bucket_html5_AE6, ht_bucket_html5_AE7, - ht_bucket_html5_AE8, ht_bucket_html5_AE9, ht_bucket_empty, ht_bucket_html5_AEB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_AF5, ht_bucket_html5_AF6, ht_bucket_html5_AF7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_AFA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_AFD, ht_bucket_html5_AFE, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_B08, ht_bucket_html5_B09, ht_bucket_html5_B0A, ht_bucket_empty, - ht_bucket_html5_B0C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_B10, ht_bucket_html5_B11, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_B15, ht_bucket_html5_B16, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_B1E, ht_bucket_html5_B1F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_B23, - ht_bucket_html5_B24, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_B27, - ht_bucket_empty, ht_bucket_html5_B29, ht_bucket_html5_B2A, ht_bucket_html5_B2B, - ht_bucket_html5_B2C, ht_bucket_html5_B2D, ht_bucket_html5_B2E, ht_bucket_html5_B2F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_B33, - ht_bucket_empty, ht_bucket_html5_B35, ht_bucket_html5_B36, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_B3A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_B3D, ht_bucket_html5_B3E, ht_bucket_empty, - ht_bucket_html5_B40, ht_bucket_empty, ht_bucket_html5_B42, ht_bucket_empty, - ht_bucket_html5_B44, ht_bucket_empty, ht_bucket_html5_B46, ht_bucket_html5_B47, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_B4C, ht_bucket_empty, ht_bucket_html5_B4E, ht_bucket_html5_B4F, - ht_bucket_html5_B50, ht_bucket_html5_B51, ht_bucket_html5_B52, ht_bucket_html5_B53, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_B56, ht_bucket_empty, - ht_bucket_html5_B58, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_B5C, ht_bucket_html5_B5D, ht_bucket_html5_B5E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_B63, - ht_bucket_html5_B64, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_B67, - ht_bucket_empty, ht_bucket_html5_B69, ht_bucket_empty, ht_bucket_html5_B6B, - ht_bucket_empty, ht_bucket_html5_B6D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_B72, ht_bucket_html5_B73, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_B77, - ht_bucket_html5_B78, ht_bucket_empty, ht_bucket_html5_B7A, ht_bucket_html5_B7B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_B7E, ht_bucket_html5_B7F, - ht_bucket_empty, ht_bucket_html5_B81, ht_bucket_html5_B82, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_B87, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_B8D, ht_bucket_empty, ht_bucket_html5_B8F, - ht_bucket_html5_B90, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_B94, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_B98, ht_bucket_html5_B99, ht_bucket_html5_B9A, ht_bucket_empty, - ht_bucket_html5_B9C, ht_bucket_html5_B9D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_BA5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_BA9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_BAE, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_BB2, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_BB5, ht_bucket_html5_BB6, ht_bucket_html5_BB7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_BBA, ht_bucket_empty, - ht_bucket_html5_BBC, ht_bucket_html5_BBD, ht_bucket_empty, ht_bucket_html5_BBF, - ht_bucket_empty, ht_bucket_html5_BC1, ht_bucket_html5_BC2, ht_bucket_html5_BC3, - ht_bucket_html5_BC4, ht_bucket_html5_BC5, ht_bucket_html5_BC6, ht_bucket_html5_BC7, - ht_bucket_html5_BC8, ht_bucket_html5_BC9, ht_bucket_empty, ht_bucket_html5_BCB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_BCE, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_BD1, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_BD7, - ht_bucket_html5_BD8, ht_bucket_html5_BD9, ht_bucket_html5_BDA, ht_bucket_html5_BDB, - ht_bucket_empty, ht_bucket_html5_BDD, ht_bucket_empty, ht_bucket_html5_BDF, - ht_bucket_empty, ht_bucket_html5_BE1, ht_bucket_html5_BE2, ht_bucket_empty, - ht_bucket_html5_BE4, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_BE7, - ht_bucket_html5_BE8, ht_bucket_html5_BE9, ht_bucket_html5_BEA, ht_bucket_html5_BEB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_BEF, - ht_bucket_html5_BF0, ht_bucket_html5_BF1, ht_bucket_html5_BF2, ht_bucket_html5_BF3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_BF7, - ht_bucket_empty, ht_bucket_html5_BF9, ht_bucket_html5_BFA, ht_bucket_empty, - ht_bucket_html5_BFC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C02, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C0B, - ht_bucket_html5_C0C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_C11, ht_bucket_html5_C12, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C16, ht_bucket_empty, - ht_bucket_html5_C18, ht_bucket_empty, ht_bucket_html5_C1A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_C1D, ht_bucket_html5_C1E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C23, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C27, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C2B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_C31, ht_bucket_html5_C32, ht_bucket_html5_C33, - ht_bucket_html5_C34, ht_bucket_html5_C35, ht_bucket_html5_C36, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C3A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C3E, ht_bucket_html5_C3F, - ht_bucket_html5_C40, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C43, - ht_bucket_html5_C44, ht_bucket_empty, ht_bucket_html5_C46, ht_bucket_empty, - ht_bucket_html5_C48, ht_bucket_empty, ht_bucket_html5_C4A, ht_bucket_html5_C4B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C4F, - ht_bucket_html5_C50, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_C54, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_C58, ht_bucket_empty, ht_bucket_html5_C5A, ht_bucket_html5_C5B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C5F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_C69, ht_bucket_empty, ht_bucket_html5_C6B, - ht_bucket_html5_C6C, ht_bucket_empty, ht_bucket_html5_C6E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C72, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C76, ht_bucket_html5_C77, - ht_bucket_html5_C78, ht_bucket_empty, ht_bucket_html5_C7A, ht_bucket_html5_C7B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_C80, ht_bucket_empty, ht_bucket_html5_C82, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_C89, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_C8E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_C91, ht_bucket_empty, ht_bucket_html5_C93, - ht_bucket_html5_C94, ht_bucket_html5_C95, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_C98, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_CA6, ht_bucket_empty, - ht_bucket_html5_CA8, ht_bucket_html5_CA9, ht_bucket_html5_CAA, ht_bucket_empty, - ht_bucket_html5_CAC, ht_bucket_html5_CAD, ht_bucket_empty, ht_bucket_html5_CAF, - ht_bucket_html5_CB0, ht_bucket_empty, ht_bucket_html5_CB2, ht_bucket_empty, - ht_bucket_html5_CB4, ht_bucket_empty, ht_bucket_html5_CB6, ht_bucket_html5_CB7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_CBA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_CBE, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_CC2, ht_bucket_empty, - ht_bucket_html5_CC4, ht_bucket_html5_CC5, ht_bucket_empty, ht_bucket_html5_CC7, - ht_bucket_html5_CC8, ht_bucket_html5_CC9, ht_bucket_empty, ht_bucket_html5_CCB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_CD0, ht_bucket_empty, ht_bucket_html5_CD2, ht_bucket_html5_CD3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_CD9, ht_bucket_html5_CDA, ht_bucket_empty, - ht_bucket_html5_CDC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_CE4, ht_bucket_empty, ht_bucket_html5_CE6, ht_bucket_empty, - ht_bucket_html5_CE8, ht_bucket_html5_CE9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_CED, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_CF1, ht_bucket_html5_CF2, ht_bucket_html5_CF3, - ht_bucket_html5_CF4, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_CFA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_CFF, - ht_bucket_html5_D00, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_D06, ht_bucket_html5_D07, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_D0B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_D0E, ht_bucket_empty, - ht_bucket_html5_D10, ht_bucket_html5_D11, ht_bucket_html5_D12, ht_bucket_html5_D13, - ht_bucket_empty, ht_bucket_html5_D15, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_D18, ht_bucket_html5_D19, ht_bucket_html5_D1A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_D1E, ht_bucket_html5_D1F, - ht_bucket_html5_D20, ht_bucket_empty, ht_bucket_html5_D22, ht_bucket_empty, - ht_bucket_html5_D24, ht_bucket_empty, ht_bucket_html5_D26, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_D2A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_D32, ht_bucket_empty, - ht_bucket_html5_D34, ht_bucket_html5_D35, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_D38, ht_bucket_html5_D39, ht_bucket_html5_D3A, ht_bucket_html5_D3B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_D3E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_D42, ht_bucket_empty, - ht_bucket_html5_D44, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_D49, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_D4C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_D4F, - ht_bucket_empty, ht_bucket_html5_D51, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_D54, ht_bucket_html5_D55, ht_bucket_html5_D56, ht_bucket_html5_D57, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_D5A, ht_bucket_html5_D5B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_D5F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_D63, - ht_bucket_empty, ht_bucket_html5_D65, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_D69, ht_bucket_html5_D6A, ht_bucket_empty, - ht_bucket_html5_D6C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_D6F, - ht_bucket_html5_D70, ht_bucket_html5_D71, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_D74, ht_bucket_html5_D75, ht_bucket_html5_D76, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_D7C, ht_bucket_html5_D7D, ht_bucket_html5_D7E, ht_bucket_empty, - ht_bucket_html5_D80, ht_bucket_html5_D81, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_D85, ht_bucket_empty, ht_bucket_html5_D87, - ht_bucket_empty, ht_bucket_html5_D89, ht_bucket_html5_D8A, ht_bucket_empty, - ht_bucket_html5_D8C, ht_bucket_html5_D8D, ht_bucket_html5_D8E, ht_bucket_html5_D8F, - ht_bucket_html5_D90, ht_bucket_html5_D91, ht_bucket_empty, ht_bucket_html5_D93, - ht_bucket_html5_D94, ht_bucket_html5_D95, ht_bucket_html5_D96, ht_bucket_empty, - ht_bucket_html5_D98, ht_bucket_empty, ht_bucket_html5_D9A, ht_bucket_empty, - ht_bucket_html5_D9C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_DA0, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_DA5, ht_bucket_html5_DA6, ht_bucket_empty, - ht_bucket_html5_DA8, ht_bucket_html5_DA9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_DAC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_DB0, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_DB3, - ht_bucket_html5_DB4, ht_bucket_empty, ht_bucket_html5_DB6, ht_bucket_html5_DB7, - ht_bucket_empty, ht_bucket_html5_DB9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_DBC, ht_bucket_empty, ht_bucket_html5_DBE, ht_bucket_html5_DBF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_DC2, ht_bucket_html5_DC3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_DC6, ht_bucket_empty, - ht_bucket_html5_DC8, ht_bucket_empty, ht_bucket_html5_DCA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_DCF, - ht_bucket_empty, ht_bucket_html5_DD1, ht_bucket_empty, ht_bucket_html5_DD3, - ht_bucket_html5_DD4, ht_bucket_html5_DD5, ht_bucket_empty, ht_bucket_html5_DD7, - ht_bucket_empty, ht_bucket_html5_DD9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_DDC, ht_bucket_html5_DDD, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_DE4, ht_bucket_empty, ht_bucket_html5_DE6, ht_bucket_html5_DE7, - ht_bucket_empty, ht_bucket_html5_DE9, ht_bucket_empty, ht_bucket_html5_DEB, - ht_bucket_empty, ht_bucket_html5_DED, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_DF1, ht_bucket_html5_DF2, ht_bucket_html5_DF3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_DF6, ht_bucket_html5_DF7, - ht_bucket_empty, ht_bucket_html5_DF9, ht_bucket_empty, ht_bucket_html5_DFB, - ht_bucket_empty, ht_bucket_html5_DFD, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_E03, - ht_bucket_html5_E04, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_E08, ht_bucket_html5_E09, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_E0C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_E11, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_E18, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_E1B, - ht_bucket_html5_E1C, ht_bucket_html5_E1D, ht_bucket_html5_E1E, ht_bucket_empty, - ht_bucket_html5_E20, ht_bucket_empty, ht_bucket_html5_E22, ht_bucket_html5_E23, - ht_bucket_html5_E24, ht_bucket_html5_E25, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_E28, ht_bucket_empty, ht_bucket_html5_E2A, ht_bucket_empty, - ht_bucket_html5_E2C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_E2F, - ht_bucket_html5_E30, ht_bucket_empty, ht_bucket_html5_E32, ht_bucket_html5_E33, - ht_bucket_empty, ht_bucket_html5_E35, ht_bucket_html5_E36, ht_bucket_html5_E37, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_E3B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_E41, ht_bucket_html5_E42, ht_bucket_html5_E43, - ht_bucket_html5_E44, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_E48, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_E4C, ht_bucket_empty, ht_bucket_html5_E4E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_E53, - ht_bucket_empty, ht_bucket_html5_E55, ht_bucket_empty, ht_bucket_html5_E57, - ht_bucket_html5_E58, ht_bucket_html5_E59, ht_bucket_empty, ht_bucket_html5_E5B, - ht_bucket_empty, ht_bucket_html5_E5D, ht_bucket_html5_E5E, ht_bucket_html5_E5F, - ht_bucket_html5_E60, ht_bucket_html5_E61, ht_bucket_empty, ht_bucket_html5_E63, - ht_bucket_html5_E64, ht_bucket_html5_E65, ht_bucket_html5_E66, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_E6A, ht_bucket_empty, - ht_bucket_html5_E6C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_E6F, - ht_bucket_html5_E70, ht_bucket_html5_E71, ht_bucket_empty, ht_bucket_html5_E73, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_E78, ht_bucket_empty, ht_bucket_html5_E7A, ht_bucket_empty, - ht_bucket_html5_E7C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_E80, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_E83, - ht_bucket_html5_E84, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_E89, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_E8E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_E91, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_E99, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_E9C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_EA1, ht_bucket_html5_EA2, ht_bucket_empty, - ht_bucket_html5_EA4, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_EA8, ht_bucket_html5_EA9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_EB1, ht_bucket_html5_EB2, ht_bucket_empty, - ht_bucket_html5_EB4, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_EB7, - ht_bucket_html5_EB8, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_ECA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_ECD, ht_bucket_empty, ht_bucket_html5_ECF, - ht_bucket_empty, ht_bucket_html5_ED1, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_ED7, - ht_bucket_html5_ED8, ht_bucket_html5_ED9, ht_bucket_html5_EDA, ht_bucket_html5_EDB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_EDF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_EE2, ht_bucket_empty, - ht_bucket_html5_EE4, ht_bucket_html5_EE5, ht_bucket_empty, ht_bucket_html5_EE7, - ht_bucket_empty, ht_bucket_html5_EE9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_EEF, - ht_bucket_empty, ht_bucket_html5_EF1, ht_bucket_html5_EF2, ht_bucket_empty, - ht_bucket_html5_EF4, ht_bucket_html5_EF5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_EF9, ht_bucket_empty, ht_bucket_html5_EFB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_EFE, ht_bucket_html5_EFF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F03, - ht_bucket_empty, ht_bucket_html5_F05, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_F08, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F0B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F0F, - ht_bucket_html5_F10, ht_bucket_html5_F11, ht_bucket_empty, ht_bucket_html5_F13, - ht_bucket_html5_F14, ht_bucket_html5_F15, ht_bucket_empty, ht_bucket_html5_F17, - ht_bucket_html5_F18, ht_bucket_html5_F19, ht_bucket_html5_F1A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F1F, - ht_bucket_html5_F20, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F26, ht_bucket_empty, - ht_bucket_html5_F28, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_F2C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F2F, - ht_bucket_html5_F30, ht_bucket_html5_F31, ht_bucket_empty, ht_bucket_html5_F33, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F37, - ht_bucket_html5_F38, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_F40, ht_bucket_html5_F41, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_F44, ht_bucket_empty, ht_bucket_html5_F46, ht_bucket_html5_F47, - ht_bucket_html5_F48, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F4B, - ht_bucket_html5_F4C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_F50, ht_bucket_html5_F51, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_F55, ht_bucket_empty, ht_bucket_html5_F57, - ht_bucket_html5_F58, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F5B, - ht_bucket_empty, ht_bucket_html5_F5D, ht_bucket_empty, ht_bucket_html5_F5F, - ht_bucket_html5_F60, ht_bucket_empty, ht_bucket_html5_F62, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F67, - ht_bucket_html5_F68, ht_bucket_html5_F69, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_F6D, ht_bucket_html5_F6E, ht_bucket_html5_F6F, - ht_bucket_html5_F70, ht_bucket_html5_F71, ht_bucket_html5_F72, ht_bucket_empty, - ht_bucket_html5_F74, ht_bucket_html5_F75, ht_bucket_html5_F76, ht_bucket_html5_F77, - ht_bucket_html5_F78, ht_bucket_html5_F79, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_F81, ht_bucket_html5_F82, ht_bucket_html5_F83, - ht_bucket_html5_F84, ht_bucket_empty, ht_bucket_html5_F86, ht_bucket_empty, - ht_bucket_html5_F88, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F8B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F8F, - ht_bucket_empty, ht_bucket_html5_F91, ht_bucket_empty, ht_bucket_html5_F93, - ht_bucket_empty, ht_bucket_html5_F95, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F9A, ht_bucket_empty, - ht_bucket_html5_F9C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_F9F, - ht_bucket_html5_FA0, ht_bucket_html5_FA1, ht_bucket_html5_FA2, ht_bucket_html5_FA3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_FA9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_FB0, ht_bucket_html5_FB1, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_FB4, ht_bucket_html5_FB5, ht_bucket_html5_FB6, ht_bucket_html5_FB7, - ht_bucket_empty, ht_bucket_html5_FB9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_FBC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_FC2, ht_bucket_empty, - ht_bucket_html5_FC4, ht_bucket_empty, ht_bucket_html5_FC6, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_FCA, ht_bucket_empty, - ht_bucket_html5_FCC, ht_bucket_empty, ht_bucket_html5_FCE, ht_bucket_html5_FCF, - ht_bucket_html5_FD0, ht_bucket_empty, ht_bucket_html5_FD2, ht_bucket_html5_FD3, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_FD6, ht_bucket_html5_FD7, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_FDD, ht_bucket_empty, ht_bucket_html5_FDF, - ht_bucket_empty, ht_bucket_html5_FE1, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html5_FE6, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_FE9, ht_bucket_html5_FEA, ht_bucket_html5_FEB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html5_FF5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_FF8, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html5_FFC, ht_bucket_empty, ht_bucket_html5_FFE, ht_bucket_empty, -}; - -static const entity_ht ent_ht_html5 = { - 0x1000, - ht_buckets_html5 -}; - -/* end of HTML5 hash table for entity -> codepoint }}} */ - -/* {{{ Start of HTML 4.01 multi-stage table for codepoint -> entity */ - -/* {{{ Stage 3 Tables for HTML 4.01 */ - -static const entity_stage3_row stage3_table_html4_00000[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"quot", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"amp", 3} } }, {0, { {"#039", 4} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"lt", 2} } }, {0, { {NULL, 0} } }, {0, { {"gt", 2} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_00080[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"nbsp", 4} } }, {0, { {"iexcl", 5} } }, {0, { {"cent", 4} } }, {0, { {"pound", 5} } }, - {0, { {"curren", 6} } }, {0, { {"yen", 3} } }, {0, { {"brvbar", 6} } }, {0, { {"sect", 4} } }, - {0, { {"uml", 3} } }, {0, { {"copy", 4} } }, {0, { {"ordf", 4} } }, {0, { {"laquo", 5} } }, - {0, { {"not", 3} } }, {0, { {"shy", 3} } }, {0, { {"reg", 3} } }, {0, { {"macr", 4} } }, - {0, { {"deg", 3} } }, {0, { {"plusmn", 6} } }, {0, { {"sup2", 4} } }, {0, { {"sup3", 4} } }, - {0, { {"acute", 5} } }, {0, { {"micro", 5} } }, {0, { {"para", 4} } }, {0, { {"middot", 6} } }, - {0, { {"cedil", 5} } }, {0, { {"sup1", 4} } }, {0, { {"ordm", 4} } }, {0, { {"raquo", 5} } }, - {0, { {"frac14", 6} } }, {0, { {"frac12", 6} } }, {0, { {"frac34", 6} } }, {0, { {"iquest", 6} } }, -}; - -static const entity_stage3_row stage3_table_html4_000C0[] = { - {0, { {"Agrave", 6} } }, {0, { {"Aacute", 6} } }, {0, { {"Acirc", 5} } }, {0, { {"Atilde", 6} } }, - {0, { {"Auml", 4} } }, {0, { {"Aring", 5} } }, {0, { {"AElig", 5} } }, {0, { {"Ccedil", 6} } }, - {0, { {"Egrave", 6} } }, {0, { {"Eacute", 6} } }, {0, { {"Ecirc", 5} } }, {0, { {"Euml", 4} } }, - {0, { {"Igrave", 6} } }, {0, { {"Iacute", 6} } }, {0, { {"Icirc", 5} } }, {0, { {"Iuml", 4} } }, - {0, { {"ETH", 3} } }, {0, { {"Ntilde", 6} } }, {0, { {"Ograve", 6} } }, {0, { {"Oacute", 6} } }, - {0, { {"Ocirc", 5} } }, {0, { {"Otilde", 6} } }, {0, { {"Ouml", 4} } }, {0, { {"times", 5} } }, - {0, { {"Oslash", 6} } }, {0, { {"Ugrave", 6} } }, {0, { {"Uacute", 6} } }, {0, { {"Ucirc", 5} } }, - {0, { {"Uuml", 4} } }, {0, { {"Yacute", 6} } }, {0, { {"THORN", 5} } }, {0, { {"szlig", 5} } }, - {0, { {"agrave", 6} } }, {0, { {"aacute", 6} } }, {0, { {"acirc", 5} } }, {0, { {"atilde", 6} } }, - {0, { {"auml", 4} } }, {0, { {"aring", 5} } }, {0, { {"aelig", 5} } }, {0, { {"ccedil", 6} } }, - {0, { {"egrave", 6} } }, {0, { {"eacute", 6} } }, {0, { {"ecirc", 5} } }, {0, { {"euml", 4} } }, - {0, { {"igrave", 6} } }, {0, { {"iacute", 6} } }, {0, { {"icirc", 5} } }, {0, { {"iuml", 4} } }, - {0, { {"eth", 3} } }, {0, { {"ntilde", 6} } }, {0, { {"ograve", 6} } }, {0, { {"oacute", 6} } }, - {0, { {"ocirc", 5} } }, {0, { {"otilde", 6} } }, {0, { {"ouml", 4} } }, {0, { {"divide", 6} } }, - {0, { {"oslash", 6} } }, {0, { {"ugrave", 6} } }, {0, { {"uacute", 6} } }, {0, { {"ucirc", 5} } }, - {0, { {"uuml", 4} } }, {0, { {"yacute", 6} } }, {0, { {"thorn", 5} } }, {0, { {"yuml", 4} } }, -}; - -static const entity_stage3_row stage3_table_html4_00140[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"OElig", 5} } }, {0, { {"oelig", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"Scaron", 6} } }, {0, { {"scaron", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"Yuml", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_00180[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"fnof", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_002C0[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"circ", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"tilde", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_00380[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"Alpha", 5} } }, {0, { {"Beta", 4} } }, {0, { {"Gamma", 5} } }, - {0, { {"Delta", 5} } }, {0, { {"Epsilon", 7} } }, {0, { {"Zeta", 4} } }, {0, { {"Eta", 3} } }, - {0, { {"Theta", 5} } }, {0, { {"Iota", 4} } }, {0, { {"Kappa", 5} } }, {0, { {"Lambda", 6} } }, - {0, { {"Mu", 2} } }, {0, { {"Nu", 2} } }, {0, { {"Xi", 2} } }, {0, { {"Omicron", 7} } }, - {0, { {"Pi", 2} } }, {0, { {"Rho", 3} } }, {0, { {NULL, 0} } }, {0, { {"Sigma", 5} } }, - {0, { {"Tau", 3} } }, {0, { {"Upsilon", 7} } }, {0, { {"Phi", 3} } }, {0, { {"Chi", 3} } }, - {0, { {"Psi", 3} } }, {0, { {"Omega", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"alpha", 5} } }, {0, { {"beta", 4} } }, {0, { {"gamma", 5} } }, - {0, { {"delta", 5} } }, {0, { {"epsilon", 7} } }, {0, { {"zeta", 4} } }, {0, { {"eta", 3} } }, - {0, { {"theta", 5} } }, {0, { {"iota", 4} } }, {0, { {"kappa", 5} } }, {0, { {"lambda", 6} } }, - {0, { {"mu", 2} } }, {0, { {"nu", 2} } }, {0, { {"xi", 2} } }, {0, { {"omicron", 7} } }, -}; - -static const entity_stage3_row stage3_table_html4_003C0[] = { - {0, { {"pi", 2} } }, {0, { {"rho", 3} } }, {0, { {"sigmaf", 6} } }, {0, { {"sigma", 5} } }, - {0, { {"tau", 3} } }, {0, { {"upsilon", 7} } }, {0, { {"phi", 3} } }, {0, { {"chi", 3} } }, - {0, { {"psi", 3} } }, {0, { {"omega", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"thetasym", 8} } }, {0, { {"upsih", 5} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"piv", 3} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_02000[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"ensp", 4} } }, {0, { {"emsp", 4} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"thinsp", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"zwnj", 4} } }, {0, { {"zwj", 3} } }, {0, { {"lrm", 3} } }, {0, { {"rlm", 3} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"ndash", 5} } }, - {0, { {"mdash", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"lsquo", 5} } }, {0, { {"rsquo", 5} } }, {0, { {"sbquo", 5} } }, {0, { {NULL, 0} } }, - {0, { {"ldquo", 5} } }, {0, { {"rdquo", 5} } }, {0, { {"bdquo", 5} } }, {0, { {NULL, 0} } }, - {0, { {"dagger", 6} } }, {0, { {"Dagger", 6} } }, {0, { {"bull", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"hellip", 6} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"permil", 6} } }, {0, { {NULL, 0} } }, {0, { {"prime", 5} } }, {0, { {"Prime", 5} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"lsaquo", 6} } }, {0, { {"rsaquo", 6} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"oline", 5} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_02040[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"frasl", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_02080[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"euro", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_02100[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"image", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"weierp", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"real", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"trade", 5} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"alefsym", 7} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_02180[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"larr", 4} } }, {0, { {"uarr", 4} } }, {0, { {"rarr", 4} } }, {0, { {"darr", 4} } }, - {0, { {"harr", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"crarr", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_021C0[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"lArr", 4} } }, {0, { {"uArr", 4} } }, {0, { {"rArr", 4} } }, {0, { {"dArr", 4} } }, - {0, { {"hArr", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_02200[] = { - {0, { {"forall", 6} } }, {0, { {NULL, 0} } }, {0, { {"part", 4} } }, {0, { {"exist", 5} } }, - {0, { {NULL, 0} } }, {0, { {"empty", 5} } }, {0, { {NULL, 0} } }, {0, { {"nabla", 5} } }, - {0, { {"isin", 4} } }, {0, { {"notin", 5} } }, {0, { {NULL, 0} } }, {0, { {"ni", 2} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"prod", 4} } }, - {0, { {NULL, 0} } }, {0, { {"sum", 3} } }, {0, { {"minus", 5} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"lowast", 6} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"radic", 5} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"prop", 4} } }, {0, { {"infin", 5} } }, {0, { {NULL, 0} } }, - {0, { {"ang", 3} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"and", 3} } }, - {0, { {"or", 2} } }, {0, { {"cap", 3} } }, {0, { {"cup", 3} } }, {0, { {"int", 3} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"there4", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"sim", 3} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_02240[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"cong", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"asymp", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"ne", 2} } }, {0, { {"equiv", 5} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"le", 2} } }, {0, { {"ge", 2} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_02280[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"sub", 3} } }, {0, { {"sup", 3} } }, - {0, { {"nsub", 4} } }, {0, { {NULL, 0} } }, {0, { {"sube", 4} } }, {0, { {"supe", 4} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"oplus", 5} } }, {0, { {NULL, 0} } }, {0, { {"otimes", 6} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"perp", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_022C0[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"sdot", 4} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_02300[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"lceil", 5} } }, {0, { {"rceil", 5} } }, {0, { {"lfloor", 6} } }, {0, { {"rfloor", 6} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {"lang", 4} } }, {0, { {"rang", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_025C0[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"loz", 3} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -static const entity_stage3_row stage3_table_html4_02640[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"spades", 6} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"clubs", 5} } }, - {0, { {NULL, 0} } }, {0, { {"hearts", 6} } }, {0, { {"diams", 5} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, -}; - -/* end of stage 3 Tables for HTML 4.01 }}} */ - -/* {{{ Stage 2 Tables for HTML 4.01 */ - -static const entity_stage2_row stage2_table_html4_00000[] = { - stage3_table_html4_00000, empty_stage3_table, stage3_table_html4_00080, stage3_table_html4_000C0, - empty_stage3_table, stage3_table_html4_00140, stage3_table_html4_00180, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, stage3_table_html4_002C0, - empty_stage3_table, empty_stage3_table, stage3_table_html4_00380, stage3_table_html4_003C0, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, -}; - -static const entity_stage2_row stage2_table_html4_02000[] = { - stage3_table_html4_02000, stage3_table_html4_02040, stage3_table_html4_02080, empty_stage3_table, - stage3_table_html4_02100, empty_stage3_table, stage3_table_html4_02180, stage3_table_html4_021C0, - stage3_table_html4_02200, stage3_table_html4_02240, stage3_table_html4_02280, stage3_table_html4_022C0, - stage3_table_html4_02300, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, stage3_table_html4_025C0, - empty_stage3_table, stage3_table_html4_02640, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, - empty_stage3_table, empty_stage3_table, empty_stage3_table, empty_stage3_table, -}; - -/* end of stage 2 tables for HTML 4.01 }}} */ - -static const entity_stage1_row entity_ms_table_html4[] = { - stage2_table_html4_00000, - empty_stage2_table, - stage2_table_html4_02000, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, - empty_stage2_table, -}; - -/* end of HTML 4.01 multi-stage table for codepoint -> entity }}} */ - -/* {{{ HTML 4.01 hash table for entity -> codepoint */ - -static const entity_cp_map ht_bucket_html4_000[] = { {"gt", 2, 0x0003E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_003[] = { {"Igrave", 6, 0x000CC, 0}, {"amp", 3, 0x00026, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_006[] = { {"oacute", 6, 0x000F3, 0}, {"Xi", 2, 0x0039E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_008[] = { {"uuml", 4, 0x000FC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_00B[] = { {"Alpha", 5, 0x00391, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_00E[] = { {"sim", 3, 0x0223C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_012[] = { {"kappa", 5, 0x003BA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_016[] = { {"lArr", 4, 0x021D0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_018[] = { {"and", 3, 0x02227, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_01B[] = { {"ang", 3, 0x02220, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_020[] = { {"copy", 4, 0x000A9, 0}, {"Iacute", 6, 0x000CD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_023[] = { {"igrave", 6, 0x000EC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_026[] = { {"xi", 2, 0x003BE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_027[] = { {"Acirc", 5, 0x000C2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_02B[] = { {"Ecirc", 5, 0x000CA, 0}, {"alpha", 5, 0x003B1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_02C[] = { {"hearts", 6, 0x02665, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_02F[] = { {"Icirc", 5, 0x000CE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_030[] = { {"Yacute", 6, 0x000DD, 0}, {"int", 3, 0x0222B, 0}, {"rlm", 3, 0x0200F, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_034[] = { {"empty", 5, 0x02205, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_036[] = { {"larr", 4, 0x02190, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_03B[] = { {"Ucirc", 5, 0x000DB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_03C[] = { {"oline", 5, 0x0203E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_040[] = { {"iacute", 6, 0x000ED, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_046[] = { {"middot", 6, 0x000B7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_047[] = { {"acirc", 5, 0x000E2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_04B[] = { {"ecirc", 5, 0x000EA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_04F[] = { {"icirc", 5, 0x000EE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_050[] = { {"yacute", 6, 0x000FD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_051[] = { {"minus", 5, 0x02212, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_054[] = { {"Auml", 4, 0x000C4, 0}, {"thetasym", 8, 0x003D1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_056[] = { {"Sigma", 5, 0x003A3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_059[] = { {"lsquo", 5, 0x02018, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_05B[] = { {"ucirc", 5, 0x000FB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_05C[] = { {"rArr", 4, 0x021D2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_064[] = { {"brvbar", 6, 0x000A6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_067[] = { {"AElig", 5, 0x000C6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_069[] = { {"Ccedil", 6, 0x000C7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_071[] = { {"Psi", 3, 0x003A8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_072[] = { {"exist", 5, 0x02203, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_074[] = { {"auml", 4, 0x000E4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_076[] = { {"sigma", 5, 0x003C3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_078[] = { {"isin", 4, 0x02208, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_07C[] = { {"rarr", 4, 0x02192, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_089[] = { {"ccedil", 6, 0x000E7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_08D[] = { {"raquo", 5, 0x000BB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_08E[] = { {"Omega", 5, 0x003A9, 0}, {"zwnj", 4, 0x0200C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_091[] = { {"psi", 3, 0x003C8, 0}, {"there4", 6, 0x02234, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_092[] = { {"hArr", 4, 0x021D4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_096[] = { {"le", 2, 0x02264, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_098[] = { {"Atilde", 6, 0x000C3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_099[] = { {"Zeta", 4, 0x00396, 0}, {"infin", 5, 0x0221E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_09D[] = { {"frasl", 5, 0x02044, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0A0[] = { {"euro", 4, 0x020AC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0A5[] = { {"lt", 2, 0x0003C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0A7[] = { {"aelig", 5, 0x000E6, 0}, {"Mu", 2, 0x0039C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0A8[] = { {"macr", 4, 0x000AF, 0}, {"image", 5, 0x02111, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0AA[] = { {"ldquo", 5, 0x0201C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0AE[] = { {"omega", 5, 0x003C9, 0}, {"upsih", 5, 0x003D2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0B0[] = { {"THORN", 5, 0x000DE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0B2[] = { {"Iota", 4, 0x00399, 0}, {"harr", 4, 0x02194, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0B4[] = { {"bull", 4, 0x02022, 0}, {"rceil", 5, 0x02309, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0B8[] = { {"atilde", 6, 0x000E3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0B9[] = { {"zeta", 4, 0x003B6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0BA[] = { {"emsp", 4, 0x02003, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0BC[] = { {"perp", 4, 0x022A5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0C2[] = { {"Prime", 5, 0x02033, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0C4[] = { {"frac12", 6, 0x000BD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0C5[] = { {"Ntilde", 6, 0x000D1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0C6[] = { {"frac14", 6, 0x000BC, 0}, {"circ", 4, 0x002C6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0C7[] = { {"mu", 2, 0x003BC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0C8[] = { {"Gamma", 5, 0x00393, 0}, {"Nu", 2, 0x0039D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0CE[] = { {"fnof", 4, 0x00192, 0}, {"quot", 4, 0x00022, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0D2[] = { {"iota", 4, 0x003B9, 0}, {"mdash", 5, 0x02014, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0D8[] = { {"ne", 2, 0x02260, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0DB[] = { {"Theta", 5, 0x00398, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0DC[] = { {"ni", 2, 0x0220B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0E2[] = { {"prime", 5, 0x02032, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0E5[] = { {"ntilde", 6, 0x000F1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0E6[] = { {"Lambda", 6, 0x0039B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0E8[] = { {"gamma", 5, 0x003B3, 0}, {"nu", 2, 0x003BD, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0EB[] = { {"pound", 5, 0x000A3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0EE[] = { {"permil", 6, 0x02030, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0F9[] = { {"cap", 3, 0x02229, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0FA[] = { {"iexcl", 5, 0x000A1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0FB[] = { {"Agrave", 6, 0x000C0, 0}, {"theta", 5, 0x003B8, 0}, {"ensp", 4, 0x02002, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0FE[] = { {"Pi", 2, 0x003A0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_0FF[] = { {"crarr", 5, 0x021B5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_100[] = { {"iquest", 6, 0x000BF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_105[] = { {"forall", 6, 0x02200, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_106[] = { {"Phi", 3, 0x003A6, 0}, {"lambda", 6, 0x003BB, 0}, {"or", 2, 0x02228, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_108[] = { {"frac34", 6, 0x000BE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_10D[] = { {"notin", 5, 0x02209, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_10E[] = { {"dArr", 4, 0x021D3, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_10F[] = { {"Dagger", 6, 0x02021, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_111[] = { {"yen", 3, 0x000A5, 0}, {"weierp", 6, 0x02118, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_113[] = { {"uml", 3, 0x000A8, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_117[] = { {"tilde", 5, 0x002DC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_118[] = { {"Aacute", 6, 0x000C1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_11A[] = { {"loz", 3, 0x025CA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_11B[] = { {"agrave", 6, 0x000E0, 0}, {"thinsp", 6, 0x02009, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_11E[] = { {"pi", 2, 0x003C0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_11F[] = { {"micro", 5, 0x000B5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_125[] = { {"spades", 6, 0x02660, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_126[] = { {"phi", 3, 0x003C6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_12E[] = { {"darr", 4, 0x02193, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_12F[] = { {"Oslash", 6, 0x000D8, 0}, {"Tau", 3, 0x003A4, 0}, {"dagger", 6, 0x02020, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_135[] = { {"Ocirc", 5, 0x000D4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_136[] = { {"alefsym", 7, 0x02135, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_138[] = { {"aacute", 6, 0x000E1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_13A[] = { {"divide", 6, 0x000F7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_13F[] = { {"sdot", 4, 0x022C5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_143[] = { {"reg", 3, 0x000AE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_149[] = { {"real", 4, 0x0211C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_14B[] = { {"Scaron", 6, 0x00160, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_14F[] = { {"cent", 4, 0x000A2, 0}, {"oslash", 6, 0x000F8, 0}, {"tau", 3, 0x003C4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_150[] = { {"thorn", 5, 0x000FE, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_153[] = { {"ndash", 5, 0x02013, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_154[] = { {"piv", 3, 0x003D6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_155[] = { {"ocirc", 5, 0x000F4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_156[] = { {"Aring", 5, 0x000C5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_158[] = { {"nbsp", 4, 0x000A0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_15C[] = { {"Iuml", 4, 0x000CF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_15F[] = { {"rsquo", 5, 0x02019, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_160[] = { {"rsaquo", 6, 0x0203A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_163[] = { {"hellip", 6, 0x02026, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_166[] = { {"Otilde", 6, 0x000D5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_16B[] = { {"scaron", 6, 0x00161, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_16C[] = { {"Yuml", 4, 0x00178, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_16E[] = { {"sup1", 4, 0x000B9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_16F[] = { {"sup2", 4, 0x000B2, 0}, {"Delta", 5, 0x00394, 0}, {"sbquo", 5, 0x0201A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_170[] = { {"sup3", 4, 0x000B3, 0}, {"lrm", 3, 0x0200E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_173[] = { {"diams", 5, 0x02666, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_175[] = { {"OElig", 5, 0x00152, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_176[] = { {"aring", 5, 0x000E5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_178[] = { {"oplus", 5, 0x02295, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_17C[] = { {"iuml", 4, 0x000EF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_17F[] = { {"Egrave", 6, 0x000C8, 0}, {"uArr", 4, 0x021D1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_181[] = { {"Beta", 4, 0x00392, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_183[] = { {"nabla", 5, 0x02207, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_186[] = { {"ETH", 3, 0x000D0, 0}, {"otilde", 6, 0x000F5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_187[] = { {"laquo", 5, 0x000AB, 0}, {"times", 5, 0x000D7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_18C[] = { {"yuml", 4, 0x000FF, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_18D[] = { {"cup", 3, 0x0222A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_18E[] = { {"Rho", 3, 0x003A1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_18F[] = { {"Ugrave", 6, 0x000D9, 0}, {"delta", 5, 0x003B4, 0}, {"equiv", 5, 0x02261, 0}, {"sub", 3, 0x02282, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_194[] = { {"curren", 6, 0x000A4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_196[] = { {"not", 3, 0x000AC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_197[] = { {"acute", 5, 0x000B4, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_19A[] = { {"prod", 4, 0x0220F, 0}, {"sum", 3, 0x02211, 0}, {"lsaquo", 6, 0x02039, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_19C[] = { {"Eacute", 6, 0x000C9, 0}, {"Omicron", 7, 0x0039F, 0}, {"sigmaf", 6, 0x003C2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_19D[] = { {"sup", 3, 0x02283, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_19F[] = { {"egrave", 6, 0x000E8, 0}, {"uarr", 4, 0x02191, 0}, {"lowast", 6, 0x02217, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1A0[] = { {"zwj", 3, 0x0200D, 0}, {"bdquo", 5, 0x0201E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1A1[] = { {"beta", 4, 0x003B2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1A2[] = { {"Ouml", 4, 0x000D6, 0}, {"supe", 4, 0x02287, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1A4[] = { {"plusmn", 6, 0x000B1, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1A6[] = { {"cedil", 5, 0x000B8, 0}, {"prop", 4, 0x0221D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1A7[] = { {"lang", 4, 0x02329, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1A8[] = { {"radic", 5, 0x0221A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1A9[] = { {"para", 4, 0x000B6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1AC[] = { {"Uacute", 6, 0x000DA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1AE[] = { {"szlig", 5, 0x000DF, 0}, {"rho", 3, 0x003C1, 0}, {"lceil", 5, 0x02308, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1AF[] = { {"ugrave", 6, 0x000F9, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1B0[] = { {"rdquo", 5, 0x0201D, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1B5[] = { {"deg", 3, 0x000B0, 0}, {"trade", 5, 0x02122, 0}, {"oelig", 5, 0x00153, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1B9[] = { {"Chi", 3, 0x003A7, 0}, {"rfloor", 6, 0x0230B, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1BC[] = { {"eacute", 6, 0x000E9, 0}, {"omicron", 7, 0x003BF, 0}, {"part", 4, 0x02202, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1BE[] = { {"clubs", 5, 0x02663, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1BF[] = { {"Epsilon", 7, 0x00395, 0}, {"Eta", 3, 0x00397, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1C2[] = { {"ouml", 4, 0x000F6, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1C4[] = { {"#039", 4, 0x00027, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1C9[] = { {"Ograve", 6, 0x000D2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1CC[] = { {"uacute", 6, 0x000FA, 0}, {"cong", 4, 0x02245, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1CF[] = { {"Upsilon", 7, 0x003A5, 0}, {"asymp", 5, 0x02248, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1D0[] = { {"ordf", 4, 0x000AA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1D4[] = { {"sube", 4, 0x02286, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1D7[] = { {"ordm", 4, 0x000BA, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1D8[] = { {"Euml", 4, 0x000CB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1D9[] = { {"chi", 3, 0x003C7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1DD[] = { {"nsub", 4, 0x02284, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1DF[] = { {"epsilon", 7, 0x003B5, 0}, {"eta", 3, 0x003B7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1E6[] = { {"Oacute", 6, 0x000D3, 0}, {"eth", 3, 0x000F0, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1E8[] = { {"Uuml", 4, 0x000DC, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1E9[] = { {"ograve", 6, 0x000F2, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1ED[] = { {"rang", 4, 0x0232A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1EF[] = { {"upsilon", 7, 0x003C5, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1F1[] = { {"ge", 2, 0x02265, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1F2[] = { {"Kappa", 5, 0x0039A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1F3[] = { {"lfloor", 6, 0x0230A, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1F4[] = { {"sect", 4, 0x000A7, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1F6[] = { {"otimes", 6, 0x02297, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1F8[] = { {"euml", 4, 0x000EB, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_html4_1F9[] = { {"shy", 3, 0x000AD, 0}, {NULL, 0, 0, 0} }; - -static const entity_cp_map *const ht_buckets_html4[] = { - ht_bucket_html4_000, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_003, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_006, ht_bucket_empty, - ht_bucket_html4_008, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_00B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_00E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_012, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_016, ht_bucket_empty, - ht_bucket_html4_018, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_01B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_020, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_023, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_026, ht_bucket_html4_027, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_02B, - ht_bucket_html4_02C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_02F, - ht_bucket_html4_030, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_034, ht_bucket_empty, ht_bucket_html4_036, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_03B, - ht_bucket_html4_03C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_040, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_046, ht_bucket_html4_047, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_04B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_04F, - ht_bucket_html4_050, ht_bucket_html4_051, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_054, ht_bucket_empty, ht_bucket_html4_056, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_059, ht_bucket_empty, ht_bucket_html4_05B, - ht_bucket_html4_05C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_064, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_067, - ht_bucket_empty, ht_bucket_html4_069, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_071, ht_bucket_html4_072, ht_bucket_empty, - ht_bucket_html4_074, ht_bucket_empty, ht_bucket_html4_076, ht_bucket_empty, - ht_bucket_html4_078, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_07C, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_089, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_08D, ht_bucket_html4_08E, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_091, ht_bucket_html4_092, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_096, ht_bucket_empty, - ht_bucket_html4_098, ht_bucket_html4_099, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_09D, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_0A0, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_0A5, ht_bucket_empty, ht_bucket_html4_0A7, - ht_bucket_html4_0A8, ht_bucket_empty, ht_bucket_html4_0AA, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_0AE, ht_bucket_empty, - ht_bucket_html4_0B0, ht_bucket_empty, ht_bucket_html4_0B2, ht_bucket_empty, - ht_bucket_html4_0B4, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_0B8, ht_bucket_html4_0B9, ht_bucket_html4_0BA, ht_bucket_empty, - ht_bucket_html4_0BC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_0C2, ht_bucket_empty, - ht_bucket_html4_0C4, ht_bucket_html4_0C5, ht_bucket_html4_0C6, ht_bucket_html4_0C7, - ht_bucket_html4_0C8, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_0CE, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_0D2, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_0D8, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_0DB, - ht_bucket_html4_0DC, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_0E2, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_0E5, ht_bucket_html4_0E6, ht_bucket_empty, - ht_bucket_html4_0E8, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_0EB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_0EE, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_0F9, ht_bucket_html4_0FA, ht_bucket_html4_0FB, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_0FE, ht_bucket_html4_0FF, - ht_bucket_html4_100, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_105, ht_bucket_html4_106, ht_bucket_empty, - ht_bucket_html4_108, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_10D, ht_bucket_html4_10E, ht_bucket_html4_10F, - ht_bucket_empty, ht_bucket_html4_111, ht_bucket_empty, ht_bucket_html4_113, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_117, - ht_bucket_html4_118, ht_bucket_empty, ht_bucket_html4_11A, ht_bucket_html4_11B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_11E, ht_bucket_html4_11F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_125, ht_bucket_html4_126, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_12E, ht_bucket_html4_12F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_135, ht_bucket_html4_136, ht_bucket_empty, - ht_bucket_html4_138, ht_bucket_empty, ht_bucket_html4_13A, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_13F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_143, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_149, ht_bucket_empty, ht_bucket_html4_14B, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_14F, - ht_bucket_html4_150, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_153, - ht_bucket_html4_154, ht_bucket_html4_155, ht_bucket_html4_156, ht_bucket_empty, - ht_bucket_html4_158, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_15C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_15F, - ht_bucket_html4_160, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_163, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_166, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_16B, - ht_bucket_html4_16C, ht_bucket_empty, ht_bucket_html4_16E, ht_bucket_html4_16F, - ht_bucket_html4_170, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_173, - ht_bucket_empty, ht_bucket_html4_175, ht_bucket_html4_176, ht_bucket_empty, - ht_bucket_html4_178, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_17C, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_17F, - ht_bucket_empty, ht_bucket_html4_181, ht_bucket_empty, ht_bucket_html4_183, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_186, ht_bucket_html4_187, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_18C, ht_bucket_html4_18D, ht_bucket_html4_18E, ht_bucket_html4_18F, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_194, ht_bucket_empty, ht_bucket_html4_196, ht_bucket_html4_197, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_19A, ht_bucket_empty, - ht_bucket_html4_19C, ht_bucket_html4_19D, ht_bucket_empty, ht_bucket_html4_19F, - ht_bucket_html4_1A0, ht_bucket_html4_1A1, ht_bucket_html4_1A2, ht_bucket_empty, - ht_bucket_html4_1A4, ht_bucket_empty, ht_bucket_html4_1A6, ht_bucket_html4_1A7, - ht_bucket_html4_1A8, ht_bucket_html4_1A9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_1AC, ht_bucket_empty, ht_bucket_html4_1AE, ht_bucket_html4_1AF, - ht_bucket_html4_1B0, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_1B5, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_1B9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_1BC, ht_bucket_empty, ht_bucket_html4_1BE, ht_bucket_html4_1BF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_1C2, ht_bucket_empty, - ht_bucket_html4_1C4, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_1C9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_1CC, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_1CF, - ht_bucket_html4_1D0, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_html4_1D4, ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_1D7, - ht_bucket_html4_1D8, ht_bucket_html4_1D9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_1DD, ht_bucket_empty, ht_bucket_html4_1DF, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_html4_1E6, ht_bucket_empty, - ht_bucket_html4_1E8, ht_bucket_html4_1E9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_html4_1ED, ht_bucket_empty, ht_bucket_html4_1EF, - ht_bucket_empty, ht_bucket_html4_1F1, ht_bucket_html4_1F2, ht_bucket_html4_1F3, - ht_bucket_html4_1F4, ht_bucket_empty, ht_bucket_html4_1F6, ht_bucket_empty, - ht_bucket_html4_1F8, ht_bucket_html4_1F9, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, -}; - -static const entity_ht ent_ht_html4 = { - 0x200, - ht_buckets_html4 -}; - -/* end of HTML 4.01 hash table for entity -> codepoint }}} */ - -/* {{{ Start of Basic entities (no apos) table for codepoint -> entity */ - -static const entity_stage3_row stage3_table_be_noapos_00000[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"quot", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"amp", 3} } }, {0, { {"#039", 4} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"lt", 2} } }, {0, { {NULL, 0} } }, {0, { {"gt", 2} } }, {0, { {NULL, 0} } }, -}; - -/* {{{ Basic entities (no apos) hash table for entity -> codepoint */ - -static const entity_cp_map ht_bucket_be_noapos_000[] = { {"gt", 2, 0x0003E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_be_noapos_003[] = { {"amp", 3, 0x00026, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_be_noapos_004[] = { {"#039", 4, 0x00027, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_be_noapos_005[] = { {"lt", 2, 0x0003C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_be_noapos_00E[] = { {"quot", 4, 0x00022, 0}, {NULL, 0, 0, 0} }; - -static const entity_cp_map *const ht_buckets_be_noapos[] = { - ht_bucket_be_noapos_000, ht_bucket_empty, ht_bucket_empty, ht_bucket_be_noapos_003, - ht_bucket_be_noapos_004, ht_bucket_be_noapos_005, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_be_noapos_00E, ht_bucket_empty, -}; - -static const entity_ht ent_ht_be_noapos = { - 0x10, - ht_buckets_be_noapos -}; - -/* end of Basic entities (no apos) hash table for entity -> codepoint }}} */ - -/* {{{ Start of Basic entities (with apos) table for codepoint -> entity */ - -static const entity_stage3_row stage3_table_be_apos_00000[] = { - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"quot", 4} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {"amp", 3} } }, {0, { {"apos", 4} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, {0, { {NULL, 0} } }, - {0, { {"lt", 2} } }, {0, { {NULL, 0} } }, {0, { {"gt", 2} } }, {0, { {NULL, 0} } }, -}; - -/* {{{ Basic entities (with apos) hash table for entity -> codepoint */ - -static const entity_cp_map ht_bucket_be_apos_000[] = { {"gt", 2, 0x0003E, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_be_apos_003[] = { {"amp", 3, 0x00026, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_be_apos_005[] = { {"lt", 2, 0x0003C, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_be_apos_008[] = { {"apos", 4, 0x00027, 0}, {NULL, 0, 0, 0} }; -static const entity_cp_map ht_bucket_be_apos_00E[] = { {"quot", 4, 0x00022, 0}, {NULL, 0, 0, 0} }; - -static const entity_cp_map *const ht_buckets_be_apos[] = { - ht_bucket_be_apos_000, ht_bucket_empty, ht_bucket_empty, ht_bucket_be_apos_003, - ht_bucket_empty, ht_bucket_be_apos_005, ht_bucket_empty, ht_bucket_empty, - ht_bucket_be_apos_008, ht_bucket_empty, ht_bucket_empty, ht_bucket_empty, - ht_bucket_empty, ht_bucket_empty, ht_bucket_be_apos_00E, ht_bucket_empty, -}; - -static const entity_ht ent_ht_be_apos = { - 0x10, - ht_buckets_be_apos -}; - -/* end of Basic entities (with apos) hash table for entity -> codepoint }}} */ - -#endif /* HTML_TABLES_H */ diff --git a/7.4.27/mac/include/php/ext/standard/info.h b/7.4.27/mac/include/php/ext/standard/info.h deleted file mode 100644 index 479e547..0000000 --- a/7.4.27/mac/include/php/ext/standard/info.h +++ /dev/null @@ -1,85 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Rasmus Lerdorf | - | Zeev Suraski | - | Colin Viebrock | - +----------------------------------------------------------------------+ -*/ - -#ifndef INFO_H -#define INFO_H - -#define PHP_ENTRY_NAME_COLOR "#ccf" -#define PHP_CONTENTS_COLOR "#ccc" -#define PHP_HEADER_COLOR "#99c" - -#define PHP_INFO_GENERAL (1<<0) -#define PHP_INFO_CREDITS (1<<1) -#define PHP_INFO_CONFIGURATION (1<<2) -#define PHP_INFO_MODULES (1<<3) -#define PHP_INFO_ENVIRONMENT (1<<4) -#define PHP_INFO_VARIABLES (1<<5) -#define PHP_INFO_LICENSE (1<<6) -#define PHP_INFO_ALL 0xFFFFFFFF - -#ifndef HAVE_CREDITS_DEFS -#define HAVE_CREDITS_DEFS - -#define PHP_CREDITS_GROUP (1<<0) -#define PHP_CREDITS_GENERAL (1<<1) -#define PHP_CREDITS_SAPI (1<<2) -#define PHP_CREDITS_MODULES (1<<3) -#define PHP_CREDITS_DOCS (1<<4) -#define PHP_CREDITS_FULLPAGE (1<<5) -#define PHP_CREDITS_QA (1<<6) -#define PHP_CREDITS_WEB (1<<7) -#define PHP_CREDITS_ALL 0xFFFFFFFF - -#endif /* HAVE_CREDITS_DEFS */ - -#define PHP_LOGO_DATA_URI "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHkAAABACAYAAAA+j9gsAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAD4BJREFUeNrsnXtwXFUdx8/dBGihmE21QCrQDY6oZZykon/gY5qizjgM2KQMfzFAOioOA5KEh+j4R9oZH7zT6MAMKrNphZFSQreKHRgZmspLHSCJ2Co6tBtJk7Zps7tJs5t95F5/33PvWU4293F29ybdlPzaM3df2XPv+Zzf4/zOuWc1tkjl+T0HQ3SQC6SBSlD6WKN4rusGm9F1ps/o5mPriOf8dd0YoNfi0nt4ntB1PT4zYwzQkf3kR9/sW4xtpS0CmE0SyPUFUJXFMIxZcM0jAZ4xrKMudQT7963HBF0n6EaUjkP0vI9K9OEHWqJLkNW1s8mC2WgVTwGAqWTafJzTWTKZmQuZ/k1MpAi2+eys6mpWfVaAPzcILu8EVKoCAaYFtPxrAXo8qyNwzZc7gSgzgN9Hx0Ecn3j8xr4lyHOhNrlpaJIgptM5DjCdzrJ0Jmce6bWFkOpqs0MErA4gXIBuAmY53gFmOPCcdaTXCbq+n16PPLXjewMfGcgEttECeouTpk5MplhyKsPBTiXNYyULtwIW7Cx1vlwuJyDLR9L0mQiVPb27fhA54yBbGttMpc1OWwF1cmKaH2FSF7vAjGezOZZJZ9j0dIZlMhnuRiToMO0c+N4X7oksasgEt9XS2KZCHzoem2Ixq5zpAuDTqTR14FMslZyepeEI4Ogj26n0vLj33uiigExgMWRpt+CGCsEePZqoePM738BPTaJzT7CpU0nu1yXpAXCC3VeRkCW4bfJYFZo6dmJyQTW2tvZc1nb719iyZWc5fmZ6Osu6H3uVzit52oBnMll2YizGxk8muFZLAshb/YKtzQdcaO3Y2CQ7eiy+YNGvLN+4+nJetm3bxhKJxJz316xZw1pbW9kLew+w1944XBEaPj6eYCeOx1gqNe07bK1MwIDbKcOFOR49GuePT5fcfOMX2drPXcQ0zf7y2tvbWVdXF/v1k2+yQ4dPVpQ5P0Um/NjoCX6UBMFZR6k+u7qMYVBYDIEqBW7eXAfPZX19zp2/oaGBHysNMGTFinPZik9fWggbI5Omb13zUDeB3lLsdwaK/YPeyAFU0i8Aw9/2Dwyx4SPjFQEYUlf3MTYw4Jx7CIVCbHR0oqIDNMD+FMG+ZE0dO/tsHlvAWnYS6H4qjfMC+Zld/wg92/tuv2WeeYT87j+H2aFDxysGLuSy+o/z49DQkONnmpqa2MjRyoYsZOXKGnb5Z+vZqlUrxUsAvI9At/oK+elnBpoNw+Dai9TekSMxDrgSh0KrSYshTprc2NhoRf1JtlikqirAVl98AddsSavDBDrsC+QdT7/TSoB344tzOZ39+70RbporVerqasyw1MEnC8iV6I9VTDi0uqbmfPFSq2W+gyUHXuEdb3WR5rab5jnD3i/BNMN8ChNaqsTiKa55KmBWX+Tuj0XQdQVF307nhTH0CPls+O0UPbaT5TQG/8qX68u6LpV67LQ6dNknaYgaYyPDx2TzvYGCsnhRkH8b/rsF2GDj1MCInkvxvRjOuCUlipWD/zrKx7ZOwBF0vfSSM2ShyaqAAOC1Nw+zt9/5YNbrN1zfwIdpfgnqebv/A6pnWAn4qlW1HPgHQ6OeoG3N9RO/+StMdDtmV2LxJPfBpQCGfwTgrVu38jFrKaW2tpZt2LCBdXR0sEgkwhv21u9cxQsyW3ZB1+DgoOM54btU6tu8eTPr6elhy5fr7IZNDey+e76e9/fCLcAllHpdKKinpaUlX8+111xB9VzNrYxqUAY/XVVVJYMOekLu2fFGM8VWYQRYiYkU9bD4vPlHFYnH4/zvkb1CgwACHgMoUpdyw3sFXcXUh4YHaNSHDqaxdL5jwVTXBpeXVY9oF3RcUQ+O09NT7Cayfld+4RJlP42gTIq8w66Qf/X4a6FTSSMMDcaE/NhYecMM+MdyG90OAhodWoAGkTUaSZByO5WdiA4GqwStrrM6k5vFKEXQserr63l7oR5V0NBojKctaSZtbneErOtGmFxwkGewjk0UzpCUlJSIRqMcjN8CkHLDqyRByq0PEGBBhDmdj7rQVujAaLfrrlk7xyW5gUaxpEtOmOQDr0e799NYmDVBi0+OT7FcbsaXxEQk8qprEBQMBm0vVKUBRcNjskFE8W71lSt79uzhda1d6w4ZGTUUp3NWAQ3TvW/fPvbVq+rZH/ceULOcF1/I06CY3QJohCCzNJnYdgEwwvpUKuNbUsLNpO3evZtfSGHp7+/nS2pw3LLFPVWLoA5yHQUtXvXFYjH+vU4F5yOibzsRUL38MTqC3XWh8GCWziMcDjt2BNEZUIfoUOpJkwvziT3S5ua8Jj/4yD5E0yERbPkhKv4RF4mhkN1wCMHN2rWfYZ2dnWz9+vXchNkJzBoaQ8Bxqg91wWo41YdO2dzczD+3bt06Rw0rBG4nOF8oi9M0Jsw9OgLqQ124BifLgeuHyVbN0NXUrODBmDWxgRR0pNrUYqMNgDOZGZbNzvgCuc4j0kX+GPJ2//CcMagQmKkbrm/knwVEp++SIXulM1+nhj9AY207QRDnpsnye24WA59DkuPlV/5j+z5eB2hE0W1tbTyQdNJmDpksRzFp2E9csFJAboRvDvz8gZdJgw2ek55KZphfAv+Inu8UdKnmkEUHQK93EjEZ4Rbkifq8JiactEpYAy9Nli2Gm6CjIZPn1qlKFWizleOG3BIwdKNZ+KRMxr9VHKvr1NKLXo2BhlAVFRPq1qlWW6MBr3NWyY2rTGXO5ySJlN9uDuiGsV7XTVPtl8CHYGizf/9+V5Om0hAwVV4ahuU8qia03HP26kyqFkMOTudDzjs/P/QKBUiBYa5ZNucfZJUkCG/0IhpCxYyqBF3lnLOII8q1GKqdStQ3rTh5MStwXX5O/nE1metGQzPHUH6JatA1OppQ8u1eUbpX44tO4GY5vM5Z9sduFgOfG1GwUOK6VFzaSAmrWCSfzGCuuT/O+bi6QwRdTtqXN2keJ4/ejgkJ5HedRARkbkGe6ARulgMWQ+Wc3cDAWohhoZdcue7ifJ7crfP6Me8dELd0Mv8U2begC2k9SHd3t+NnNm7cqKwRbiYUkykqvlZlmOYVLIq5bHRep46JzotOc9BhuFc0ZHGLph+CJIaXr1FZSIfxsdBiN1+LpALEK2By61Aqs0rwtV7DNBU3BMCYixYTLU6C8bM5hBwum0k1mesBpmPtlj+qXFenFsAgCVLon9DYeIxUnmh05HCdBIkCVRP6ussiepVZJZXIutCHwt2I0YGY2Kiz3AIyeG5aLNooVULQBbHy1/nAK2oEtEanheil+GO3aFg0FnwSilNC4q6OrXzywc0XCy1WMaFu/tgrCBLRuWpHuP+n1zqmRXFN0GAnwKgHeW1E1C/86UDJHFKptATZMPZTafbLXHtN3OPixKRC4ev4GwB2Gy6JxhQNEYul+KoKp79RMaGqKzy9ovzt27c7pidVZtYAGJMYOP7u6bdK1mLI1GQ+/ogSZBahwKuLO2jSZt0odw65xrUhAMNrZskLsGiIXz72F3bTjV+ixvtbWcMQr3NWCbog5VyXAIy63PLrqpJITIqHkcD9P7suSiYbG53wvTLKDbr8WBbjZqIF4F3PD3ItRn1eQd5CBF3lCM5RAIYfVp0/dgZ8SvbJ2/l8MmlvNw+8qJTjm+drWQwaAXO9KMuWncc1GBMXKkGeV/pU5ZxFIsTvzovOCu3HvDnOE7NTu3rLr+PE8fy6+IEX9947YM4n/+LbPT/88R8QqoYAuVSDrZLFKcYso2AcLBIeGDPu6h3M+yqvIE/4Y6w4LdUfi+jcr86L75KvC9+PcbVfd1hCi6U7Innwk1/+Q5rcoetsdyBg3s9aCmivBsNFifGfG9zCJUFiztmpEXAbqhMgr6SLWBPu9R1enRfm1ktrC6cVYWH+/Mqg43x6sYK1edaCex7vkRZHZkF+6P6NkXvvi/TpLNBUaqTtdcsoLtIrVTcem2EHDh7m2uq0ikMINBvafOmazzt+BkGMW9CF70DndPsOaJqb38Y1oXjdCYHOiqwbPofrKid6thMAlnxxPtMy6w4K0ubNhq73U5wd5PtVleCTd+50D2CEafLloqixyv0ufMcOGq64CVaMYN2119gfAdPpuscKOxWgCMDwxfm0pvzBhx9siRLoFt3ca7Ikf+x2yygaYzHdTSi7IT9y8fMJ2Lpdhg+ZCPA2+f05d1A88mBLHzQaoA1dL6ohVLJGi+1uQj8XQMyHIMgaGT6eDxuozMkD294LRaB7CPI27DLHQSskSFRvGa30O/zndF4fF0DMhwa//9//iZ2DcILqN7xBHn1oUweNn7eJ3WO9QHvdMlrMsphKEj8XQPgpuHVVMtGOgF0hC9CGTqbb2kHOzXx73aKiuiymEv2x22ICMYYeWSALBQ7RQ0fkoZIr4DnRtS3ohzf1dNzTG9d0PcwMLahZO8UyKTMm38wteratSVtkplq4oWj0PcfrEinPhYg14H+hvdIwCVs1bvb6O+UBMYFGl90d0LRGLRDgoHEUwYnXDniQStocTVUwfPLaKQGA/RoWOmkvtnsaG8unK+PWMKlH5e+Lznp03N27RdO0TkxmYNZKszYBlyfI3RpjsQkmMOo8ls4Wsx1EKcEVAEvayyNoeRzsO2RI+93PNRLesGYtNpBhL4l/prlgZz5ob0mbtZVFhWC301d0EuQgAHPgS7D9hssTHKyMbRfLptF213NBDRuoaqxNA2yh2VUBDnxJ1M1yRW6gOgt2x64gqXK7ht1yOWyW1+wl7bYXvhUygQXgit4KuVDuBGzSbA2bmmtayNzpRgJOGu7XosHFChZzvrGTiUKt5UMiVsmbmtsCb3+2lZmwm3hFNsA/CiYdKyfhYx3Aws8urp8nsJM72naGCG8zYwZMecjk/WHVVRbsMwU6tBVQsWJS2sNDlrgVTO0RE/vzKQtuN2+/85k5PxlUaL75D3BZwKss+JUqSFRAO/F7Eqlkmj+2gbrgYE8rZFluu+P3pOGsyWCG/Y9/GR8exC+vYfc5flxgzRdDGsDEz/8AJsxwQcBUKPCtmKOMFJO8OKMgF8r3b3sKkAm69TN+2OZCAm5ID/g9XPypwX29ufWgudq0urrKes/8nPkxgy1bdg6z/or/SFc2mzV/xs+6HwySTmdYJp2dpaWKEregYrVfn9/B0xkD2U6+e+sOaHqImTfLrycUOIZM1hJwC3oemPXbi/y5PnsrJ136bUa8pxu69BklmANWwDRkgR1wmwVaglyi3Nz6JLQ+ZG5NxQsgNdAhmIfJN7wxgoWg9fxzPQ+c/g9YAIXgeUKCyipJO4uR/wswAOIwB/5IgxvbAAAAAElFTkSuQmCC" -#define PHP_EGG_LOGO_DATA_URI "data:image/png;base64,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" -#define ZEND_LOGO_DATA_URI "data:image/png;base64,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" - -BEGIN_EXTERN_C() -PHP_FUNCTION(phpversion); -PHP_FUNCTION(phpinfo); -PHP_FUNCTION(phpcredits); -PHP_FUNCTION(php_sapi_name); -PHP_FUNCTION(php_uname); -PHP_FUNCTION(php_ini_scanned_files); -PHP_FUNCTION(php_ini_loaded_file); -PHPAPI zend_string *php_info_html_esc(char *string); -PHPAPI void php_info_html_esc_write(char *string, int str_len); -PHPAPI void php_print_info_htmlhead(void); -PHPAPI void php_print_info(int flag); -PHPAPI void php_print_style(void); -PHPAPI void php_info_print_style(void); -PHPAPI void php_info_print_table_colspan_header(int num_cols, char *header); -PHPAPI void php_info_print_table_header(int num_cols, ...); -PHPAPI void php_info_print_table_row(int num_cols, ...); -PHPAPI void php_info_print_table_row_ex(int num_cols, const char *, ...); -PHPAPI void php_info_print_table_start(void); -PHPAPI void php_info_print_table_end(void); -PHPAPI void php_info_print_box_start(int bg); -PHPAPI void php_info_print_box_end(void); -PHPAPI void php_info_print_hr(void); -PHPAPI void php_info_print_module(zend_module_entry *module); -PHPAPI zend_string *php_get_uname(char mode); - -void register_phpinfo_constants(INIT_FUNC_ARGS); -END_EXTERN_C() - -#endif /* INFO_H */ diff --git a/7.4.27/mac/include/php/ext/standard/md5.h b/7.4.27/mac/include/php/ext/standard/md5.h deleted file mode 100644 index 76bb08c..0000000 --- a/7.4.27/mac/include/php/ext/standard/md5.h +++ /dev/null @@ -1,53 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Alexander Peslyak (Solar Designer) | - | Rasmus Lerdorf | - +----------------------------------------------------------------------+ -*/ - -#ifndef MD5_H -#define MD5_H - -PHPAPI void make_digest(char *md5str, const unsigned char *digest); -PHPAPI void make_digest_ex(char *md5str, const unsigned char *digest, int len); - -PHP_NAMED_FUNCTION(php_if_md5); -PHP_NAMED_FUNCTION(php_if_md5_file); - -#include "ext/standard/basic_functions.h" - -/* - * This is an OpenSSL-compatible implementation of the RSA Data Security, - * Inc. MD5 Message-Digest Algorithm (RFC 1321). - * - * Written by Solar Designer in 2001, and placed - * in the public domain. There's absolutely no warranty. - * - * See md5.c for more information. - */ - -/* MD5 context. */ -typedef struct { - uint32_t lo, hi; - uint32_t a, b, c, d; - unsigned char buffer[64]; - uint32_t block[16]; -} PHP_MD5_CTX; - -PHPAPI void PHP_MD5Init(PHP_MD5_CTX *ctx); -PHPAPI void PHP_MD5Update(PHP_MD5_CTX *ctx, const void *data, size_t size); -PHPAPI void PHP_MD5Final(unsigned char *result, PHP_MD5_CTX *ctx); - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/microtime.h b/7.4.27/mac/include/php/ext/standard/microtime.h deleted file mode 100644 index 59fb3e4..0000000 --- a/7.4.27/mac/include/php/ext/standard/microtime.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Paul Panotzki - Bunyip Information Systems | - +----------------------------------------------------------------------+ -*/ - -#ifndef MICROTIME_H -#define MICROTIME_H - -#ifdef HAVE_GETTIMEOFDAY -PHP_FUNCTION(microtime); -PHP_FUNCTION(gettimeofday); -#endif -#ifdef HAVE_GETRUSAGE -PHP_FUNCTION(getrusage); -#endif - -#endif /* MICROTIME_H */ diff --git a/7.4.27/mac/include/php/ext/standard/pack.h b/7.4.27/mac/include/php/ext/standard/pack.h deleted file mode 100644 index 3deeb1f..0000000 --- a/7.4.27/mac/include/php/ext/standard/pack.h +++ /dev/null @@ -1,26 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Rasmus Lerdorf | - +----------------------------------------------------------------------+ -*/ - -#ifndef PACK_H -#define PACK_H - -PHP_MINIT_FUNCTION(pack); -PHP_FUNCTION(pack); -PHP_FUNCTION(unpack); - -#endif /* PACK_H */ diff --git a/7.4.27/mac/include/php/ext/standard/pageinfo.h b/7.4.27/mac/include/php/ext/standard/pageinfo.h deleted file mode 100644 index db0924c..0000000 --- a/7.4.27/mac/include/php/ext/standard/pageinfo.h +++ /dev/null @@ -1,33 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Jim Winstead | - +----------------------------------------------------------------------+ -*/ - -#ifndef PAGEINFO_H -#define PAGEINFO_H - -PHP_FUNCTION(getmyuid); -PHP_FUNCTION(getmygid); -PHP_FUNCTION(getmypid); -PHP_FUNCTION(getmyinode); -PHP_FUNCTION(getlastmod); - -PHPAPI void php_statpage(void); -PHPAPI time_t php_getlastmod(void); -extern zend_long php_getuid(void); -extern zend_long php_getgid(void); - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/php_array.h b/7.4.27/mac/include/php/ext/standard/php_array.h deleted file mode 100644 index e15b116..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_array.h +++ /dev/null @@ -1,133 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - | Rasmus Lerdorf | - | Andrei Zmievski | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_ARRAY_H -#define PHP_ARRAY_H - -PHP_MINIT_FUNCTION(array); -PHP_MSHUTDOWN_FUNCTION(array); - -PHP_FUNCTION(ksort); -PHP_FUNCTION(krsort); -PHP_FUNCTION(natsort); -PHP_FUNCTION(natcasesort); -PHP_FUNCTION(asort); -PHP_FUNCTION(arsort); -PHP_FUNCTION(sort); -PHP_FUNCTION(rsort); -PHP_FUNCTION(usort); -PHP_FUNCTION(uasort); -PHP_FUNCTION(uksort); -PHP_FUNCTION(array_walk); -PHP_FUNCTION(array_walk_recursive); -PHP_FUNCTION(count); -PHP_FUNCTION(end); -PHP_FUNCTION(prev); -PHP_FUNCTION(next); -PHP_FUNCTION(reset); -PHP_FUNCTION(current); -PHP_FUNCTION(key); -PHP_FUNCTION(min); -PHP_FUNCTION(max); -PHP_FUNCTION(in_array); -PHP_FUNCTION(array_search); -PHP_FUNCTION(extract); -PHP_FUNCTION(compact); -PHP_FUNCTION(array_fill); -PHP_FUNCTION(array_fill_keys); -PHP_FUNCTION(range); -PHP_FUNCTION(shuffle); -PHP_FUNCTION(array_multisort); -PHP_FUNCTION(array_push); -PHP_FUNCTION(array_pop); -PHP_FUNCTION(array_shift); -PHP_FUNCTION(array_unshift); -PHP_FUNCTION(array_splice); -PHP_FUNCTION(array_slice); -PHP_FUNCTION(array_merge); -PHP_FUNCTION(array_merge_recursive); -PHP_FUNCTION(array_replace); -PHP_FUNCTION(array_replace_recursive); -PHP_FUNCTION(array_keys); -PHP_FUNCTION(array_key_first); -PHP_FUNCTION(array_key_last); -PHP_FUNCTION(array_values); -PHP_FUNCTION(array_count_values); -PHP_FUNCTION(array_column); -PHP_FUNCTION(array_reverse); -PHP_FUNCTION(array_reduce); -PHP_FUNCTION(array_pad); -PHP_FUNCTION(array_flip); -PHP_FUNCTION(array_change_key_case); -PHP_FUNCTION(array_rand); -PHP_FUNCTION(array_unique); -PHP_FUNCTION(array_intersect); -PHP_FUNCTION(array_intersect_key); -PHP_FUNCTION(array_intersect_ukey); -PHP_FUNCTION(array_uintersect); -PHP_FUNCTION(array_intersect_assoc); -PHP_FUNCTION(array_uintersect_assoc); -PHP_FUNCTION(array_intersect_uassoc); -PHP_FUNCTION(array_uintersect_uassoc); -PHP_FUNCTION(array_diff); -PHP_FUNCTION(array_diff_key); -PHP_FUNCTION(array_diff_ukey); -PHP_FUNCTION(array_udiff); -PHP_FUNCTION(array_diff_assoc); -PHP_FUNCTION(array_udiff_assoc); -PHP_FUNCTION(array_diff_uassoc); -PHP_FUNCTION(array_udiff_uassoc); -PHP_FUNCTION(array_sum); -PHP_FUNCTION(array_product); -PHP_FUNCTION(array_filter); -PHP_FUNCTION(array_map); -PHP_FUNCTION(array_key_exists); -PHP_FUNCTION(array_chunk); -PHP_FUNCTION(array_combine); - -PHPAPI int php_array_merge(HashTable *dest, HashTable *src); -PHPAPI int php_array_merge_recursive(HashTable *dest, HashTable *src); -PHPAPI int php_array_replace_recursive(HashTable *dest, HashTable *src); -PHPAPI int php_multisort_compare(const void *a, const void *b); -PHPAPI zend_long php_count_recursive(HashTable *ht); - -#define PHP_SORT_REGULAR 0 -#define PHP_SORT_NUMERIC 1 -#define PHP_SORT_STRING 2 -#define PHP_SORT_DESC 3 -#define PHP_SORT_ASC 4 -#define PHP_SORT_LOCALE_STRING 5 -#define PHP_SORT_NATURAL 6 -#define PHP_SORT_FLAG_CASE 8 - -#define COUNT_NORMAL 0 -#define COUNT_RECURSIVE 1 - -#define ARRAY_FILTER_USE_BOTH 1 -#define ARRAY_FILTER_USE_KEY 2 - -ZEND_BEGIN_MODULE_GLOBALS(array) - compare_func_t *multisort_func; -ZEND_END_MODULE_GLOBALS(array) - -#define ARRAYG(v) ZEND_MODULE_GLOBALS_ACCESSOR(array, v) - -#endif /* PHP_ARRAY_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_assert.h b/7.4.27/mac/include/php/ext/standard/php_assert.h deleted file mode 100644 index 0cc10f7..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_assert.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Thies C. Arntzen | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_ASSERT_H -#define PHP_ASSERT_H - -PHP_MINIT_FUNCTION(assert); -PHP_MSHUTDOWN_FUNCTION(assert); -PHP_RINIT_FUNCTION(assert); -PHP_RSHUTDOWN_FUNCTION(assert); -PHP_MINFO_FUNCTION(assert); -PHP_FUNCTION(assert); -PHP_FUNCTION(assert_options); - -#endif /* PHP_ASSERT_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_browscap.h b/7.4.27/mac/include/php/ext/standard/php_browscap.h deleted file mode 100644 index a2add82..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_browscap.h +++ /dev/null @@ -1,27 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_BROWSCAP_H -#define PHP_BROWSCAP_H - -PHP_MINIT_FUNCTION(browscap); -PHP_MSHUTDOWN_FUNCTION(browscap); - -PHP_FUNCTION(get_browser); - -#endif /* PHP_BROWSCAP_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_crypt.h b/7.4.27/mac/include/php/ext/standard/php_crypt.h deleted file mode 100644 index 38410c9..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_crypt.h +++ /dev/null @@ -1,30 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Stig Bakken | - | Zeev Suraski | - | Rasmus Lerdorf | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_CRYPT_H -#define PHP_CRYPT_H - -PHPAPI zend_string *php_crypt(const char *password, const int pass_len, const char *salt, int salt_len, zend_bool quiet); -PHP_FUNCTION(crypt); -PHP_MINIT_FUNCTION(crypt); -PHP_MSHUTDOWN_FUNCTION(crypt); -PHP_RINIT_FUNCTION(crypt); - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/php_crypt_r.h b/7.4.27/mac/include/php/ext/standard/php_crypt_r.h deleted file mode 100644 index e5985e1..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_crypt_r.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Pierre Alain Joye | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_DIR_H -#define PHP_DIR_H - -/* directory functions */ -PHP_MINIT_FUNCTION(dir); -PHP_RINIT_FUNCTION(dir); -PHP_FUNCTION(opendir); -PHP_FUNCTION(closedir); -PHP_FUNCTION(chdir); -#if defined(HAVE_CHROOT) && !defined(ZTS) && ENABLE_CHROOT_FUNC -PHP_FUNCTION(chroot); -#endif -PHP_FUNCTION(getcwd); -PHP_FUNCTION(rewinddir); -PHP_NAMED_FUNCTION(php_if_readdir); -PHP_FUNCTION(getdir); -PHP_FUNCTION(glob); -PHP_FUNCTION(scandir); - -#define PHP_SCANDIR_SORT_ASCENDING 0 -#define PHP_SCANDIR_SORT_DESCENDING 1 -#define PHP_SCANDIR_SORT_NONE 2 - -#endif /* PHP_DIR_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_dns.h b/7.4.27/mac/include/php/ext/standard/php_dns.h deleted file mode 100644 index eee6d7a..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_dns.h +++ /dev/null @@ -1,88 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: The typical suspects | - | Marcus Boerger | - | Pollita | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_DNS_H -#define PHP_DNS_H - -#if defined(HAVE_DNS_SEARCH) -#define php_dns_search(res, dname, class, type, answer, anslen) \ - ((int)dns_search(res, dname, class, type, (char *) answer, anslen, (struct sockaddr *)&from, &fromsize)) -#define php_dns_free_handle(res) \ - dns_free(res) -#define php_dns_errno(handle) h_errno - -#elif defined(HAVE_RES_NSEARCH) -#define php_dns_search(res, dname, class, type, answer, anslen) \ - res_nsearch(res, dname, class, type, answer, anslen); -#if HAVE_RES_NDESTROY -#define php_dns_free_handle(res) \ - res_ndestroy(res); \ - php_dns_free_res(res) -#else -#define php_dns_free_handle(res) \ - res_nclose(res); \ - php_dns_free_res(res) -#endif -#define php_dns_errno(handle) handle->res_h_errno - -#elif defined(HAVE_RES_SEARCH) -#define php_dns_search(res, dname, class, type, answer, anslen) \ - res_search(dname, class, type, answer, anslen) -#define php_dns_free_handle(res) /* noop */ -#define php_dns_errno(handle) h_errno - -#endif - -#if defined(HAVE_DNS_SEARCH) || defined(HAVE_RES_NSEARCH) || defined(HAVE_RES_SEARCH) -#define HAVE_DNS_SEARCH_FUNC 1 -#endif - -#if HAVE_DNS_SEARCH_FUNC && HAVE_DN_EXPAND && HAVE_DN_SKIPNAME -#define HAVE_FULL_DNS_FUNCS 1 -#endif - -PHP_FUNCTION(gethostbyaddr); -PHP_FUNCTION(gethostbyname); -PHP_FUNCTION(gethostbynamel); - -#ifdef HAVE_GETHOSTNAME -PHP_FUNCTION(gethostname); -#endif - -#if defined(PHP_WIN32) || HAVE_DNS_SEARCH_FUNC -PHP_FUNCTION(dns_check_record); - -# if defined(PHP_WIN32) || HAVE_FULL_DNS_FUNCS -PHP_FUNCTION(dns_get_mx); -PHP_FUNCTION(dns_get_record); -PHP_MINIT_FUNCTION(dns); -# endif - -#endif /* defined(PHP_WIN32) || HAVE_DNS_SEARCH_FUNC */ - -#ifndef INT16SZ -#define INT16SZ 2 -#endif - -#ifndef INT32SZ -#define INT32SZ 4 -#endif - -#endif /* PHP_DNS_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_ext_syslog.h b/7.4.27/mac/include/php/ext/standard/php_ext_syslog.h deleted file mode 100644 index 3ae0789..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_ext_syslog.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Stig Sæther Bakken | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_EXT_SYSLOG_H -#define PHP_EXT_SYSLOG_H - -#ifdef HAVE_SYSLOG_H - -#include "php_syslog.h" - -PHP_MINIT_FUNCTION(syslog); -PHP_RINIT_FUNCTION(syslog); -#ifdef PHP_WIN32 -PHP_RSHUTDOWN_FUNCTION(syslog); -#endif -PHP_MSHUTDOWN_FUNCTION(syslog); - -PHP_FUNCTION(openlog); -PHP_FUNCTION(syslog); -PHP_FUNCTION(closelog); - -#endif - -#endif /* PHP_EXT_SYSLOG_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_filestat.h b/7.4.27/mac/include/php/ext/standard/php_filestat.h deleted file mode 100644 index 2b2e183..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_filestat.h +++ /dev/null @@ -1,105 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Jim Winstead | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_FILESTAT_H -#define PHP_FILESTAT_H - -PHP_RINIT_FUNCTION(filestat); -PHP_RSHUTDOWN_FUNCTION(filestat); - -PHP_FUNCTION(realpath_cache_size); -PHP_FUNCTION(realpath_cache_get); -PHP_FUNCTION(clearstatcache); -PHP_FUNCTION(fileatime); -PHP_FUNCTION(filectime); -PHP_FUNCTION(filegroup); -PHP_FUNCTION(fileinode); -PHP_FUNCTION(filemtime); -PHP_FUNCTION(fileowner); -PHP_FUNCTION(fileperms); -PHP_FUNCTION(filesize); -PHP_FUNCTION(filetype); -PHP_FUNCTION(is_writable); -PHP_FUNCTION(is_readable); -PHP_FUNCTION(is_executable); -PHP_FUNCTION(is_file); -PHP_FUNCTION(is_dir); -PHP_FUNCTION(is_link); -PHP_FUNCTION(file_exists); -PHP_NAMED_FUNCTION(php_if_stat); -PHP_NAMED_FUNCTION(php_if_lstat); -PHP_FUNCTION(disk_total_space); -PHP_FUNCTION(disk_free_space); -PHP_FUNCTION(chown); -PHP_FUNCTION(chgrp); -#if HAVE_LCHOWN -PHP_FUNCTION(lchown); -#endif -#if HAVE_LCHOWN -PHP_FUNCTION(lchgrp); -#endif -PHP_FUNCTION(chmod); -#if HAVE_UTIME -PHP_FUNCTION(touch); -#endif -PHP_FUNCTION(clearstatcache); - -#ifdef PHP_WIN32 -#define S_IRUSR S_IREAD -#define S_IWUSR S_IWRITE -#define S_IXUSR S_IEXEC -#define S_IRGRP S_IREAD -#define S_IWGRP S_IWRITE -#define S_IXGRP S_IEXEC -#define S_IROTH S_IREAD -#define S_IWOTH S_IWRITE -#define S_IXOTH S_IEXEC - -#undef getgid -#define getgroups(a, b) 0 -#define getgid() 1 -#define getuid() 1 -#endif - -/* Compatibility. */ -typedef size_t php_stat_len; - -PHPAPI void php_clear_stat_cache(zend_bool clear_realpath_cache, const char *filename, size_t filename_len); -PHPAPI void php_stat(const char *filename, size_t filename_length, int type, zval *return_value); - -/* Switches for various filestat functions: */ -#define FS_PERMS 0 -#define FS_INODE 1 -#define FS_SIZE 2 -#define FS_OWNER 3 -#define FS_GROUP 4 -#define FS_ATIME 5 -#define FS_MTIME 6 -#define FS_CTIME 7 -#define FS_TYPE 8 -#define FS_IS_W 9 -#define FS_IS_R 10 -#define FS_IS_X 11 -#define FS_IS_FILE 12 -#define FS_IS_DIR 13 -#define FS_IS_LINK 14 -#define FS_EXISTS 15 -#define FS_LSTAT 16 -#define FS_STAT 17 - -#endif /* PHP_FILESTAT_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_fopen_wrappers.h b/7.4.27/mac/include/php/ext/standard/php_fopen_wrappers.h deleted file mode 100644 index 3c49ab4..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_fopen_wrappers.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Rasmus Lerdorf | - | Jim Winstead | - | Hartmut Holzgraefe | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_FOPEN_WRAPPERS_H -#define PHP_FOPEN_WRAPPERS_H - -php_stream *php_stream_url_wrap_http(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC); -php_stream *php_stream_url_wrap_ftp(php_stream_wrapper *wrapper, const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC); -extern PHPAPI const php_stream_wrapper php_stream_http_wrapper; -extern PHPAPI const php_stream_wrapper php_stream_ftp_wrapper; -extern PHPAPI const php_stream_wrapper php_stream_php_wrapper; -extern PHPAPI /*const*/ php_stream_wrapper php_plain_files_wrapper; - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/php_ftok.h b/7.4.27/mac/include/php/ext/standard/php_ftok.h deleted file mode 100644 index 3f79fa5..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_ftok.h +++ /dev/null @@ -1,26 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Andrew Sitnikov | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_FTOK_H -#define PHP_FTOK_H - -#if HAVE_FTOK -PHP_FUNCTION(ftok); -#endif - -#endif /* PHP_FTOK_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_http.h b/7.4.27/mac/include/php/ext/standard/php_http.h deleted file mode 100644 index b8ce4b1..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_http.h +++ /dev/null @@ -1,34 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Sara Golemon | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_HTTP_H -#define PHP_HTTP_H - -#include "php.h" -#include "zend_smart_str.h" - -PHPAPI int php_url_encode_hash_ex(HashTable *ht, smart_str *formstr, - const char *num_prefix, size_t num_prefix_len, - const char *key_prefix, size_t key_prefix_len, - const char *key_suffix, size_t key_suffix_len, - zval *type, char *arg_sep, int enc_type); -#define php_url_encode_hash(ht, formstr) php_url_encode_hash_ex((ht), (formstr), NULL, 0, NULL, 0, NULL, 0, NULL) - -PHP_FUNCTION(http_build_query); - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/php_image.h b/7.4.27/mac/include/php/ext/standard/php_image.h deleted file mode 100644 index 5f9b07d..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_image.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Rasmus Lerdorf | - | Marcus Boerger | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_IMAGE_H -#define PHP_IMAGE_H - -PHP_FUNCTION(getimagesize); -PHP_FUNCTION(getimagesizefromstring); - -PHP_FUNCTION(image_type_to_mime_type); -PHP_FUNCTION(image_type_to_extension); - -/* {{{ enum image_filetype - This enum is used to have ext/standard/image.c and ext/exif/exif.c use - the same constants for file types. -*/ -typedef enum -{ IMAGE_FILETYPE_UNKNOWN=0, - IMAGE_FILETYPE_GIF=1, - IMAGE_FILETYPE_JPEG, - IMAGE_FILETYPE_PNG, - IMAGE_FILETYPE_SWF, - IMAGE_FILETYPE_PSD, - IMAGE_FILETYPE_BMP, - IMAGE_FILETYPE_TIFF_II, /* intel */ - IMAGE_FILETYPE_TIFF_MM, /* motorola */ - IMAGE_FILETYPE_JPC, - IMAGE_FILETYPE_JP2, - IMAGE_FILETYPE_JPX, - IMAGE_FILETYPE_JB2, - IMAGE_FILETYPE_SWC, - IMAGE_FILETYPE_IFF, - IMAGE_FILETYPE_WBMP, - /* IMAGE_FILETYPE_JPEG2000 is a userland alias for IMAGE_FILETYPE_JPC */ - IMAGE_FILETYPE_XBM, - IMAGE_FILETYPE_ICO, - IMAGE_FILETYPE_WEBP, -/* WHEN EXTENDING: PLEASE ALSO REGISTER IN image.c:PHP_MINIT_FUNCTION(imagetypes) */ - IMAGE_FILETYPE_COUNT -} image_filetype; -/* }}} */ - -PHP_MINIT_FUNCTION(imagetypes); - -PHPAPI int php_getimagetype(php_stream *stream, char *filetype); - -PHPAPI char * php_image_type_to_mime_type(int image_type); - -#endif /* PHP_IMAGE_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_incomplete_class.h b/7.4.27/mac/include/php/ext/standard/php_incomplete_class.h deleted file mode 100644 index d768f25..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_incomplete_class.h +++ /dev/null @@ -1,61 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_INCOMPLETE_CLASS_H -#define PHP_INCOMPLETE_CLASS_H - -#include "ext/standard/basic_functions.h" - -#define PHP_IC_ENTRY \ - BG(incomplete_class) - -#define PHP_SET_CLASS_ATTRIBUTES(struc) \ - /* OBJECTS_FIXME: Fix for new object model */ \ - if (Z_OBJCE_P(struc) == BG(incomplete_class)) { \ - class_name = php_lookup_class_name(struc); \ - if (!class_name) { \ - class_name = zend_string_init(INCOMPLETE_CLASS, sizeof(INCOMPLETE_CLASS) - 1, 0); \ - } \ - incomplete_class = 1; \ - } else { \ - class_name = zend_string_copy(Z_OBJCE_P(struc)->name); \ - } - -#define PHP_CLEANUP_CLASS_ATTRIBUTES() \ - zend_string_release_ex(class_name, 0) - -#define PHP_CLASS_ATTRIBUTES \ - zend_string *class_name; \ - zend_bool incomplete_class ZEND_ATTRIBUTE_UNUSED = 0 - -#define INCOMPLETE_CLASS "__PHP_Incomplete_Class" -#define MAGIC_MEMBER "__PHP_Incomplete_Class_Name" - -#ifdef __cplusplus -extern "C" { -#endif - -PHPAPI zend_class_entry *php_create_incomplete_class(void); -PHPAPI zend_string *php_lookup_class_name(zval *object); -PHPAPI void php_store_class_name(zval *object, const char *name, size_t len); - -#ifdef __cplusplus -}; -#endif - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/php_iptc.h b/7.4.27/mac/include/php/ext/standard/php_iptc.h deleted file mode 100644 index 1636cea..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_iptc.h +++ /dev/null @@ -1,25 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Thies C. Arntzen | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_IPTC_H -#define PHP_IPTC_H - -PHP_FUNCTION(iptcparse); -PHP_FUNCTION(iptcembed); - -#endif /* PHP_IPTC_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_lcg.h b/7.4.27/mac/include/php/ext/standard/php_lcg.h deleted file mode 100644 index f3d52f1..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_lcg.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_LCG_H -#define PHP_LCG_H - -#include "ext/standard/basic_functions.h" - -typedef struct { - int32_t s1; - int32_t s2; - int seeded; -} php_lcg_globals; - -PHPAPI double php_combined_lcg(void); -PHP_FUNCTION(lcg_value); - -PHP_MINIT_FUNCTION(lcg); - -#ifdef ZTS -#define LCG(v) ZEND_TSRMG(lcg_globals_id, php_lcg_globals *, v) -#else -#define LCG(v) (lcg_globals.v) -#endif - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/php_link.h b/7.4.27/mac/include/php/ext/standard/php_link.h deleted file mode 100644 index 4b20077..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_link.h +++ /dev/null @@ -1,31 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_LINK_H -#define PHP_LINK_H - -#if defined(HAVE_SYMLINK) || defined(PHP_WIN32) - -PHP_FUNCTION(link); -PHP_FUNCTION(readlink); -PHP_FUNCTION(linkinfo); -PHP_FUNCTION(symlink); - -#endif - -#endif /* PHP_LINK_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_mail.h b/7.4.27/mac/include/php/ext/standard/php_mail.h deleted file mode 100644 index 90e1497..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_mail.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Rasmus Lerdorf | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_MAIL_H -#define PHP_MAIL_H - -PHP_FUNCTION(mail); -PHP_FUNCTION(ezmlm_hash); - -PHP_MINFO_FUNCTION(mail); - -PHPAPI zend_string *php_mail_build_headers(zval *headers); -PHPAPI extern int php_mail(char *to, char *subject, char *message, char *headers, char *extra_cmd); - -#define PHP_MAIL_BUILD_HEADER_CHECK(target, s, key, val) \ -do { \ - if (Z_TYPE_P(val) == IS_STRING) { \ - php_mail_build_headers_elem(&s, key, val); \ - } else if (Z_TYPE_P(val) == IS_ARRAY) { \ - if (!strncasecmp(target, ZSTR_VAL(key), ZSTR_LEN(key))) { \ - php_error_docref(NULL, E_WARNING, "'%s' header must be at most one header. Array is passed for '%s'", target, target); \ - continue; \ - } \ - php_mail_build_headers_elems(&s, key, val); \ - } else { \ - php_error_docref(NULL, E_WARNING, "Extra header element '%s' cannot be other than string or array.", ZSTR_VAL(key)); \ - } \ -} while(0) - - -#define PHP_MAIL_BUILD_HEADER_DEFAULT(s, key, val) \ -do { \ - if (Z_TYPE_P(val) == IS_STRING) { \ - php_mail_build_headers_elem(&s, key, val); \ - } else if (Z_TYPE_P(val) == IS_ARRAY) { \ - php_mail_build_headers_elems(&s, key, val); \ - } else { \ - php_error_docref(NULL, E_WARNING, "Extra header element '%s' cannot be other than string or array.", ZSTR_VAL(key)); \ - } \ -} while(0) - - -#endif /* PHP_MAIL_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_math.h b/7.4.27/mac/include/php/ext/standard/php_math.h deleted file mode 100644 index 791a01c..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_math.h +++ /dev/null @@ -1,171 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Jim Winstead | - | Stig Sæther Bakken | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_MATH_H -#define PHP_MATH_H - -PHPAPI double _php_math_round(double, int, int); -PHPAPI zend_string *_php_math_number_format(double, int, char, char); -PHPAPI zend_string *_php_math_number_format_ex(double, int, char *, size_t, char *, size_t); -PHPAPI zend_string * _php_math_longtobase(zval *arg, int base); -PHPAPI zend_long _php_math_basetolong(zval *arg, int base); -PHPAPI int _php_math_basetozval(zval *arg, int base, zval *ret); -PHPAPI zend_string * _php_math_zvaltobase(zval *arg, int base); - -PHP_FUNCTION(sin); -PHP_FUNCTION(cos); -PHP_FUNCTION(tan); -PHP_FUNCTION(asin); -PHP_FUNCTION(acos); -PHP_FUNCTION(atan); -PHP_FUNCTION(atan2); -PHP_FUNCTION(pi); -PHP_FUNCTION(exp); -PHP_FUNCTION(log); -PHP_FUNCTION(log10); -PHP_FUNCTION(is_finite); -PHP_FUNCTION(is_infinite); -PHP_FUNCTION(is_nan); -PHP_FUNCTION(pow); -PHP_FUNCTION(sqrt); -PHP_FUNCTION(rand); -PHP_FUNCTION(mt_srand); -PHP_FUNCTION(mt_rand); -PHP_FUNCTION(mt_getrandmax); -PHP_FUNCTION(abs); -PHP_FUNCTION(ceil); -PHP_FUNCTION(floor); -PHP_FUNCTION(round); -PHP_FUNCTION(decbin); -PHP_FUNCTION(dechex); -PHP_FUNCTION(decoct); -PHP_FUNCTION(bindec); -PHP_FUNCTION(hexdec); -PHP_FUNCTION(octdec); -PHP_FUNCTION(base_convert); -PHP_FUNCTION(number_format); -PHP_FUNCTION(fmod); -PHP_FUNCTION(deg2rad); -PHP_FUNCTION(rad2deg); -PHP_FUNCTION(intdiv); - - /* - WARNING: these functions are expermental: they could change their names or - disappear in the next version of PHP! - */ -PHP_FUNCTION(hypot); -PHP_FUNCTION(expm1); -PHP_FUNCTION(log1p); - -PHP_FUNCTION(sinh); -PHP_FUNCTION(cosh); -PHP_FUNCTION(tanh); - -PHP_FUNCTION(asinh); -PHP_FUNCTION(acosh); -PHP_FUNCTION(atanh); - -#include - -#ifndef M_E -#define M_E 2.7182818284590452354 /* e */ -#endif - -#ifndef M_LOG2E -#define M_LOG2E 1.4426950408889634074 /* log_2 e */ -#endif - -#ifndef M_LOG10E -#define M_LOG10E 0.43429448190325182765 /* log_10 e */ -#endif - -#ifndef M_LN2 -#define M_LN2 0.69314718055994530942 /* log_e 2 */ -#endif - -#ifndef M_LN10 -#define M_LN10 2.30258509299404568402 /* log_e 10 */ -#endif - -#ifndef M_PI -#define M_PI 3.14159265358979323846 /* pi */ -#endif - -#ifndef M_PI_2 -#define M_PI_2 1.57079632679489661923 /* pi/2 */ -#endif - -#ifndef M_PI_4 -#define M_PI_4 0.78539816339744830962 /* pi/4 */ -#endif - -#ifndef M_1_PI -#define M_1_PI 0.31830988618379067154 /* 1/pi */ -#endif - -#ifndef M_2_PI -#define M_2_PI 0.63661977236758134308 /* 2/pi */ -#endif - -#ifndef M_SQRTPI -#define M_SQRTPI 1.77245385090551602729 /* sqrt(pi) */ -#endif - -#ifndef M_2_SQRTPI -#define M_2_SQRTPI 1.12837916709551257390 /* 2/sqrt(pi) */ -#endif - -#ifndef M_LNPI -#define M_LNPI 1.14472988584940017414 /* ln(pi) */ -#endif - -#ifndef M_EULER -#define M_EULER 0.57721566490153286061 /* Euler constant */ -#endif - -#ifndef M_SQRT2 -#define M_SQRT2 1.41421356237309504880 /* sqrt(2) */ -#endif - -#ifndef M_SQRT1_2 -#define M_SQRT1_2 0.70710678118654752440 /* 1/sqrt(2) */ -#endif - -#ifndef M_SQRT3 -#define M_SQRT3 1.73205080756887729352 /* sqrt(3) */ -#endif - -/* Define rounding modes (all are round-to-nearest) */ -#ifndef PHP_ROUND_HALF_UP -#define PHP_ROUND_HALF_UP 0x01 /* Arithmetic rounding, up == away from zero */ -#endif - -#ifndef PHP_ROUND_HALF_DOWN -#define PHP_ROUND_HALF_DOWN 0x02 /* Down == towards zero */ -#endif - -#ifndef PHP_ROUND_HALF_EVEN -#define PHP_ROUND_HALF_EVEN 0x03 /* Banker's rounding */ -#endif - -#ifndef PHP_ROUND_HALF_ODD -#define PHP_ROUND_HALF_ODD 0x04 -#endif - -#endif /* PHP_MATH_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_metaphone.h b/7.4.27/mac/include/php/ext/standard/php_metaphone.h deleted file mode 100644 index 7543b4e..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_metaphone.h +++ /dev/null @@ -1,24 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Thies C. Arntzen | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_METAPHONE_H -#define PHP_METAPHONE_H - -PHP_FUNCTION(metaphone); - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/php_mt_rand.h b/7.4.27/mac/include/php/ext/standard/php_mt_rand.h deleted file mode 100644 index 9446421..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_mt_rand.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Rasmus Lerdorf | - | Zeev Suraski | - | Pedro Melo | - | Sterling Hughes | - | | - | Based on code from: Shawn Cokus | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_MT_RAND_H -#define PHP_MT_RAND_H - -#include "php_lcg.h" -#include "php_rand.h" - -#define PHP_MT_RAND_MAX ((zend_long) (0x7FFFFFFF)) /* (1<<31) - 1 */ - -#define MT_RAND_MT19937 0 -#define MT_RAND_PHP 1 - -PHPAPI void php_mt_srand(uint32_t seed); -PHPAPI uint32_t php_mt_rand(void); -PHPAPI zend_long php_mt_rand_range(zend_long min, zend_long max); -PHPAPI zend_long php_mt_rand_common(zend_long min, zend_long max); - -PHP_MINIT_FUNCTION(mt_rand); - -#endif /* PHP_MT_RAND_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_net.h b/7.4.27/mac/include/php/ext/standard/php_net.h deleted file mode 100644 index c0a60eb..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_net.h +++ /dev/null @@ -1,29 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Sara Golemon | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_NET_H -#define PHP_NET_H - -#include "php.h" -#include "php_network.h" - -PHPAPI zend_string* php_inet_ntop(const struct sockaddr *addr); - -PHP_FUNCTION(net_get_interfaces); - -#endif /* PHP_NET_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_password.h b/7.4.27/mac/include/php/ext/standard/php_password.h deleted file mode 100644 index 97a6bf6..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_password.h +++ /dev/null @@ -1,72 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Anthony Ferrara | - | Charles R. Portwood II | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_PASSWORD_H -#define PHP_PASSWORD_H - -PHP_FUNCTION(password_hash); -PHP_FUNCTION(password_verify); -PHP_FUNCTION(password_needs_rehash); -PHP_FUNCTION(password_get_info); -PHP_FUNCTION(password_algos); - -PHP_MINIT_FUNCTION(password); -PHP_MSHUTDOWN_FUNCTION(password); - -#define PHP_PASSWORD_DEFAULT PHP_PASSWORD_BCRYPT -#define PHP_PASSWORD_BCRYPT_COST 10 - -#if HAVE_ARGON2LIB -/** - * When updating these values, synchronize ext/sodium/sodium_pwhash.c values. - * Note that libargon expresses memlimit in KB, while libsoidum uses bytes. - */ -#define PHP_PASSWORD_ARGON2_MEMORY_COST (64 << 10) -#define PHP_PASSWORD_ARGON2_TIME_COST 4 -#define PHP_PASSWORD_ARGON2_THREADS 1 -#endif - -typedef struct _php_password_algo { - const char *name; - zend_string *(*hash)(const zend_string *password, zend_array *options); - zend_bool (*verify)(const zend_string *password, const zend_string *hash); - zend_bool (*needs_rehash)(const zend_string *password, zend_array *options); - int (*get_info)(zval *return_value, const zend_string *hash); - zend_bool (*valid)(const zend_string *hash); -} php_password_algo; - -extern const php_password_algo php_password_algo_bcrypt; -#if HAVE_ARGON2LIB -extern const php_password_algo php_password_algo_argon2i; -extern const php_password_algo php_password_algo_argon2id; -#endif - -PHPAPI int php_password_algo_register(const char*, const php_password_algo*); -PHPAPI void php_password_algo_unregister(const char*); -PHPAPI const php_password_algo* php_password_algo_default(); -PHPAPI zend_string *php_password_algo_extract_ident(const zend_string*); -PHPAPI const php_password_algo* php_password_algo_find(const zend_string*); - -PHPAPI const php_password_algo* php_password_algo_identify_ex(const zend_string*, const php_password_algo*); -static inline const php_password_algo* php_password_algo_identify(const zend_string *hash) { - return php_password_algo_identify_ex(hash, php_password_algo_default()); -} - - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/php_rand.h b/7.4.27/mac/include/php/ext/standard/php_rand.h deleted file mode 100644 index 8cd47a5..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_rand.h +++ /dev/null @@ -1,74 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Rasmus Lerdorf | - | Zeev Suraski | - | Pedro Melo | - | Sterling Hughes | - | | - | Based on code from: Shawn Cokus | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_RAND_H -#define PHP_RAND_H - -#include "php_lcg.h" -#include "php_mt_rand.h" - -/* System Rand functions */ -#ifndef RAND_MAX -#define RAND_MAX PHP_MT_RAND_MAX -#endif - -#define PHP_RAND_MAX PHP_MT_RAND_MAX - -/* - * A bit of tricky math here. We want to avoid using a modulus because - * that simply tosses the high-order bits and might skew the distribution - * of random values over the range. Instead we map the range directly. - * - * We need to map the range from 0...M evenly to the range a...b - * Let n = the random number and n' = the mapped random number - * - * Then we have: n' = a + n(b-a)/M - * - * We have a problem here in that only n==M will get mapped to b which - # means the chances of getting b is much much less than getting any of - # the other values in the range. We can fix this by increasing our range - # artificially and using: - # - # n' = a + n(b-a+1)/M - * - # Now we only have a problem if n==M which would cause us to produce a - # number of b+1 which would be bad. So we bump M up by one to make sure - # this will never happen, and the final algorithm looks like this: - # - # n' = a + n(b-a+1)/(M+1) - * - * -RL - */ -#define RAND_RANGE_BADSCALING(__n, __min, __max, __tmax) \ - (__n) = (__min) + (zend_long) ((double) ( (double) (__max) - (__min) + 1.0) * ((__n) / ((__tmax) + 1.0))) - -#ifdef PHP_WIN32 -#define GENERATE_SEED() (((zend_long) (time(0) * GetCurrentProcessId())) ^ ((zend_long) (1000000.0 * php_combined_lcg()))) -#else -#define GENERATE_SEED() (((zend_long) (time(0) * getpid())) ^ ((zend_long) (1000000.0 * php_combined_lcg()))) -#endif - -PHPAPI void php_srand(zend_long seed); -PHPAPI zend_long php_rand(void); - -#endif /* PHP_RAND_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_random.h b/7.4.27/mac/include/php/ext/standard/php_random.h deleted file mode 100644 index e61a80f..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_random.h +++ /dev/null @@ -1,55 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Sammy Kaye Powers | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_RANDOM_H -#define PHP_RANDOM_H - -BEGIN_EXTERN_C() - -PHP_FUNCTION(random_bytes); -PHP_FUNCTION(random_int); - -PHP_MINIT_FUNCTION(random); -PHP_MSHUTDOWN_FUNCTION(random); - -typedef struct { - int fd; -} php_random_globals; - -#define php_random_bytes_throw(b, s) php_random_bytes((b), (s), 1) -#define php_random_bytes_silent(b, s) php_random_bytes((b), (s), 0) - -#define php_random_int_throw(min, max, result) \ - php_random_int((min), (max), (result), 1) -#define php_random_int_silent(min, max, result) \ - php_random_int((min), (max), (result), 0) - -PHPAPI int php_random_bytes(void *bytes, size_t size, zend_bool should_throw); -PHPAPI int php_random_int(zend_long min, zend_long max, zend_long *result, zend_bool should_throw); - -#ifdef ZTS -# define RANDOM_G(v) ZEND_TSRMG(random_globals_id, php_random_globals *, v) -extern PHPAPI int random_globals_id; -#else -# define RANDOM_G(v) random_globals.v -extern PHPAPI php_random_globals random_globals; -#endif - -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/php_smart_string.h b/7.4.27/mac/include/php/ext/standard/php_smart_string.h deleted file mode 100644 index b104245..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_smart_string.h +++ /dev/null @@ -1,21 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - | Xinchen Hui | - +----------------------------------------------------------------------+ - */ - -/* Header moved to Zend. This file is retained for BC. */ -#include "zend_smart_string.h" diff --git a/7.4.27/mac/include/php/ext/standard/php_smart_string_public.h b/7.4.27/mac/include/php/ext/standard/php_smart_string_public.h deleted file mode 100644 index 5bb0c6c..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_smart_string_public.h +++ /dev/null @@ -1,21 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - | Xinchen Hui | - +----------------------------------------------------------------------+ - */ - -/* Header moved to Zend. This file is retained for BC. */ -#include "zend_smart_string_public.h" diff --git a/7.4.27/mac/include/php/ext/standard/php_standard.h b/7.4.27/mac/include/php/ext/standard/php_standard.h deleted file mode 100644 index 6152642..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_standard.h +++ /dev/null @@ -1,68 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: | - +----------------------------------------------------------------------+ -*/ - -#include "basic_functions.h" -#include "php_math.h" -#include "php_string.h" -#include "base64.h" -#include "php_dir.h" -#include "php_dns.h" -#include "php_mail.h" -#include "md5.h" -#include "sha1.h" -#include "hrtime.h" -#include "html.h" -#include "exec.h" -#include "file.h" -#include "php_ext_syslog.h" -#include "php_filestat.h" -#include "php_browscap.h" -#include "pack.h" -#include "datetime.h" -#include "microtime.h" -#include "url.h" -#include "pageinfo.h" -#include "cyr_convert.h" -#include "php_link.h" -#include "fsock.h" -#include "php_image.h" -#include "php_iptc.h" -#include "info.h" -#include "uniqid.h" -#include "php_var.h" -#include "quot_print.h" -#include "dl.h" -#include "php_crypt.h" -#include "head.h" -#include "php_lcg.h" -#include "php_metaphone.h" -#include "php_output.h" -#include "php_array.h" -#include "php_assert.h" -#include "php_versioning.h" -#include "php_ftok.h" -#include "php_type.h" -#include "php_password.h" -#include "php_random.h" - -#include "php_version.h" -#define PHP_STANDARD_VERSION PHP_VERSION - -#define phpext_standard_ptr basic_functions_module_ptr -PHP_MINIT_FUNCTION(standard_filters); -PHP_MSHUTDOWN_FUNCTION(standard_filters); diff --git a/7.4.27/mac/include/php/ext/standard/php_string.h b/7.4.27/mac/include/php/ext/standard/php_string.h deleted file mode 100644 index 0bf88cb..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_string.h +++ /dev/null @@ -1,160 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Rasmus Lerdorf | - | Stig Sæther Bakken | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_STRING_H -#define PHP_STRING_H - -PHP_FUNCTION(strspn); -PHP_FUNCTION(strcspn); -PHP_FUNCTION(str_replace); -PHP_FUNCTION(str_ireplace); -PHP_FUNCTION(rtrim); -PHP_FUNCTION(trim); -PHP_FUNCTION(ltrim); -PHP_FUNCTION(soundex); -PHP_FUNCTION(levenshtein); - -PHP_FUNCTION(count_chars); -PHP_FUNCTION(wordwrap); -PHP_FUNCTION(explode); -PHP_FUNCTION(implode); -PHP_FUNCTION(strtok); -PHP_FUNCTION(strtoupper); -PHP_FUNCTION(strtolower); -PHP_FUNCTION(basename); -PHP_FUNCTION(dirname); -PHP_FUNCTION(pathinfo); -PHP_FUNCTION(strstr); -PHP_FUNCTION(strpos); -PHP_FUNCTION(stripos); -PHP_FUNCTION(strrpos); -PHP_FUNCTION(strripos); -PHP_FUNCTION(strrchr); -PHP_FUNCTION(substr); -PHP_FUNCTION(quotemeta); -PHP_FUNCTION(ucfirst); -PHP_FUNCTION(lcfirst); -PHP_FUNCTION(ucwords); -PHP_FUNCTION(strtr); -PHP_FUNCTION(strrev); -PHP_FUNCTION(hebrev); -PHP_FUNCTION(hebrevc); -PHP_FUNCTION(user_sprintf); -PHP_FUNCTION(user_printf); -PHP_FUNCTION(vprintf); -PHP_FUNCTION(vsprintf); -PHP_FUNCTION(addcslashes); -PHP_FUNCTION(addslashes); -PHP_FUNCTION(stripcslashes); -PHP_FUNCTION(stripslashes); -PHP_FUNCTION(chr); -PHP_FUNCTION(ord); -PHP_FUNCTION(nl2br); -PHP_FUNCTION(setlocale); -PHP_FUNCTION(localeconv); -PHP_FUNCTION(nl_langinfo); -PHP_FUNCTION(stristr); -PHP_FUNCTION(chunk_split); -PHP_FUNCTION(parse_str); -PHP_FUNCTION(str_getcsv); -PHP_FUNCTION(bin2hex); -PHP_FUNCTION(hex2bin); -PHP_FUNCTION(similar_text); -PHP_FUNCTION(strip_tags); -PHP_FUNCTION(str_repeat); -PHP_FUNCTION(substr_replace); -PHP_FUNCTION(strnatcmp); -PHP_FUNCTION(strnatcasecmp); -PHP_FUNCTION(substr_count); -PHP_FUNCTION(str_pad); -PHP_FUNCTION(sscanf); -PHP_FUNCTION(str_shuffle); -PHP_FUNCTION(str_word_count); -PHP_FUNCTION(str_split); -PHP_FUNCTION(strpbrk); -PHP_FUNCTION(substr_compare); -PHP_FUNCTION(utf8_encode); -PHP_FUNCTION(utf8_decode); -PHP_FUNCTION(strcoll); -#if HAVE_STRFMON -PHP_FUNCTION(money_format); -#endif - -#if defined(ZTS) -PHP_MINIT_FUNCTION(localeconv); -PHP_MSHUTDOWN_FUNCTION(localeconv); -#endif -#if HAVE_NL_LANGINFO -PHP_MINIT_FUNCTION(nl_langinfo); -#endif -#if ZEND_INTRIN_SSE4_2_FUNC_PTR -PHP_MINIT_FUNCTION(string_intrin); -#endif - -#define strnatcmp(a, b) \ - strnatcmp_ex(a, strlen(a), b, strlen(b), 0) -#define strnatcasecmp(a, b) \ - strnatcmp_ex(a, strlen(a), b, strlen(b), 1) -PHPAPI int strnatcmp_ex(char const *a, size_t a_len, char const *b, size_t b_len, int fold_case); -PHPAPI struct lconv *localeconv_r(struct lconv *out); -PHPAPI char *php_strtoupper(char *s, size_t len); -PHPAPI char *php_strtolower(char *s, size_t len); -PHPAPI zend_string *php_string_toupper(zend_string *s); -PHPAPI zend_string *php_string_tolower(zend_string *s); -PHPAPI char *php_strtr(char *str, size_t len, const char *str_from, const char *str_to, size_t trlen); -PHPAPI zend_string *php_addslashes(zend_string *str); -PHPAPI void php_stripslashes(zend_string *str); -PHPAPI zend_string *php_addcslashes_str(const char *str, size_t len, char *what, size_t what_len); -PHPAPI zend_string *php_addcslashes(zend_string *str, char *what, size_t what_len); -PHPAPI void php_stripcslashes(zend_string *str); -PHPAPI zend_string *php_basename(const char *s, size_t len, char *suffix, size_t sufflen); -PHPAPI size_t php_dirname(char *str, size_t len); -PHPAPI char *php_stristr(char *s, char *t, size_t s_len, size_t t_len); -PHPAPI zend_string *php_str_to_str(const char *haystack, size_t length, const char *needle, - size_t needle_len, const char *str, size_t str_len); -PHPAPI zend_string *php_trim(zend_string *str, char *what, size_t what_len, int mode); -PHPAPI size_t php_strip_tags(char *rbuf, size_t len, uint8_t *state, const char *allow, size_t allow_len); -PHPAPI size_t php_strip_tags_ex(char *rbuf, size_t len, uint8_t *stateptr, const char *allow, size_t allow_len, zend_bool allow_tag_spaces); -PHPAPI void php_implode(const zend_string *delim, zval *arr, zval *return_value); -PHPAPI void php_explode(const zend_string *delim, zend_string *str, zval *return_value, zend_long limit); - -PHPAPI size_t php_strspn(char *s1, char *s2, char *s1_end, char *s2_end); -PHPAPI size_t php_strcspn(char *s1, char *s2, char *s1_end, char *s2_end); - -PHPAPI int string_natural_compare_function_ex(zval *result, zval *op1, zval *op2, zend_bool case_insensitive); -PHPAPI int string_natural_compare_function(zval *result, zval *op1, zval *op2); -PHPAPI int string_natural_case_compare_function(zval *result, zval *op1, zval *op2); - -#ifndef HAVE_MBLEN -# define php_mblen(ptr, len) 1 -# define php_mb_reset() -#elif defined(_REENTRANT) && defined(HAVE_MBRLEN) && defined(HAVE_MBSTATE_T) -# ifdef PHP_WIN32 -# include -# endif -# define php_mblen(ptr, len) ((int) mbrlen(ptr, len, &BG(mblen_state))) -# define php_mb_reset() memset(&BG(mblen_state), 0, sizeof(BG(mblen_state))) -#else -# define php_mblen(ptr, len) mblen(ptr, len) -# define php_mb_reset() php_ignore_value(mblen(NULL, 0)) -#endif - -void register_string_constants(INIT_FUNC_ARGS); - -#endif /* PHP_STRING_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_type.h b/7.4.27/mac/include/php/ext/standard/php_type.h deleted file mode 100644 index 9cd4cb2..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_type.h +++ /dev/null @@ -1,42 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Rasmus Lerdorf | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_TYPE_H -#define PHP_TYPE_H - -PHP_FUNCTION(intval); -PHP_FUNCTION(floatval); -PHP_FUNCTION(strval); -PHP_FUNCTION(boolval); -PHP_FUNCTION(gettype); -PHP_FUNCTION(settype); -PHP_FUNCTION(is_null); -PHP_FUNCTION(is_resource); -PHP_FUNCTION(is_bool); -PHP_FUNCTION(is_int); -PHP_FUNCTION(is_float); -PHP_FUNCTION(is_numeric); -PHP_FUNCTION(is_string); -PHP_FUNCTION(is_array); -PHP_FUNCTION(is_object); -PHP_FUNCTION(is_scalar); -PHP_FUNCTION(is_callable); -PHP_FUNCTION(is_iterable); -PHP_FUNCTION(is_countable); - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/php_uuencode.h b/7.4.27/mac/include/php/ext/standard/php_uuencode.h deleted file mode 100644 index 7c350b4..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_uuencode.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Ilia Alshanetsky | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_UUENCODE_H -#define PHP_UUENCODE_H - -PHP_FUNCTION(convert_uudecode); -PHP_FUNCTION(convert_uuencode); - -PHPAPI zend_string *php_uudecode(char *src, size_t src_len); -PHPAPI zend_string *php_uuencode(char *src, size_t src_len); - -#endif /* PHP_UUENCODE_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_var.h b/7.4.27/mac/include/php/ext/standard/php_var.h deleted file mode 100644 index 1342ae2..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_var.h +++ /dev/null @@ -1,76 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Jani Lehtimäki | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_VAR_H -#define PHP_VAR_H - -#include "ext/standard/basic_functions.h" -#include "zend_smart_str_public.h" - -PHP_MINIT_FUNCTION(var); -PHP_FUNCTION(var_dump); -PHP_FUNCTION(var_export); -PHP_FUNCTION(debug_zval_dump); -PHP_FUNCTION(serialize); -PHP_FUNCTION(unserialize); -PHP_FUNCTION(memory_get_usage); -PHP_FUNCTION(memory_get_peak_usage); - -PHPAPI void php_var_dump(zval *struc, int level); -PHPAPI void php_var_export(zval *struc, int level); -PHPAPI void php_var_export_ex(zval *struc, int level, smart_str *buf); - -PHPAPI void php_debug_zval_dump(zval *struc, int level); - -typedef struct php_serialize_data *php_serialize_data_t; -typedef struct php_unserialize_data *php_unserialize_data_t; - -PHPAPI void php_var_serialize(smart_str *buf, zval *struc, php_serialize_data_t *data); -PHPAPI int php_var_unserialize(zval *rval, const unsigned char **p, const unsigned char *max, php_unserialize_data_t *var_hash); -PHPAPI int php_var_unserialize_ref(zval *rval, const unsigned char **p, const unsigned char *max, php_unserialize_data_t *var_hash); -PHPAPI int php_var_unserialize_intern(zval *rval, const unsigned char **p, const unsigned char *max, php_unserialize_data_t *var_hash); - -PHPAPI php_serialize_data_t php_var_serialize_init(void); -PHPAPI void php_var_serialize_destroy(php_serialize_data_t d); -PHPAPI php_unserialize_data_t php_var_unserialize_init(void); -PHPAPI void php_var_unserialize_destroy(php_unserialize_data_t d); -PHPAPI HashTable *php_var_unserialize_get_allowed_classes(php_unserialize_data_t d); -PHPAPI void php_var_unserialize_set_allowed_classes(php_unserialize_data_t d, HashTable *classes); -PHPAPI void php_var_unserialize_set_max_depth(php_unserialize_data_t d, zend_long max_depth); -PHPAPI zend_long php_var_unserialize_get_max_depth(php_unserialize_data_t d); -PHPAPI void php_var_unserialize_set_cur_depth(php_unserialize_data_t d, zend_long cur_depth); -PHPAPI zend_long php_var_unserialize_get_cur_depth(php_unserialize_data_t d); - -#define PHP_VAR_SERIALIZE_INIT(d) \ - (d) = php_var_serialize_init() - -#define PHP_VAR_SERIALIZE_DESTROY(d) \ - php_var_serialize_destroy(d) - -#define PHP_VAR_UNSERIALIZE_INIT(d) \ - (d) = php_var_unserialize_init() - -#define PHP_VAR_UNSERIALIZE_DESTROY(d) \ - php_var_unserialize_destroy(d) - -PHPAPI void var_replace(php_unserialize_data_t *var_hash, zval *ozval, zval *nzval); -PHPAPI void var_push_dtor(php_unserialize_data_t *var_hash, zval *val); -PHPAPI zval *var_tmp_var(php_unserialize_data_t *var_hashx); -PHPAPI void var_destroy(php_unserialize_data_t *var_hash); - -#endif /* PHP_VAR_H */ diff --git a/7.4.27/mac/include/php/ext/standard/php_versioning.h b/7.4.27/mac/include/php/ext/standard/php_versioning.h deleted file mode 100644 index 5b1ac2e..0000000 --- a/7.4.27/mac/include/php/ext/standard/php_versioning.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Stig Sæther Bakken | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_VERSIONING_H -#define PHP_VERSIONING_H - -#include "ext/standard/basic_functions.h" - -PHPAPI char *php_canonicalize_version(const char *); -PHPAPI int php_version_compare(const char *, const char *); -PHP_FUNCTION(version_compare); - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/proc_open.h b/7.4.27/mac/include/php/ext/standard/proc_open.h deleted file mode 100644 index b7a2922..0000000 --- a/7.4.27/mac/include/php/ext/standard/proc_open.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Wez Furlong | - +----------------------------------------------------------------------+ - */ - -#ifdef PHP_WIN32 -typedef HANDLE php_file_descriptor_t; -typedef DWORD php_process_id_t; -#else -typedef int php_file_descriptor_t; -typedef pid_t php_process_id_t; -#endif - -/* Environment block under win32 is a NUL terminated sequence of NUL terminated - * name=value strings. - * Under unix, it is an argv style array. - * */ -typedef struct _php_process_env { - char *envp; -#ifndef PHP_WIN32 - char **envarray; -#endif -} php_process_env_t; - -struct php_process_handle { - php_process_id_t child; -#ifdef PHP_WIN32 - HANDLE childHandle; -#endif - int npipes; - zend_resource **pipes; - char *command; - int is_persistent; - php_process_env_t env; -}; diff --git a/7.4.27/mac/include/php/ext/standard/quot_print.h b/7.4.27/mac/include/php/ext/standard/quot_print.h deleted file mode 100644 index 2cdf403..0000000 --- a/7.4.27/mac/include/php/ext/standard/quot_print.h +++ /dev/null @@ -1,28 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Kirill Maximov (kir@rus.net) | - +----------------------------------------------------------------------+ -*/ - -#ifndef QUOT_PRINT_H -#define QUOT_PRINT_H - -PHPAPI zend_string *php_quot_print_decode(const unsigned char *str, size_t length, int replace_us_by_ws); -PHPAPI zend_string *php_quot_print_encode(const unsigned char *str, size_t length); - -PHP_FUNCTION(quoted_printable_decode); -PHP_FUNCTION(quoted_printable_encode); - -#endif /* QUOT_PRINT_H */ diff --git a/7.4.27/mac/include/php/ext/standard/scanf.h b/7.4.27/mac/include/php/ext/standard/scanf.h deleted file mode 100644 index 7b958e8..0000000 --- a/7.4.27/mac/include/php/ext/standard/scanf.h +++ /dev/null @@ -1,47 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Clayton Collie | - +----------------------------------------------------------------------+ -*/ - -#ifndef SCANF_H -#define SCANF_H - - -#define SCAN_MAX_ARGS 0xFF /* Maximum number of variable which can be */ - /* passed to (f|s)scanf. This is an artificial */ - /* upper limit to keep resources in check and */ - /* minimize the possibility of exploits */ - -#define SCAN_SUCCESS SUCCESS -#define SCAN_ERROR_EOF -1 /* indicates premature termination of scan */ - /* can be caused by bad parameters or format*/ - /* string. */ -#define SCAN_ERROR_INVALID_FORMAT (SCAN_ERROR_EOF - 1) -#define SCAN_ERROR_VAR_PASSED_BYVAL (SCAN_ERROR_INVALID_FORMAT - 1) -#define SCAN_ERROR_WRONG_PARAM_COUNT (SCAN_ERROR_VAR_PASSED_BYVAL - 1) -#define SCAN_ERROR_INTERNAL (SCAN_ERROR_WRONG_PARAM_COUNT - 1) - - -/* - * The following are here solely for the benefit of the scanf type functions - * e.g. fscanf - */ -PHPAPI int ValidateFormat(char *format, int numVars, int *totalVars); -PHPAPI int php_sscanf_internal(char *string,char *format,int argCount,zval *args, - int varStart, zval *return_value); - - -#endif /* SCANF_H */ diff --git a/7.4.27/mac/include/php/ext/standard/sha1.h b/7.4.27/mac/include/php/ext/standard/sha1.h deleted file mode 100644 index 594c4a3..0000000 --- a/7.4.27/mac/include/php/ext/standard/sha1.h +++ /dev/null @@ -1,39 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Stefan Esser | - +----------------------------------------------------------------------+ -*/ - -#ifndef SHA1_H -#define SHA1_H - -#include "ext/standard/basic_functions.h" - -/* SHA1 context. */ -typedef struct { - uint32_t state[5]; /* state (ABCD) */ - uint32_t count[2]; /* number of bits, modulo 2^64 (lsb first) */ - unsigned char buffer[64]; /* input buffer */ -} PHP_SHA1_CTX; - -PHPAPI void PHP_SHA1Init(PHP_SHA1_CTX *); -PHPAPI void PHP_SHA1Update(PHP_SHA1_CTX *, const unsigned char *, size_t); -PHPAPI void PHP_SHA1Final(unsigned char[20], PHP_SHA1_CTX *); -PHPAPI void make_sha1_digest(char *sha1str, unsigned char *digest); - -PHP_FUNCTION(sha1); -PHP_FUNCTION(sha1_file); - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/streamsfuncs.h b/7.4.27/mac/include/php/ext/standard/streamsfuncs.h deleted file mode 100644 index bcd2afd..0000000 --- a/7.4.27/mac/include/php/ext/standard/streamsfuncs.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Wez Furlong | - +----------------------------------------------------------------------+ -*/ - -/* Flags for stream_socket_client */ -#define PHP_STREAM_CLIENT_PERSISTENT 1 -#define PHP_STREAM_CLIENT_ASYNC_CONNECT 2 -#define PHP_STREAM_CLIENT_CONNECT 4 - -PHP_FUNCTION(stream_socket_client); -PHP_FUNCTION(stream_socket_server); -PHP_FUNCTION(stream_socket_accept); -PHP_FUNCTION(stream_socket_get_name); -PHP_FUNCTION(stream_socket_recvfrom); -PHP_FUNCTION(stream_socket_sendto); - -PHP_FUNCTION(stream_copy_to_stream); -PHP_FUNCTION(stream_get_contents); - -PHP_FUNCTION(stream_set_blocking); -PHP_FUNCTION(stream_select); -PHP_FUNCTION(stream_set_timeout); -PHP_FUNCTION(stream_set_read_buffer); -PHP_FUNCTION(stream_set_write_buffer); -PHP_FUNCTION(stream_set_chunk_size); -PHP_FUNCTION(stream_get_transports); -PHP_FUNCTION(stream_get_wrappers); -PHP_FUNCTION(stream_get_line); -PHP_FUNCTION(stream_get_meta_data); -PHP_FUNCTION(stream_wrapper_register); -PHP_FUNCTION(stream_wrapper_unregister); -PHP_FUNCTION(stream_wrapper_restore); -PHP_FUNCTION(stream_context_create); -PHP_FUNCTION(stream_context_set_params); -PHP_FUNCTION(stream_context_get_params); -PHP_FUNCTION(stream_context_set_option); -PHP_FUNCTION(stream_context_get_options); -PHP_FUNCTION(stream_context_get_default); -PHP_FUNCTION(stream_context_set_default); -PHP_FUNCTION(stream_filter_prepend); -PHP_FUNCTION(stream_filter_append); -PHP_FUNCTION(stream_filter_remove); -PHP_FUNCTION(stream_socket_enable_crypto); -PHP_FUNCTION(stream_socket_shutdown); -PHP_FUNCTION(stream_resolve_include_path); -PHP_FUNCTION(stream_is_local); -PHP_FUNCTION(stream_supports_lock); -PHP_FUNCTION(stream_isatty); -#ifdef PHP_WIN32 -PHP_FUNCTION(sapi_windows_vt100_support); -#endif - -#if HAVE_SOCKETPAIR -PHP_FUNCTION(stream_socket_pair); -#endif diff --git a/7.4.27/mac/include/php/ext/standard/uniqid.h b/7.4.27/mac/include/php/ext/standard/uniqid.h deleted file mode 100644 index ed6528e..0000000 --- a/7.4.27/mac/include/php/ext/standard/uniqid.h +++ /dev/null @@ -1,26 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Stig Sæther Bakken | - +----------------------------------------------------------------------+ - */ - -#ifndef UNIQID_H -#define UNIQID_H - -#ifdef HAVE_GETTIMEOFDAY -PHP_FUNCTION(uniqid); -#endif - -#endif /* UNIQID_H */ diff --git a/7.4.27/mac/include/php/ext/standard/url.h b/7.4.27/mac/include/php/ext/standard/url.h deleted file mode 100644 index 741663d..0000000 --- a/7.4.27/mac/include/php/ext/standard/url.h +++ /dev/null @@ -1,62 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Jim Winstead | - +----------------------------------------------------------------------+ - */ - -#ifndef URL_H -#define URL_H - -typedef struct php_url { - zend_string *scheme; - zend_string *user; - zend_string *pass; - zend_string *host; - unsigned short port; - zend_string *path; - zend_string *query; - zend_string *fragment; -} php_url; - -PHPAPI void php_url_free(php_url *theurl); -PHPAPI php_url *php_url_parse(char const *str); -PHPAPI php_url *php_url_parse_ex(char const *str, size_t length); -PHPAPI php_url *php_url_parse_ex2(char const *str, size_t length, zend_bool *has_port); -PHPAPI size_t php_url_decode(char *str, size_t len); /* return value: length of decoded string */ -PHPAPI size_t php_raw_url_decode(char *str, size_t len); /* return value: length of decoded string */ -PHPAPI zend_string *php_url_encode(char const *s, size_t len); -PHPAPI zend_string *php_raw_url_encode(char const *s, size_t len); -PHPAPI char *php_replace_controlchars_ex(char *str, size_t len); - -PHP_FUNCTION(parse_url); -PHP_FUNCTION(urlencode); -PHP_FUNCTION(urldecode); -PHP_FUNCTION(rawurlencode); -PHP_FUNCTION(rawurldecode); -PHP_FUNCTION(get_headers); - -#define PHP_URL_SCHEME 0 -#define PHP_URL_HOST 1 -#define PHP_URL_PORT 2 -#define PHP_URL_USER 3 -#define PHP_URL_PASS 4 -#define PHP_URL_PATH 5 -#define PHP_URL_QUERY 6 -#define PHP_URL_FRAGMENT 7 - -#define PHP_QUERY_RFC1738 1 -#define PHP_QUERY_RFC3986 2 - -#endif /* URL_H */ diff --git a/7.4.27/mac/include/php/ext/standard/url_scanner_ex.h b/7.4.27/mac/include/php/ext/standard/url_scanner_ex.h deleted file mode 100644 index 6a8b8fd..0000000 --- a/7.4.27/mac/include/php/ext/standard/url_scanner_ex.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - +----------------------------------------------------------------------+ -*/ - -#ifndef URL_SCANNER_EX_H -#define URL_SCANNER_EX_H - -PHP_MINIT_FUNCTION(url_scanner_ex); -PHP_MSHUTDOWN_FUNCTION(url_scanner_ex); - -PHP_RINIT_FUNCTION(url_scanner_ex); -PHP_RSHUTDOWN_FUNCTION(url_scanner_ex); - -PHPAPI char *php_url_scanner_adapt_single_url(const char *url, size_t urllen, const char *name, const char *value, size_t *newlen, int encode); -PHPAPI int php_url_scanner_add_session_var(char *name, size_t name_len, char *value, size_t value_len, int encode); -PHPAPI int php_url_scanner_reset_session_var(zend_string *name, int encode); -PHPAPI int php_url_scanner_reset_session_vars(void); -PHPAPI int php_url_scanner_add_var(char *name, size_t name_len, char *value, size_t value_len, int encode); -PHPAPI int php_url_scanner_reset_var(zend_string *name, int encode); -PHPAPI int php_url_scanner_reset_vars(void); - -#include "zend_smart_str_public.h" - -typedef struct { - /* Used by the mainloop of the scanner */ - smart_str tag; /* read only */ - smart_str arg; /* read only */ - smart_str val; /* read only */ - smart_str buf; - - /* The result buffer */ - smart_str result; - - /* The data which is appended to each relative URL/FORM */ - smart_str form_app, url_app; - - int active; - - char *lookup_data; - int state; - - int type; - smart_str attr_val; - int tag_type; - int attr_type; - - /* Everything above is zeroed in RINIT */ - HashTable *tags; -} url_adapt_state_ex_t; - -#endif diff --git a/7.4.27/mac/include/php/ext/standard/winver.h b/7.4.27/mac/include/php/ext/standard/winver.h deleted file mode 100644 index d985181..0000000 --- a/7.4.27/mac/include/php/ext/standard/winver.h +++ /dev/null @@ -1,133 +0,0 @@ -#ifndef _PHP_WINVER_H -#define _PHP_WINVER_H - -#ifndef SM_TABLETPC -#define SM_TABLETPC 86 -#endif -#ifndef SM_MEDIACENTER -#define SM_MEDIACENTER 87 -#endif -#ifndef SM_STARTER -#define SM_STARTER 88 -#endif -#ifndef SM_SERVERR2 -#define SM_SERVERR2 89 -#endif -#ifndef VER_SUITE_WH_SERVER -#define VER_SUITE_WH_SERVER 0x8000 -#endif - -#ifndef PRODUCT_ULTIMATE -#define PRODUCT_UNDEFINED 0x00000000 -#define PRODUCT_ULTIMATE 0x00000001 -#define PRODUCT_HOME_BASIC 0x00000002 -#define PRODUCT_HOME_PREMIUM 0x00000003 -#define PRODUCT_ENTERPRISE 0x00000004 -#define PRODUCT_HOME_BASIC_N 0x00000005 -#define PRODUCT_BUSINESS 0x00000006 -#define PRODUCT_STANDARD_SERVER 0x00000007 -#define PRODUCT_DATACENTER_SERVER 0x00000008 -#define PRODUCT_SMALLBUSINESS_SERVER 0x00000009 -#define PRODUCT_ENTERPRISE_SERVER 0x0000000A -#define PRODUCT_STARTER 0x0000000B -#define PRODUCT_DATACENTER_SERVER_CORE 0x0000000C -#define PRODUCT_STANDARD_SERVER_CORE 0x0000000D -#define PRODUCT_ENTERPRISE_SERVER_CORE 0x0000000E -#define PRODUCT_ENTERPRISE_SERVER_IA64 0x0000000F -#define PRODUCT_BUSINESS_N 0x00000010 -#define PRODUCT_WEB_SERVER 0x00000011 -#define PRODUCT_CLUSTER_SERVER 0x00000012 -#define PRODUCT_HOME_SERVER 0x00000013 -#define PRODUCT_STORAGE_EXPRESS_SERVER 0x00000014 -#define PRODUCT_STORAGE_STANDARD_SERVER 0x00000015 -#define PRODUCT_STORAGE_WORKGROUP_SERVER 0x00000016 -#define PRODUCT_STORAGE_ENTERPRISE_SERVER 0x00000017 -#define PRODUCT_SERVER_FOR_SMALLBUSINESS 0x00000018 -#define PRODUCT_SMALLBUSINESS_SERVER_PREMIUM 0x00000019 -#define PRODUCT_HOME_PREMIUM_N 0x0000001A -#define PRODUCT_ENTERPRISE_N 0x0000001B -#define PRODUCT_ULTIMATE_N 0x0000001C -#define PRODUCT_WEB_SERVER_CORE 0x0000001D -#define PRODUCT_MEDIUMBUSINESS_SERVER_MANAGEMENT 0x0000001E -#define PRODUCT_MEDIUMBUSINESS_SERVER_SECURITY 0x0000001F -#define PRODUCT_MEDIUMBUSINESS_SERVER_MESSAGING 0x00000020 -#define PRODUCT_SERVER_FOUNDATION 0x00000021 -#define PRODUCT_HOME_PREMIUM_SERVER 0x00000022 -#define PRODUCT_SERVER_FOR_SMALLBUSINESS_V 0x00000023 -#define PRODUCT_STANDARD_SERVER_V 0x00000024 -#define PRODUCT_DATACENTER_SERVER_V 0x00000025 -#define PRODUCT_ENTERPRISE_SERVER_V 0x00000026 -#define PRODUCT_DATACENTER_SERVER_CORE_V 0x00000027 -#define PRODUCT_STANDARD_SERVER_CORE_V 0x00000028 -#define PRODUCT_ENTERPRISE_SERVER_CORE_V 0x00000029 -#define PRODUCT_HYPERV 0x0000002A -#define PRODUCT_STORAGE_EXPRESS_SERVER_CORE 0x0000002B -#define PRODUCT_STORAGE_STANDARD_SERVER_CORE 0x0000002C -#define PRODUCT_STORAGE_WORKGROUP_SERVER_CORE 0x0000002D -#define PRODUCT_STORAGE_ENTERPRISE_SERVER_CORE 0x0000002E -#define PRODUCT_STARTER_N 0x0000002F -#define PRODUCT_PROFESSIONAL 0x00000030 -#define PRODUCT_PROFESSIONAL_N 0x00000031 -#define PRODUCT_SB_SOLUTION_SERVER 0x00000032 -#define PRODUCT_SERVER_FOR_SB_SOLUTIONS 0x00000033 -#define PRODUCT_STANDARD_SERVER_SOLUTIONS 0x00000034 -#define PRODUCT_STANDARD_SERVER_SOLUTIONS_CORE 0x00000035 -#define PRODUCT_SB_SOLUTION_SERVER_EM 0x00000036 -#define PRODUCT_SERVER_FOR_SB_SOLUTIONS_EM 0x00000037 -#define PRODUCT_SOLUTION_EMBEDDEDSERVER 0x00000038 -#define PRODUCT_ESSENTIALBUSINESS_SERVER_MGMT 0x0000003B -#define PRODUCT_ESSENTIALBUSINESS_SERVER_ADDL 0x0000003C -#define PRODUCT_ESSENTIALBUSINESS_SERVER_MGMTSVC 0x0000003D -#define PRODUCT_ESSENTIALBUSINESS_SERVER_ADDLSVC 0x0000003E -#define PRODUCT_SMALLBUSINESS_SERVER_PREMIUM_CORE 0x0000003F -#define PRODUCT_CLUSTER_SERVER_V 0x00000040 -#define PRODUCT_ENTERPRISE_EVALUATION 0x00000048 -#define PRODUCT_MULTIPOINT_STANDARD_SERVER 0x0000004C -#define PRODUCT_MULTIPOINT_PREMIUM_SERVER 0x0000004D -#define PRODUCT_STANDARD_EVALUATION_SERVER 0x0000004F -#define PRODUCT_DATACENTER_EVALUATION_SERVER 0x00000050 -#define PRODUCT_ENTERPRISE_N_EVALUATION 0x00000054 -#define PRODUCT_STORAGE_WORKGROUP_EVALUATION_SERVER 0x0000005F -#define PRODUCT_STORAGE_STANDARD_EVALUATION_SERVER 0x00000060 -#define PRODUCT_CORE_N 0x00000062 -#define PRODUCT_CORE_COUNTRYSPECIFIC 0x00000063 -#define PRODUCT_CORE_SINGLELANGUAGE 0x00000064 -#define PRODUCT_CORE 0x00000065 -#define PRODUCT_PROFESSIONAL_WMC 0x00000067 -#endif - -#ifndef VER_NT_WORKSTATION -#define VER_NT_WORKSTATION 0x0000001 -#define VER_NT_DOMAIN_CONTROLLER 0x0000002 -#define VER_NT_SERVER 0x0000003 -#endif - -#ifndef VER_SUITE_SMALLBUSINESS -#define VER_SUITE_SMALLBUSINESS 0x00000001 -#define VER_SUITE_ENTERPRISE 0x00000002 -#define VER_SUITE_BACKOFFICE 0x00000004 -#define VER_SUITE_COMMUNICATIONS 0x00000008 -#define VER_SUITE_TERMINAL 0x00000010 -#define VER_SUITE_SMALLBUSINESS_RESTRICTED 0x00000020 -#define VER_SUITE_EMBEDDEDNT 0x00000040 -#define VER_SUITE_DATACENTER 0x00000080 -#define VER_SUITE_SINGLEUSERTS 0x00000100 -#define VER_SUITE_PERSONAL 0x00000200 -#define VER_SUITE_BLADE 0x00000400 -#define VER_SUITE_EMBEDDED_RESTRICTED 0x00000800 -#define VER_SUITE_SECURITY_APPLIANCE 0x00001000 -#endif - -#ifndef VER_SUITE_STORAGE_SERVER -# define VER_SUITE_STORAGE_SERVER 0x00002000 -#endif - -#ifndef VER_SUITE_COMPUTE_SERVER -# define VER_SUITE_COMPUTE_SERVER 0x00004000 -#endif - -#ifndef PROCESSOR_ARCHITECTURE_AMD64 -#define PROCESSOR_ARCHITECTURE_AMD64 9 -#endif - -#endif diff --git a/7.4.27/mac/include/php/ext/xml/expat_compat.h b/7.4.27/mac/include/php/ext/xml/expat_compat.h deleted file mode 100644 index 350d42f..0000000 --- a/7.4.27/mac/include/php/ext/xml/expat_compat.h +++ /dev/null @@ -1,159 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Sterling Hughes | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_EXPAT_COMPAT_H -#define PHP_EXPAT_COMPAT_H - -#ifdef PHP_WIN32 -#include "config.w32.h" -#else -#include -#endif - -#ifdef PHP_WIN32 -# define PHP_XML_API __declspec(dllexport) -#elif defined(__GNUC__) && __GNUC__ >= 4 -# define PHP_XML_API __attribute__ ((visibility("default"))) -#else -# define PHP_XML_API -#endif - -#if !defined(HAVE_LIBEXPAT) && defined(HAVE_LIBXML) -#define LIBXML_EXPAT_COMPAT 1 - -#include "php.h" -#include "php_compat.h" - -#include -#include -#include -#include - -/* For compatibility with the misspelled version. */ -#define _ns_seperator _ns_separator - -typedef xmlChar XML_Char; - -typedef void (*XML_StartElementHandler)(void *, const XML_Char *, const XML_Char **); -typedef void (*XML_EndElementHandler)(void *, const XML_Char *); -typedef void (*XML_CharacterDataHandler)(void *, const XML_Char *, int); -typedef void (*XML_ProcessingInstructionHandler)(void *, const XML_Char *, const XML_Char *); -typedef void (*XML_CommentHandler)(void *, const XML_Char *); -typedef void (*XML_DefaultHandler)(void *, const XML_Char *, int); -typedef void (*XML_UnparsedEntityDeclHandler)(void *, const XML_Char *, const XML_Char *, const XML_Char *, const XML_Char *, const XML_Char *); -typedef void (*XML_NotationDeclHandler)(void *, const XML_Char *, const XML_Char *, const XML_Char *, const XML_Char *); -typedef int (*XML_ExternalEntityRefHandler)(void *, const XML_Char *, const XML_Char *, const XML_Char *, const XML_Char *); -typedef void (*XML_StartNamespaceDeclHandler)(void *, const XML_Char *, const XML_Char *); -typedef void (*XML_EndNamespaceDeclHandler)(void *, const XML_Char *); - -typedef struct _XML_Memory_Handling_Suite { - void *(*malloc_fcn)(size_t size); - void *(*realloc_fcn)(void *ptr, size_t size); - void (*free_fcn)(void *ptr); -} XML_Memory_Handling_Suite; - -typedef struct _XML_Parser { - int use_namespace; - - xmlChar *_ns_separator; - - void *user; - xmlParserCtxtPtr parser; - - XML_StartElementHandler h_start_element; - XML_EndElementHandler h_end_element; - XML_CharacterDataHandler h_cdata; - XML_ProcessingInstructionHandler h_pi; - XML_CommentHandler h_comment; - XML_DefaultHandler h_default; - XML_UnparsedEntityDeclHandler h_unparsed_entity_decl; - XML_NotationDeclHandler h_notation_decl; - XML_ExternalEntityRefHandler h_external_entity_ref; - XML_StartNamespaceDeclHandler h_start_ns; - XML_EndNamespaceDeclHandler h_end_ns; -} *XML_Parser; - -enum XML_Error { - XML_ERROR_NONE, - XML_ERROR_NO_MEMORY, - XML_ERROR_SYNTAX, - XML_ERROR_NO_ELEMENTS, - XML_ERROR_INVALID_TOKEN, - XML_ERROR_UNCLOSED_TOKEN, - XML_ERROR_PARTIAL_CHAR, - XML_ERROR_TAG_MISMATCH, - XML_ERROR_DUPLICATE_ATTRIBUTE, - XML_ERROR_JUNK_AFTER_DOC_ELEMENT, - XML_ERROR_PARAM_ENTITY_REF, - XML_ERROR_UNDEFINED_ENTITY, - XML_ERROR_RECURSIVE_ENTITY_REF, - XML_ERROR_ASYNC_ENTITY, - XML_ERROR_BAD_CHAR_REF, - XML_ERROR_BINARY_ENTITY_REF, - XML_ERROR_ATTRIBUTE_EXTERNAL_ENTITY_REF, - XML_ERROR_MISPLACED_XML_PI, - XML_ERROR_UNKNOWN_ENCODING, - XML_ERROR_INCORRECT_ENCODING, - XML_ERROR_UNCLOSED_CDATA_SECTION, - XML_ERROR_EXTERNAL_ENTITY_HANDLING, - XML_ERROR_NOT_STANDALONE, - XML_ERROR_UNEXPECTED_STATE, - XML_ERROR_ENTITY_DECLARED_IN_PE, - XML_ERROR_FEATURE_REQUIRES_XML_DTD, - XML_ERROR_CANT_CHANGE_FEATURE_ONCE_PARSING -}; - -enum XML_Content_Type { - XML_CTYPE_EMPTY = 1, - XML_CTYPE_ANY, - XML_CTYPE_MIXED, - XML_CTYPE_NAME, - XML_CTYPE_CHOICE, - XML_CTYPE_SEQ -}; - -PHP_XML_API XML_Parser XML_ParserCreate(const XML_Char *); -PHP_XML_API XML_Parser XML_ParserCreateNS(const XML_Char *, const XML_Char); -PHP_XML_API XML_Parser XML_ParserCreate_MM(const XML_Char *, const XML_Memory_Handling_Suite *, const XML_Char *); -PHP_XML_API void XML_SetUserData(XML_Parser, void *); -PHP_XML_API void *XML_GetUserData(XML_Parser); -PHP_XML_API void XML_SetElementHandler(XML_Parser, XML_StartElementHandler, XML_EndElementHandler); -PHP_XML_API void XML_SetCharacterDataHandler(XML_Parser, XML_CharacterDataHandler); -PHP_XML_API void XML_SetProcessingInstructionHandler(XML_Parser, XML_ProcessingInstructionHandler); -PHP_XML_API void XML_SetDefaultHandler(XML_Parser, XML_DefaultHandler); -PHP_XML_API void XML_SetUnparsedEntityDeclHandler(XML_Parser, XML_UnparsedEntityDeclHandler); -PHP_XML_API void XML_SetNotationDeclHandler(XML_Parser, XML_NotationDeclHandler); -PHP_XML_API void XML_SetExternalEntityRefHandler(XML_Parser, XML_ExternalEntityRefHandler); -PHP_XML_API void XML_SetStartNamespaceDeclHandler(XML_Parser, XML_StartNamespaceDeclHandler); -PHP_XML_API void XML_SetEndNamespaceDeclHandler(XML_Parser, XML_EndNamespaceDeclHandler); -PHP_XML_API int XML_Parse(XML_Parser, const XML_Char *, int data_len, int is_final); -PHP_XML_API int XML_GetErrorCode(XML_Parser); -PHP_XML_API const XML_Char *XML_ErrorString(int); -PHP_XML_API int XML_GetCurrentLineNumber(XML_Parser); -PHP_XML_API int XML_GetCurrentColumnNumber(XML_Parser); -PHP_XML_API int XML_GetCurrentByteIndex(XML_Parser); -PHP_XML_API int XML_GetCurrentByteCount(XML_Parser); -PHP_XML_API const XML_Char *XML_ExpatVersion(void); -PHP_XML_API void XML_ParserFree(XML_Parser); - -#elif defined(HAVE_LIBEXPAT) -#include "php.h" -#include -#endif /* HAVE_LIBEXPAT */ - -#endif /* PHP_EXPAT_COMPAT_H */ diff --git a/7.4.27/mac/include/php/ext/xml/php_xml.h b/7.4.27/mac/include/php/ext/xml/php_xml.h deleted file mode 100644 index f8bb415..0000000 --- a/7.4.27/mac/include/php/ext/xml/php_xml.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Stig Sæther Bakken | - | Thies C. Arntzen | - | Sterling Hughes | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_XML_H -#define PHP_XML_H - -#ifdef HAVE_XML - -extern zend_module_entry xml_module_entry; -#define xml_module_ptr &xml_module_entry - -#include "php_version.h" -#define PHP_XML_VERSION PHP_VERSION - -#include "expat_compat.h" - -#ifdef XML_UNICODE -#error "UTF-16 Unicode support not implemented!" -#endif - -#else -#define xml_module_ptr NULL -#endif /* HAVE_XML */ - -#define phpext_xml_ptr xml_module_ptr - -#endif /* PHP_XML_H */ diff --git a/7.4.27/mac/include/php/main/SAPI.h b/7.4.27/mac/include/php/main/SAPI.h deleted file mode 100644 index fe8bfd6..0000000 --- a/7.4.27/mac/include/php/main/SAPI.h +++ /dev/null @@ -1,323 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef SAPI_H -#define SAPI_H - -#include "php.h" -#include "zend.h" -#include "zend_API.h" -#include "zend_llist.h" -#include "zend_operators.h" -#ifdef PHP_WIN32 -#include "win32/php_stdint.h" -#endif -#include - -#define SAPI_OPTION_NO_CHDIR 1 -#define SAPI_POST_BLOCK_SIZE 0x4000 - -#ifdef PHP_WIN32 -# ifdef SAPI_EXPORTS -# define SAPI_API __declspec(dllexport) -# else -# define SAPI_API __declspec(dllimport) -# endif -#elif defined(__GNUC__) && __GNUC__ >= 4 -# define SAPI_API __attribute__ ((visibility("default"))) -#else -# define SAPI_API -#endif - -#undef shutdown - -typedef struct { - char *header; - size_t header_len; -} sapi_header_struct; - - -typedef struct { - zend_llist headers; - int http_response_code; - unsigned char send_default_content_type; - char *mimetype; - char *http_status_line; -} sapi_headers_struct; - - -typedef struct _sapi_post_entry sapi_post_entry; -typedef struct _sapi_module_struct sapi_module_struct; - -BEGIN_EXTERN_C() -extern SAPI_API sapi_module_struct sapi_module; /* true global */ -END_EXTERN_C() - -/* Some values in this structure needs to be filled in before - * calling sapi_activate(). We WILL change the `char *' entries, - * so make sure that you allocate a separate buffer for them - * and that you free them after sapi_deactivate(). - */ - -typedef struct { - const char *request_method; - char *query_string; - char *cookie_data; - zend_long content_length; - - char *path_translated; - char *request_uri; - - /* Do not use request_body directly, but the php://input stream wrapper instead */ - struct _php_stream *request_body; - - const char *content_type; - - zend_bool headers_only; - zend_bool no_headers; - zend_bool headers_read; - - sapi_post_entry *post_entry; - - char *content_type_dup; - - /* for HTTP authentication */ - char *auth_user; - char *auth_password; - char *auth_digest; - - /* this is necessary for the CGI SAPI module */ - char *argv0; - - char *current_user; - int current_user_length; - - /* this is necessary for CLI module */ - int argc; - char **argv; - int proto_num; -} sapi_request_info; - - -typedef struct _sapi_globals_struct { - void *server_context; - sapi_request_info request_info; - sapi_headers_struct sapi_headers; - int64_t read_post_bytes; - unsigned char post_read; - unsigned char headers_sent; - zend_stat_t global_stat; - char *default_mimetype; - char *default_charset; - HashTable *rfc1867_uploaded_files; - zend_long post_max_size; - int options; - zend_bool sapi_started; - double global_request_time; - HashTable known_post_content_types; - zval callback_func; - zend_fcall_info_cache fci_cache; -} sapi_globals_struct; - - -BEGIN_EXTERN_C() -#ifdef ZTS -# define SG(v) ZEND_TSRMG_FAST(sapi_globals_offset, sapi_globals_struct *, v) -SAPI_API extern int sapi_globals_id; -SAPI_API extern size_t sapi_globals_offset; -#else -# define SG(v) (sapi_globals.v) -extern SAPI_API sapi_globals_struct sapi_globals; -#endif - -SAPI_API void sapi_startup(sapi_module_struct *sf); -SAPI_API void sapi_shutdown(void); -SAPI_API void sapi_activate(void); -SAPI_API void sapi_deactivate(void); -SAPI_API void sapi_initialize_empty_request(void); -SAPI_API void sapi_add_request_header(char *var, unsigned int var_len, char *val, unsigned int val_len, void *arg); -END_EXTERN_C() - -/* - * This is the preferred and maintained API for - * operating on HTTP headers. - */ - -/* - * Always specify a sapi_header_line this way: - * - * sapi_header_line ctr = {0}; - */ - -typedef struct { - char *line; /* If you allocated this, you need to free it yourself */ - size_t line_len; - zend_long response_code; /* long due to zend_parse_parameters compatibility */ -} sapi_header_line; - -typedef enum { /* Parameter: */ - SAPI_HEADER_REPLACE, /* sapi_header_line* */ - SAPI_HEADER_ADD, /* sapi_header_line* */ - SAPI_HEADER_DELETE, /* sapi_header_line* */ - SAPI_HEADER_DELETE_ALL, /* void */ - SAPI_HEADER_SET_STATUS /* int */ -} sapi_header_op_enum; - -BEGIN_EXTERN_C() -SAPI_API int sapi_header_op(sapi_header_op_enum op, void *arg); - -/* Deprecated functions. Use sapi_header_op instead. */ -SAPI_API int sapi_add_header_ex(char *header_line, size_t header_line_len, zend_bool duplicate, zend_bool replace); -#define sapi_add_header(a, b, c) sapi_add_header_ex((a),(b),(c),1) - - -SAPI_API int sapi_send_headers(void); -SAPI_API void sapi_free_header(sapi_header_struct *sapi_header); -SAPI_API void sapi_handle_post(void *arg); -SAPI_API size_t sapi_read_post_block(char *buffer, size_t buflen); -SAPI_API int sapi_register_post_entries(const sapi_post_entry *post_entry); -SAPI_API int sapi_register_post_entry(const sapi_post_entry *post_entry); -SAPI_API void sapi_unregister_post_entry(const sapi_post_entry *post_entry); -SAPI_API int sapi_register_default_post_reader(void (*default_post_reader)(void)); -SAPI_API int sapi_register_treat_data(void (*treat_data)(int arg, char *str, zval *destArray)); -SAPI_API int sapi_register_input_filter(unsigned int (*input_filter)(int arg, char *var, char **val, size_t val_len, size_t *new_val_len), unsigned int (*input_filter_init)(void)); - -SAPI_API int sapi_flush(void); -SAPI_API zend_stat_t *sapi_get_stat(void); -SAPI_API char *sapi_getenv(char *name, size_t name_len); - -SAPI_API char *sapi_get_default_content_type(void); -SAPI_API void sapi_get_default_content_type_header(sapi_header_struct *default_header); -SAPI_API size_t sapi_apply_default_charset(char **mimetype, size_t len); -SAPI_API void sapi_activate_headers_only(void); - -SAPI_API int sapi_get_fd(int *fd); -SAPI_API int sapi_force_http_10(void); - -SAPI_API int sapi_get_target_uid(uid_t *); -SAPI_API int sapi_get_target_gid(gid_t *); -SAPI_API double sapi_get_request_time(void); -SAPI_API void sapi_terminate_process(void); -END_EXTERN_C() - -struct _sapi_module_struct { - char *name; - char *pretty_name; - - int (*startup)(struct _sapi_module_struct *sapi_module); - int (*shutdown)(struct _sapi_module_struct *sapi_module); - - int (*activate)(void); - int (*deactivate)(void); - - size_t (*ub_write)(const char *str, size_t str_length); - void (*flush)(void *server_context); - zend_stat_t *(*get_stat)(void); - char *(*getenv)(char *name, size_t name_len); - - void (*sapi_error)(int type, const char *error_msg, ...) ZEND_ATTRIBUTE_FORMAT(printf, 2, 3); - - int (*header_handler)(sapi_header_struct *sapi_header, sapi_header_op_enum op, sapi_headers_struct *sapi_headers); - int (*send_headers)(sapi_headers_struct *sapi_headers); - void (*send_header)(sapi_header_struct *sapi_header, void *server_context); - - size_t (*read_post)(char *buffer, size_t count_bytes); - char *(*read_cookies)(void); - - void (*register_server_variables)(zval *track_vars_array); - void (*log_message)(char *message, int syslog_type_int); - double (*get_request_time)(void); - void (*terminate_process)(void); - - char *php_ini_path_override; - - void (*default_post_reader)(void); - void (*treat_data)(int arg, char *str, zval *destArray); - char *executable_location; - - int php_ini_ignore; - int php_ini_ignore_cwd; /* don't look for php.ini in the current directory */ - - int (*get_fd)(int *fd); - - int (*force_http_10)(void); - - int (*get_target_uid)(uid_t *); - int (*get_target_gid)(gid_t *); - - unsigned int (*input_filter)(int arg, char *var, char **val, size_t val_len, size_t *new_val_len); - - void (*ini_defaults)(HashTable *configuration_hash); - int phpinfo_as_text; - - char *ini_entries; - const zend_function_entry *additional_functions; - unsigned int (*input_filter_init)(void); -}; - -struct _sapi_post_entry { - char *content_type; - uint32_t content_type_len; - void (*post_reader)(void); - void (*post_handler)(char *content_type_dup, void *arg); -}; - -/* header_handler() constants */ -#define SAPI_HEADER_ADD (1<<0) - - -#define SAPI_HEADER_SENT_SUCCESSFULLY 1 -#define SAPI_HEADER_DO_SEND 2 -#define SAPI_HEADER_SEND_FAILED 3 - -#define SAPI_DEFAULT_MIMETYPE "text/html" -#define SAPI_DEFAULT_CHARSET PHP_DEFAULT_CHARSET -#define SAPI_PHP_VERSION_HEADER "X-Powered-By: PHP/" PHP_VERSION - -#define SAPI_POST_READER_FUNC(post_reader) void post_reader(void) -#define SAPI_POST_HANDLER_FUNC(post_handler) void post_handler(char *content_type_dup, void *arg) - -#define SAPI_TREAT_DATA_FUNC(treat_data) void treat_data(int arg, char *str, zval* destArray) -#define SAPI_INPUT_FILTER_FUNC(input_filter) unsigned int input_filter(int arg, char *var, char **val, size_t val_len, size_t *new_val_len) - -BEGIN_EXTERN_C() -SAPI_API SAPI_POST_READER_FUNC(sapi_read_standard_form_data); -SAPI_API SAPI_POST_READER_FUNC(php_default_post_reader); -SAPI_API SAPI_TREAT_DATA_FUNC(php_default_treat_data); -SAPI_API SAPI_INPUT_FILTER_FUNC(php_default_input_filter); -END_EXTERN_C() - -#define STANDARD_SAPI_MODULE_PROPERTIES \ - NULL, /* php_ini_path_override */ \ - NULL, /* default_post_reader */ \ - NULL, /* treat_data */ \ - NULL, /* executable_location */ \ - 0, /* php_ini_ignore */ \ - 0, /* php_ini_ignore_cwd */ \ - NULL, /* get_fd */ \ - NULL, /* force_http_10 */ \ - NULL, /* get_target_uid */ \ - NULL, /* get_target_gid */ \ - NULL, /* input_filter */ \ - NULL, /* ini_defaults */ \ - 0, /* phpinfo_as_text; */ \ - NULL, /* ini_entries; */ \ - NULL, /* additional_functions */ \ - NULL /* input_filter_init */ - -#endif /* SAPI_H */ diff --git a/7.4.27/mac/include/php/main/build-defs.h b/7.4.27/mac/include/php/main/build-defs.h deleted file mode 100644 index d9e52e5..0000000 --- a/7.4.27/mac/include/php/main/build-defs.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Stig Sæther Bakken | - +----------------------------------------------------------------------+ -*/ - -#define CONFIGURE_COMMAND " './configure' '--cache-file=/Users/pachanga/.phpbrew/cache/config.cache' '--prefix=/Users/pachanga/.phpbrew/php/php-7.4.27' '--with-config-file-path=/Users/pachanga/.phpbrew/php/php-7.4.27/etc' '--with-config-file-scan-dir=/Users/pachanga/.phpbrew/php/php-7.4.27/var/db' '--disable-all' '--enable-phar' '--enable-session' '--enable-short-tags' '--enable-tokenizer' '--with-zlib=/usr/local/opt' '--enable-dom' '--with-libxml' '--enable-simplexml' '--enable-xml' '--enable-xmlreader' '--enable-xmlwriter' '--with-xsl' '--enable-opcache' '--enable-bcmath' '--with-bz2=/usr' '--enable-calendar' '--enable-cli' '--enable-ctype' '--enable-fileinfo' '--enable-filter' '--enable-shmop' '--enable-sysvsem' '--enable-sysvshm' '--enable-sysvmsg' '--enable-json' '--enable-mbregex' '--enable-mbstring' '--with-mhash=/usr/local/opt' '--enable-pcntl' '--enable-pdo' '--with-pear=/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php/pear' '--enable-posix' '--with-readline=/usr/local/opt/readline' '--enable-sockets' '--with-curl' '--with-openssl' '--with-zip' '--enable-maintainer-zts' 'PKG_CONFIG_PATH=/usr/local/opt/libxml2/lib/pkgconfig:/usr/local/opt/lib/pkgconfig:/usr/local/opt/curl/lib/pkgconfig'" -#define PHP_ODBC_CFLAGS "" -#define PHP_ODBC_LFLAGS "" -#define PHP_ODBC_LIBS "" -#define PHP_ODBC_TYPE "" -#define PHP_OCI8_DIR "" -#define PHP_OCI8_ORACLE_VERSION "" -#define PHP_PROG_SENDMAIL "/usr/sbin/sendmail" -#define PEAR_INSTALLDIR "/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php/pear" -#define PHP_INCLUDE_PATH ".:/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php/pear" -#define PHP_EXTENSION_DIR "/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php/extensions/no-debug-zts-20190902" -#define PHP_PREFIX "/Users/pachanga/.phpbrew/php/php-7.4.27" -#define PHP_BINDIR "/Users/pachanga/.phpbrew/php/php-7.4.27/bin" -#define PHP_SBINDIR "/Users/pachanga/.phpbrew/php/php-7.4.27/sbin" -#define PHP_MANDIR "/Users/pachanga/.phpbrew/php/php-7.4.27/php/man" -#define PHP_LIBDIR "/Users/pachanga/.phpbrew/php/php-7.4.27/lib/php" -#define PHP_DATADIR "/Users/pachanga/.phpbrew/php/php-7.4.27/share/php" -#define PHP_SYSCONFDIR "/Users/pachanga/.phpbrew/php/php-7.4.27/etc" -#define PHP_LOCALSTATEDIR "/Users/pachanga/.phpbrew/php/php-7.4.27/var" -#define PHP_CONFIG_FILE_PATH "/Users/pachanga/.phpbrew/php/php-7.4.27/etc" -#define PHP_CONFIG_FILE_SCAN_DIR "/Users/pachanga/.phpbrew/php/php-7.4.27/var/db" -#define PHP_SHLIB_SUFFIX "so" -#define PHP_SHLIB_EXT_PREFIX "" diff --git a/7.4.27/mac/include/php/main/fastcgi.h b/7.4.27/mac/include/php/main/fastcgi.h deleted file mode 100644 index 95aae11..0000000 --- a/7.4.27/mac/include/php/main/fastcgi.h +++ /dev/null @@ -1,128 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Dmitry Stogov | - +----------------------------------------------------------------------+ -*/ - -/* FastCGI protocol */ - -#define FCGI_VERSION_1 1 - -#define FCGI_MAX_LENGTH 0xffff - -#define FCGI_KEEP_CONN 1 - -/* this is near the perfect hash function for most useful FastCGI variables - * which combines efficiency and minimal hash collisions - */ - -#define FCGI_HASH_FUNC(var, var_len) \ - (UNEXPECTED(var_len < 3) ? (unsigned int)var_len : \ - (((unsigned int)var[3]) << 2) + \ - (((unsigned int)var[var_len-2]) << 4) + \ - (((unsigned int)var[var_len-1]) << 2) + \ - var_len) - -#define FCGI_GETENV(request, name) \ - fcgi_quick_getenv(request, name, sizeof(name)-1, FCGI_HASH_FUNC(name, sizeof(name)-1)) - -#define FCGI_PUTENV(request, name, value) \ - fcgi_quick_putenv(request, name, sizeof(name)-1, FCGI_HASH_FUNC(name, sizeof(name)-1), value) - -typedef enum _fcgi_role { - FCGI_RESPONDER = 1, - FCGI_AUTHORIZER = 2, - FCGI_FILTER = 3 -} fcgi_role; - -enum { - FCGI_DEBUG = 1, - FCGI_NOTICE = 2, - FCGI_WARNING = 3, - FCGI_ERROR = 4, - FCGI_ALERT = 5, -}; - -typedef enum _fcgi_request_type { - FCGI_BEGIN_REQUEST = 1, /* [in] */ - FCGI_ABORT_REQUEST = 2, /* [in] (not supported) */ - FCGI_END_REQUEST = 3, /* [out] */ - FCGI_PARAMS = 4, /* [in] environment variables */ - FCGI_STDIN = 5, /* [in] post data */ - FCGI_STDOUT = 6, /* [out] response */ - FCGI_STDERR = 7, /* [out] errors */ - FCGI_DATA = 8, /* [in] filter data (not supported) */ - FCGI_GET_VALUES = 9, /* [in] */ - FCGI_GET_VALUES_RESULT = 10 /* [out] */ -} fcgi_request_type; - -typedef enum _fcgi_protocol_status { - FCGI_REQUEST_COMPLETE = 0, - FCGI_CANT_MPX_CONN = 1, - FCGI_OVERLOADED = 2, - FCGI_UNKNOWN_ROLE = 3 -} dcgi_protocol_status; - -/* FastCGI client API */ - -typedef void (*fcgi_apply_func)(char *var, unsigned int var_len, char *val, unsigned int val_len, void *arg); - -#define FCGI_HASH_TABLE_SIZE 128 -#define FCGI_HASH_TABLE_MASK (FCGI_HASH_TABLE_SIZE - 1) -#define FCGI_HASH_SEG_SIZE 4096 - -typedef struct _fcgi_request fcgi_request; - -int fcgi_init(void); -void fcgi_shutdown(void); -int fcgi_is_fastcgi(void); -int fcgi_is_closed(fcgi_request *req); -void fcgi_close(fcgi_request *req, int force, int destroy); -int fcgi_in_shutdown(void); -void fcgi_terminate(void); -int fcgi_listen(const char *path, int backlog); -fcgi_request* fcgi_init_request(int listen_socket, void(*on_accept)(), void(*on_read)(), void(*on_close)()); -void fcgi_destroy_request(fcgi_request *req); -void fcgi_set_allowed_clients(char *ip); -int fcgi_accept_request(fcgi_request *req); -int fcgi_finish_request(fcgi_request *req, int force_close); -const char *fcgi_get_last_client_ip(); -void fcgi_set_in_shutdown(int new_value); -void fcgi_request_set_keep(fcgi_request *req, int new_value); - -#ifndef HAVE_ATTRIBUTE_WEAK -typedef void (*fcgi_logger)(int type, const char *fmt, ...) ZEND_ATTRIBUTE_FORMAT(printf, 2, 3); -void fcgi_set_logger(fcgi_logger lg); -#endif - -int fcgi_has_env(fcgi_request *req); -char* fcgi_getenv(fcgi_request *req, const char* var, int var_len); -char* fcgi_putenv(fcgi_request *req, char* var, int var_len, char* val); -char* fcgi_quick_getenv(fcgi_request *req, const char* var, int var_len, unsigned int hash_value); -char* fcgi_quick_putenv(fcgi_request *req, char* var, int var_len, unsigned int hash_value, char* val); -void fcgi_loadenv(fcgi_request *req, fcgi_apply_func load_func, zval *array); - -int fcgi_read(fcgi_request *req, char *str, int len); - -int fcgi_write(fcgi_request *req, fcgi_request_type type, const char *str, int len); -int fcgi_flush(fcgi_request *req, int end); -int fcgi_end(fcgi_request *req); - -#ifdef PHP_WIN32 -void fcgi_impersonate(void); -#endif - -void fcgi_set_mgmt_var(const char * name, size_t name_len, const char * value, size_t value_len); -void fcgi_free_mgmt_var_cb(zval *zv); diff --git a/7.4.27/mac/include/php/main/fopen_wrappers.h b/7.4.27/mac/include/php/main/fopen_wrappers.h deleted file mode 100644 index 17e15b7..0000000 --- a/7.4.27/mac/include/php/main/fopen_wrappers.h +++ /dev/null @@ -1,49 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Jim Winstead | - +----------------------------------------------------------------------+ - */ - -#ifndef FOPEN_WRAPPERS_H -#define FOPEN_WRAPPERS_H - -BEGIN_EXTERN_C() -#include "php_globals.h" -#include "php_ini.h" - -PHPAPI int php_fopen_primary_script(zend_file_handle *file_handle); -PHPAPI char *expand_filepath(const char *filepath, char *real_path); -PHPAPI char *expand_filepath_ex(const char *filepath, char *real_path, const char *relative_to, size_t relative_to_len); -PHPAPI char *expand_filepath_with_mode(const char *filepath, char *real_path, const char *relative_to, size_t relative_to_len, int use_realpath); - -PHPAPI int php_check_open_basedir(const char *path); -PHPAPI int php_check_open_basedir_ex(const char *path, int warn); -PHPAPI int php_check_specific_open_basedir(const char *basedir, const char *path); - -/* OPENBASEDIR_CHECKPATH(filename) to ease merge between 6.x and 5.x */ -#define OPENBASEDIR_CHECKPATH(filename) php_check_open_basedir(filename) - -PHPAPI int php_check_safe_mode_include_dir(const char *path); - -PHPAPI zend_string *php_resolve_path(const char *filename, size_t filename_len, const char *path); - -PHPAPI FILE *php_fopen_with_path(const char *filename, const char *mode, const char *path, zend_string **opened_path); - -PHPAPI char *php_strip_url_passwd(char *path); - -PHPAPI ZEND_INI_MH(OnUpdateBaseDir); -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/main/http_status_codes.h b/7.4.27/mac/include/php/main/http_status_codes.h deleted file mode 100644 index 5d5cfb0..0000000 --- a/7.4.27/mac/include/php/main/http_status_codes.h +++ /dev/null @@ -1,82 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Andrea Faulds | - +----------------------------------------------------------------------+ -*/ - -#ifndef HTTP_STATUS_CODES_H -#define HTTP_STATUS_CODES_H - -typedef struct _http_response_status_code_pair { - const int code; - const char *str; -} http_response_status_code_pair; - -static const http_response_status_code_pair http_status_map[] = { - { 100, "Continue" }, - { 101, "Switching Protocols" }, - { 200, "OK" }, - { 201, "Created" }, - { 202, "Accepted" }, - { 203, "Non-Authoritative Information" }, - { 204, "No Content" }, - { 205, "Reset Content" }, - { 206, "Partial Content" }, - { 300, "Multiple Choices" }, - { 301, "Moved Permanently" }, - { 302, "Found" }, - { 303, "See Other" }, - { 304, "Not Modified" }, - { 305, "Use Proxy" }, - { 307, "Temporary Redirect" }, - { 308, "Permanent Redirect" }, - { 400, "Bad Request" }, - { 401, "Unauthorized" }, - { 402, "Payment Required" }, - { 403, "Forbidden" }, - { 404, "Not Found" }, - { 405, "Method Not Allowed" }, - { 406, "Not Acceptable" }, - { 407, "Proxy Authentication Required" }, - { 408, "Request Timeout" }, - { 409, "Conflict" }, - { 410, "Gone" }, - { 411, "Length Required" }, - { 412, "Precondition Failed" }, - { 413, "Request Entity Too Large" }, - { 414, "Request-URI Too Long" }, - { 415, "Unsupported Media Type" }, - { 416, "Requested Range Not Satisfiable" }, - { 417, "Expectation Failed" }, - { 426, "Upgrade Required" }, - { 428, "Precondition Required" }, - { 429, "Too Many Requests" }, - { 431, "Request Header Fields Too Large" }, - { 451, "Unavailable For Legal Reasons"}, - { 500, "Internal Server Error" }, - { 501, "Not Implemented" }, - { 502, "Bad Gateway" }, - { 503, "Service Unavailable" }, - { 504, "Gateway Timeout" }, - { 505, "HTTP Version Not Supported" }, - { 506, "Variant Also Negotiates" }, - { 511, "Network Authentication Required" }, - /* to allow search with while() loop */ - { 0, NULL } -}; - -static const size_t http_status_map_len = (sizeof(http_status_map) / sizeof(http_response_status_code_pair)) - 1; - -#endif /* HTTP_STATUS_CODES_H */ diff --git a/7.4.27/mac/include/php/main/php.h b/7.4.27/mac/include/php/main/php.h deleted file mode 100644 index c135a35..0000000 --- a/7.4.27/mac/include/php/main/php.h +++ /dev/null @@ -1,450 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_H -#define PHP_H - -#ifdef HAVE_DMALLOC -#include -#endif - -#define PHP_API_VERSION 20190902 -#define PHP_HAVE_STREAMS -#define YYDEBUG 0 -#define PHP_DEFAULT_CHARSET "UTF-8" - -#include "php_version.h" -#include "zend.h" -#include "zend_sort.h" -#include "php_compat.h" - -#include "zend_API.h" - -#define php_sprintf sprintf - -/* Operating system family definition */ -#ifdef PHP_WIN32 -# define PHP_OS_FAMILY "Windows" -#elif defined(BSD) || defined(__DragonFly__) || defined(__FreeBSD__) || defined(__NetBSD__) || defined(__OpenBSD__) -# define PHP_OS_FAMILY "BSD" -#elif defined(__APPLE__) || defined(__MACH__) -# define PHP_OS_FAMILY "Darwin" -#elif defined(__sun__) -# define PHP_OS_FAMILY "Solaris" -#elif defined(__linux__) -# define PHP_OS_FAMILY "Linux" -#else -# define PHP_OS_FAMILY "Unknown" -#endif - -/* PHP's DEBUG value must match Zend's ZEND_DEBUG value */ -#undef PHP_DEBUG -#define PHP_DEBUG ZEND_DEBUG - -#ifdef PHP_WIN32 -# include "tsrm_win32.h" -# ifdef PHP_EXPORTS -# define PHPAPI __declspec(dllexport) -# else -# define PHPAPI __declspec(dllimport) -# endif -# define PHP_DIR_SEPARATOR '\\' -# define PHP_EOL "\r\n" -#else -# if defined(__GNUC__) && __GNUC__ >= 4 -# define PHPAPI __attribute__ ((visibility("default"))) -# else -# define PHPAPI -# endif -# define THREAD_LS -# define PHP_DIR_SEPARATOR '/' -# define PHP_EOL "\n" -#endif - -/* Windows specific defines */ -#ifdef PHP_WIN32 -# define PHP_PROG_SENDMAIL "Built in mailer" -# define WIN32_LEAN_AND_MEAN -# define NOOPENFILE - -# include -# include -# include -# include -# include -# include -# include -# include - -typedef int uid_t; -typedef int gid_t; -typedef char * caddr_t; -typedef int pid_t; - -# ifndef PHP_DEBUG -# ifdef inline -# undef inline -# endif -# define inline __inline -# endif - -# define M_TWOPI (M_PI * 2.0) -# define off_t _off_t - -# define lstat(x, y) php_sys_lstat(x, y) -# define chdir(path) _chdir(path) -# define mkdir(a, b) _mkdir(a) -# define rmdir(a) _rmdir(a) -# define getpid _getpid -# define php_sleep(t) SleepEx(t*1000, TRUE) - -# ifndef getcwd -# define getcwd(a, b) _getcwd(a, b) -# endif -#endif - -#if PHP_DEBUG -#undef NDEBUG -#else -#ifndef NDEBUG -#define NDEBUG -#endif -#endif -#include - -#if HAVE_UNIX_H -#include -#endif - -#if HAVE_ALLOCA_H -#include -#endif - -#if HAVE_BUILD_DEFS_H -#include -#endif - -/* - * This is a fast version of strlcpy which should be used, if you - * know the size of the destination buffer and if you know - * the length of the source string. - * - * size is the allocated number of bytes of dst - * src_size is the number of bytes excluding the NUL of src - */ - -#define PHP_STRLCPY(dst, src, size, src_size) \ - { \ - size_t php_str_len; \ - \ - if (src_size >= size) \ - php_str_len = size - 1; \ - else \ - php_str_len = src_size; \ - memcpy(dst, src, php_str_len); \ - dst[php_str_len] = '\0'; \ - } - -#ifndef HAVE_STRLCPY -BEGIN_EXTERN_C() -PHPAPI size_t php_strlcpy(char *dst, const char *src, size_t siz); -END_EXTERN_C() -#undef strlcpy -#define strlcpy php_strlcpy -#define HAVE_STRLCPY 1 -#define USE_STRLCPY_PHP_IMPL 1 -#endif - -#ifndef HAVE_STRLCAT -BEGIN_EXTERN_C() -PHPAPI size_t php_strlcat(char *dst, const char *src, size_t siz); -END_EXTERN_C() -#undef strlcat -#define strlcat php_strlcat -#define HAVE_STRLCAT 1 -#define USE_STRLCAT_PHP_IMPL 1 -#endif - -#ifndef HAVE_EXPLICIT_BZERO -BEGIN_EXTERN_C() -PHPAPI void php_explicit_bzero(void *dst, size_t siz); -END_EXTERN_C() -#undef explicit_bzero -#define explicit_bzero php_explicit_bzero -#endif - -#ifndef HAVE_STRTOK_R -BEGIN_EXTERN_C() -char *strtok_r(char *s, const char *delim, char **last); -END_EXTERN_C() -#endif - -#ifndef HAVE_SOCKLEN_T -# ifdef PHP_WIN32 -typedef int socklen_t; -# else -typedef unsigned int socklen_t; -# endif -#endif - -#define CREATE_MUTEX(a, b) -#define SET_MUTEX(a) -#define FREE_MUTEX(a) - -/* - * Then the ODBC support can use both iodbc and Solid, - * uncomment this. - * #define HAVE_ODBC (HAVE_IODBC|HAVE_SOLID) - */ - -#include -#include -#if HAVE_UNISTD_H -#include -#endif - -#include - -#include "php_stdint.h" - -#include "zend_hash.h" -#include "zend_alloc.h" -#include "zend_stack.h" -#include - -#if HAVE_PWD_H -# ifdef PHP_WIN32 -#include "win32/param.h" -# else -#include -#include -# endif -#endif - -#include - -#ifndef LONG_MAX -#define LONG_MAX 2147483647L -#endif - -#ifndef LONG_MIN -#define LONG_MIN (- LONG_MAX - 1) -#endif - -#ifndef INT_MAX -#define INT_MAX 2147483647 -#endif - -#ifndef INT_MIN -#define INT_MIN (- INT_MAX - 1) -#endif - -/* double limits */ -#include -#if defined(DBL_MANT_DIG) && defined(DBL_MIN_EXP) -#define PHP_DOUBLE_MAX_LENGTH (3 + DBL_MANT_DIG - DBL_MIN_EXP) -#else -#define PHP_DOUBLE_MAX_LENGTH 1080 -#endif - -#define PHP_GCC_VERSION ZEND_GCC_VERSION -#define PHP_ATTRIBUTE_MALLOC ZEND_ATTRIBUTE_MALLOC -#define PHP_ATTRIBUTE_FORMAT ZEND_ATTRIBUTE_FORMAT - -BEGIN_EXTERN_C() -#include "snprintf.h" -END_EXTERN_C() -#include "spprintf.h" - -#define EXEC_INPUT_BUF 4096 - -#define PHP_MIME_TYPE "application/x-httpd-php" - -/* macros */ -#define STR_PRINT(str) ((str)?(str):"") - -#ifndef MAXPATHLEN -# ifdef PHP_WIN32 -# include "win32/ioutil.h" -# define MAXPATHLEN PHP_WIN32_IOUTIL_MAXPATHLEN -# elif PATH_MAX -# define MAXPATHLEN PATH_MAX -# elif defined(MAX_PATH) -# define MAXPATHLEN MAX_PATH -# else -# define MAXPATHLEN 256 /* Should be safe for any weird systems that do not define it */ -# endif -#endif - -#define php_ignore_value(x) ZEND_IGNORE_VALUE(x) - -/* global variables */ -#if !defined(PHP_WIN32) -#define PHP_SLEEP_NON_VOID -#define php_sleep sleep -extern char **environ; -#endif /* !defined(PHP_WIN32) */ - -#ifdef PHP_PWRITE_64 -ssize_t pwrite(int, void *, size_t, off64_t); -#endif - -#ifdef PHP_PREAD_64 -ssize_t pread(int, void *, size_t, off64_t); -#endif - -BEGIN_EXTERN_C() -void phperror(char *error); -PHPAPI size_t php_write(void *buf, size_t size); -PHPAPI size_t php_printf(const char *format, ...) PHP_ATTRIBUTE_FORMAT(printf, 1, - 2); -PHPAPI int php_get_module_initialized(void); -#ifdef HAVE_SYSLOG_H -#include "php_syslog.h" -#define php_log_err(msg) php_log_err_with_severity(msg, LOG_NOTICE) -#else -#define php_log_err(msg) php_log_err_with_severity(msg, 5) -#endif -PHPAPI ZEND_COLD void php_log_err_with_severity(char *log_message, int syslog_type_int); -int Debug(char *format, ...) PHP_ATTRIBUTE_FORMAT(printf, 1, 2); -int cfgparse(void); -END_EXTERN_C() - -#define php_error zend_error -#define error_handling_t zend_error_handling_t - -BEGIN_EXTERN_C() -static inline ZEND_ATTRIBUTE_DEPRECATED void php_set_error_handling(error_handling_t error_handling, zend_class_entry *exception_class) -{ - zend_replace_error_handling(error_handling, exception_class, NULL); -} -static inline ZEND_ATTRIBUTE_DEPRECATED void php_std_error_handling() {} - -PHPAPI ZEND_COLD void php_verror(const char *docref, const char *params, int type, const char *format, va_list args) PHP_ATTRIBUTE_FORMAT(printf, 4, 0); - -/* PHPAPI void php_error(int type, const char *format, ...); */ -PHPAPI ZEND_COLD void php_error_docref(const char *docref, int type, const char *format, ...) - PHP_ATTRIBUTE_FORMAT(printf, 3, 4); -PHPAPI ZEND_COLD void php_error_docref1(const char *docref, const char *param1, int type, const char *format, ...) - PHP_ATTRIBUTE_FORMAT(printf, 4, 5); -PHPAPI ZEND_COLD void php_error_docref2(const char *docref, const char *param1, const char *param2, int type, const char *format, ...) - PHP_ATTRIBUTE_FORMAT(printf, 5, 6); -#ifdef PHP_WIN32 -PHPAPI ZEND_COLD void php_win32_docref1_from_error(DWORD error, const char *param1); -PHPAPI ZEND_COLD void php_win32_docref2_from_error(DWORD error, const char *param1, const char *param2); -#endif -END_EXTERN_C() - -#define zenderror phperror -#define zendlex phplex - -#define phpparse zendparse -#define phprestart zendrestart -#define phpin zendin - -#define php_memnstr zend_memnstr - -/* functions */ -BEGIN_EXTERN_C() -PHPAPI extern int (*php_register_internal_extensions_func)(void); -PHPAPI int php_register_internal_extensions(void); -PHPAPI int php_mergesort(void *base, size_t nmemb, size_t size, int (*cmp)(const void *, const void *)); -PHPAPI void php_register_pre_request_shutdown(void (*func)(void *), void *userdata); -PHPAPI void php_com_initialize(void); -PHPAPI char *php_get_current_user(void); - -PHPAPI const char *php_get_internal_encoding(void); -PHPAPI const char *php_get_input_encoding(void); -PHPAPI const char *php_get_output_encoding(void); -PHPAPI extern void (*php_internal_encoding_changed)(void); -END_EXTERN_C() - -/* PHP-named Zend macro wrappers */ -#define PHP_FN ZEND_FN -#define PHP_MN ZEND_MN -#define PHP_NAMED_FUNCTION ZEND_NAMED_FUNCTION -#define PHP_FUNCTION ZEND_FUNCTION -#define PHP_METHOD ZEND_METHOD - -#define PHP_RAW_NAMED_FE ZEND_RAW_NAMED_FE -#define PHP_NAMED_FE ZEND_NAMED_FE -#define PHP_FE ZEND_FE -#define PHP_DEP_FE ZEND_DEP_FE -#define PHP_FALIAS ZEND_FALIAS -#define PHP_DEP_FALIAS ZEND_DEP_FALIAS -#define PHP_ME ZEND_ME -#define PHP_MALIAS ZEND_MALIAS -#define PHP_ABSTRACT_ME ZEND_ABSTRACT_ME -#define PHP_ME_MAPPING ZEND_ME_MAPPING -#define PHP_FE_END ZEND_FE_END - -#define PHP_MODULE_STARTUP_N ZEND_MODULE_STARTUP_N -#define PHP_MODULE_SHUTDOWN_N ZEND_MODULE_SHUTDOWN_N -#define PHP_MODULE_ACTIVATE_N ZEND_MODULE_ACTIVATE_N -#define PHP_MODULE_DEACTIVATE_N ZEND_MODULE_DEACTIVATE_N -#define PHP_MODULE_INFO_N ZEND_MODULE_INFO_N - -#define PHP_MODULE_STARTUP_D ZEND_MODULE_STARTUP_D -#define PHP_MODULE_SHUTDOWN_D ZEND_MODULE_SHUTDOWN_D -#define PHP_MODULE_ACTIVATE_D ZEND_MODULE_ACTIVATE_D -#define PHP_MODULE_DEACTIVATE_D ZEND_MODULE_DEACTIVATE_D -#define PHP_MODULE_INFO_D ZEND_MODULE_INFO_D - -/* Compatibility macros */ -#define PHP_MINIT ZEND_MODULE_STARTUP_N -#define PHP_MSHUTDOWN ZEND_MODULE_SHUTDOWN_N -#define PHP_RINIT ZEND_MODULE_ACTIVATE_N -#define PHP_RSHUTDOWN ZEND_MODULE_DEACTIVATE_N -#define PHP_MINFO ZEND_MODULE_INFO_N -#define PHP_GINIT ZEND_GINIT -#define PHP_GSHUTDOWN ZEND_GSHUTDOWN - -#define PHP_MINIT_FUNCTION ZEND_MODULE_STARTUP_D -#define PHP_MSHUTDOWN_FUNCTION ZEND_MODULE_SHUTDOWN_D -#define PHP_RINIT_FUNCTION ZEND_MODULE_ACTIVATE_D -#define PHP_RSHUTDOWN_FUNCTION ZEND_MODULE_DEACTIVATE_D -#define PHP_MINFO_FUNCTION ZEND_MODULE_INFO_D -#define PHP_GINIT_FUNCTION ZEND_GINIT_FUNCTION -#define PHP_GSHUTDOWN_FUNCTION ZEND_GSHUTDOWN_FUNCTION - -#define PHP_MODULE_GLOBALS ZEND_MODULE_GLOBALS - - -/* Output support */ -#include "main/php_output.h" - - -#include "php_streams.h" -#include "php_memory_streams.h" -#include "fopen_wrappers.h" - - -/* Virtual current working directory support */ -#include "zend_virtual_cwd.h" - -#include "zend_constants.h" - -/* connection status states */ -#define PHP_CONNECTION_NORMAL 0 -#define PHP_CONNECTION_ABORTED 1 -#define PHP_CONNECTION_TIMEOUT 2 - -#include "php_reentrancy.h" - -#endif diff --git a/7.4.27/mac/include/php/main/php_compat.h b/7.4.27/mac/include/php/main/php_compat.h deleted file mode 100644 index 01d3e32..0000000 --- a/7.4.27/mac/include/php/main/php_compat.h +++ /dev/null @@ -1,402 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_COMPAT_H -#define PHP_COMPAT_H - -#ifdef PHP_WIN32 -#include "config.w32.h" -#else -#include -#endif - -#if defined(HAVE_BUNDLED_PCRE) || !defined(PHP_VERSION) -#define pcre2_jit_callback_8 php_pcre2_jit_callback -#define pcre2_callout_enumerate_8 php_pcre2_callout_enumerate -#define pcre2_code_copy_8 php_pcre2_code_copy -#define pcre2_code_copy_with_tables_8 php_pcre2_code_copy_with_tables -#define pcre2_code_free_8 php_pcre2_code_free -#define pcre2_compile_8 php_pcre2_compile -#define pcre2_compile_context_copy_8 php_pcre2_compile_context_copy -#define pcre2_compile_context_create_8 php_pcre2_compile_context_create -#define pcre2_compile_context_free_8 php_pcre2_compile_context_free -#define pcre2_config_8 php_pcre2_config -#define pcre2_convert_context_copy_8 php_pcre2_convert_context_copy -#define pcre2_convert_context_create_8 php_pcre2_convert_context_create -#define pcre2_convert_context_free_8 php_pcre2_convert_context_free -#define pcre2_dfa_match_8 php_pcre2_dfa_match -#define pcre2_general_context_copy_8 php_pcre2_general_context_copy -#define pcre2_general_context_create_8 php_pcre2_general_context_create -#define pcre2_general_context_free_8 php_pcre2_general_context_free -#define pcre2_get_error_message_8 php_pcre2_get_error_message -#define pcre2_get_mark_8 php_pcre2_get_mark -#define pcre2_get_ovector_pointer_8 php_pcre2_get_ovector_pointer -#define pcre2_get_ovector_count_8 php_pcre2_get_ovector_count -#define pcre2_get_startchar_8 php_pcre2_get_startchar -#define pcre2_jit_compile_8 php_pcre2_jit_compile -#define pcre2_jit_match_8 php_pcre2_jit_match -#define pcre2_jit_free_unused_memory_8 php_pcre2_jit_free_unused_memory -#define pcre2_jit_stack_assign_8 php_pcre2_jit_stack_assign -#define pcre2_jit_stack_create_8 php_pcre2_jit_stack_create -#define pcre2_jit_stack_free_8 php_pcre2_jit_stack_free -#define pcre2_maketables_8 php_pcre2_maketables -#define pcre2_match_8 php_pcre2_match -#define pcre2_match_context_copy_8 php_pcre2_match_context_copy -#define pcre2_match_context_create_8 php_pcre2_match_context_create -#define pcre2_match_context_free_8 php_pcre2_match_context_free -#define pcre2_match_data_create_8 php_pcre2_match_data_create -#define pcre2_match_data_create_from_pattern_8 php_pcre2_match_data_create_from_pattern -#define pcre2_match_data_free_8 php_pcre2_match_data_free -#define pcre2_pattern_info_8 php_pcre2_pattern_info -#define pcre2_serialize_decode_8 php_pcre2_serialize_decode -#define pcre2_serialize_encode_8 php_pcre2_serialize_encode -#define pcre2_serialize_free_8 php_pcre2_serialize_free -#define pcre2_serialize_get_number_of_codes_8 php_pcre2_serialize_get_number_of_codes -#define pcre2_set_bsr_8 php_pcre2_set_bsr -#define pcre2_set_callout_8 php_pcre2_set_callout -#define pcre2_set_character_tables_8 php_pcre2_set_character_tables -#define pcre2_set_compile_extra_options_8 php_pcre2_set_compile_extra_options -#define pcre2_set_compile_recursion_guard_8 php_pcre2_set_compile_recursion_guard -#define pcre2_set_depth_limit_8 php_pcre2_set_depth_limit -#define pcre2_set_glob_escape_8 php_pcre2_set_glob_escape -#define pcre2_set_glob_separator_8 php_pcre2_set_glob_separator -#define pcre2_set_heap_limit_8 php_pcre2_set_heap_limit -#define pcre2_set_match_limit_8 php_pcre2_set_match_limit -#define pcre2_set_max_pattern_length_8 php_pcre2_set_max_pattern_length -#define pcre2_set_newline_8 php_pcre2_set_newline -#define pcre2_set_parens_nest_limit_8 php_pcre2_set_parens_nest_limit -#define pcre2_set_offset_limit_8 php_pcre2_set_offset_limit -#define pcre2_substitute_8 php_pcre2_substitute -#define pcre2_substring_copy_byname_8 php_pcre2_substring_copy_byname -#define pcre2_substring_copy_bynumber_8 php_pcre2_substring_copy_bynumber -#define pcre2_substring_free_8 php_pcre2_substring_free -#define pcre2_substring_get_byname_8 php_pcre2_substring_get_byname -#define pcre2_substring_get_bynumber_8 php_pcre2_substring_get_bynumber -#define pcre2_substring_length_byname_8 php_pcre2_substring_length_byname -#define pcre2_substring_length_bynumber_8 php_pcre2_substring_length_bynumber -#define pcre2_substring_list_get_8 php_pcre2_substring_list_get -#define pcre2_substring_list_free_8 php_pcre2_substring_list_free -#define pcre2_substring_nametable_scan_8 php_pcre2_substring_nametable_scan -#define pcre2_substring_number_from_name_8 php_pcre2_substring_number_from_name -#define pcre2_set_recursion_limit_8 php_pcre2_set_recursion_limit -#define pcre2_set_recursion_memory_management_8 php_pcre2_set_recursion_memory_management -#endif - -#define lookup php_lookup -#define hashTableInit php_hashTableInit -#define hashTableDestroy php_hashTableDestroy -#define hashTableIterInit php_hashTableIterInit -#define hashTableIterNext php_hashTableIterNext - -#if defined(HAVE_LIBXML) && (defined(HAVE_XML) || defined(HAVE_XMLRPC)) && !defined(HAVE_LIBEXPAT) -#define XML_DefaultCurrent php_XML_DefaultCurrent -#define XML_ErrorString php_XML_ErrorString -#define XML_ExpatVersion php_XML_ExpatVersion -#define XML_ExpatVersionInfo php_XML_ExpatVersionInfo -#define XML_ExternalEntityParserCreate php_XML_ExternalEntityParserCreate -#define XML_GetBase php_XML_GetBase -#define XML_GetBuffer php_XML_GetBuffer -#define XML_GetCurrentByteCount php_XML_GetCurrentByteCount -#define XML_GetCurrentByteIndex php_XML_GetCurrentByteIndex -#define XML_GetCurrentColumnNumber php_XML_GetCurrentColumnNumber -#define XML_GetCurrentLineNumber php_XML_GetCurrentLineNumber -#define XML_GetErrorCode php_XML_GetErrorCode -#define XML_GetIdAttributeIndex php_XML_GetIdAttributeIndex -#define XML_GetInputContext php_XML_GetInputContext -#define XML_GetSpecifiedAttributeCount php_XML_GetSpecifiedAttributeCount -#define XmlGetUtf16InternalEncodingNS php_XmlGetUtf16InternalEncodingNS -#define XmlGetUtf16InternalEncoding php_XmlGetUtf16InternalEncoding -#define XmlGetUtf8InternalEncodingNS php_XmlGetUtf8InternalEncodingNS -#define XmlGetUtf8InternalEncoding php_XmlGetUtf8InternalEncoding -#define XmlInitEncoding php_XmlInitEncoding -#define XmlInitEncodingNS php_XmlInitEncodingNS -#define XmlInitUnknownEncoding php_XmlInitUnknownEncoding -#define XmlInitUnknownEncodingNS php_XmlInitUnknownEncodingNS -#define XML_ParseBuffer php_XML_ParseBuffer -#define XML_Parse php_XML_Parse -#define XML_ParserCreate_MM php_XML_ParserCreate_MM -#define XML_ParserCreateNS php_XML_ParserCreateNS -#define XML_ParserCreate php_XML_ParserCreate -#define XML_ParserFree php_XML_ParserFree -#define XmlParseXmlDecl php_XmlParseXmlDecl -#define XmlParseXmlDeclNS php_XmlParseXmlDeclNS -#define XmlPrologStateInitExternalEntity php_XmlPrologStateInitExternalEntity -#define XmlPrologStateInit php_XmlPrologStateInit -#define XML_SetAttlistDeclHandler php_XML_SetAttlistDeclHandler -#define XML_SetBase php_XML_SetBase -#define XML_SetCdataSectionHandler php_XML_SetCdataSectionHandler -#define XML_SetCharacterDataHandler php_XML_SetCharacterDataHandler -#define XML_SetCommentHandler php_XML_SetCommentHandler -#define XML_SetDefaultHandlerExpand php_XML_SetDefaultHandlerExpand -#define XML_SetDefaultHandler php_XML_SetDefaultHandler -#define XML_SetDoctypeDeclHandler php_XML_SetDoctypeDeclHandler -#define XML_SetElementDeclHandler php_XML_SetElementDeclHandler -#define XML_SetElementHandler php_XML_SetElementHandler -#define XML_SetEncoding php_XML_SetEncoding -#define XML_SetEndCdataSectionHandler php_XML_SetEndCdataSectionHandler -#define XML_SetEndDoctypeDeclHandler php_XML_SetEndDoctypeDeclHandler -#define XML_SetEndElementHandler php_XML_SetEndElementHandler -#define XML_SetEndNamespaceDeclHandler php_XML_SetEndNamespaceDeclHandler -#define XML_SetEntityDeclHandler php_XML_SetEntityDeclHandler -#define XML_SetExternalEntityRefHandlerArg php_XML_SetExternalEntityRefHandlerArg -#define XML_SetExternalEntityRefHandler php_XML_SetExternalEntityRefHandler -#define XML_SetNamespaceDeclHandler php_XML_SetNamespaceDeclHandler -#define XML_SetNotationDeclHandler php_XML_SetNotationDeclHandler -#define XML_SetNotStandaloneHandler php_XML_SetNotStandaloneHandler -#define XML_SetParamEntityParsing php_XML_SetParamEntityParsing -#define XML_SetProcessingInstructionHandler php_XML_SetProcessingInstructionHandler -#define XML_SetReturnNSTriplet php_XML_SetReturnNSTriplet -#define XML_SetStartCdataSectionHandler php_XML_SetStartCdataSectionHandler -#define XML_SetStartDoctypeDeclHandler php_XML_SetStartDoctypeDeclHandler -#define XML_SetStartElementHandler php_XML_SetStartElementHandler -#define XML_SetStartNamespaceDeclHandler php_XML_SetStartNamespaceDeclHandler -#define XML_SetUnknownEncodingHandler php_XML_SetUnknownEncodingHandler -#define XML_SetUnparsedEntityDeclHandler php_XML_SetUnparsedEntityDeclHandler -#define XML_SetUserData php_XML_SetUserData -#define XML_SetXmlDeclHandler php_XML_SetXmlDeclHandler -#define XmlSizeOfUnknownEncoding php_XmlSizeOfUnknownEncoding -#define XML_UseParserAsHandlerArg php_XML_UseParserAsHandlerArg -#define XmlUtf16Encode php_XmlUtf16Encode -#define XmlUtf8Encode php_XmlUtf8Encode -#define XML_FreeContentModel php_XML_FreeContentModel -#define XML_MemMalloc php_XML_MemMalloc -#define XML_MemRealloc php_XML_MemRealloc -#define XML_MemFree php_XML_MemFree -#define XML_UseForeignDTD php_XML_UseForeignDTD -#define XML_GetFeatureList php_XML_GetFeatureList -#define XML_ParserReset php_XML_ParserReset - -#ifdef HAVE_GD_BUNDLED -#define any2eucjp php_gd_any2eucjp -#define createwbmp php_gd_createwbmp -#define empty_output_buffer php_gd_empty_output_buffer -#define fill_input_buffer php_gd_fill_input_buffer -#define freewbmp php_gd_freewbmp -#define gdAlphaBlend php_gd_gdAlphaBlend -#define gdCompareInt php_gd_gdCompareInt -#define gdCosT php_gd_gdCosT -#define gdCtxPrintf php_gd_gdCtxPrintf -#define gdDPExtractData php_gd_gdDPExtractData -#define gdFontGetGiant php_gd_gdFontGetGiant -#define gdFontGetLarge php_gd_gdFontGetLarge -#define gdFontGetMediumBold php_gd_gdFontGetMediumBold -#define gdFontGetSmall php_gd_gdFontGetSmall -#define gdFontGetTiny php_gd_gdFontGetTiny -#define gdFontGiant php_gd_gdFontGiant -#define gdFontGiantData php_gd_gdFontGiantData -#define gdFontGiantRep php_gd_gdFontGiantRep -#define gdFontLarge php_gd_gdFontLarge -#define gdFontLargeData php_gd_gdFontLargeData -#define gdFontLargeRep php_gd_gdFontLargeRep -#define gdFontMediumBold php_gd_gdFontMediumBold -#define gdFontMediumBoldData php_gd_gdFontMediumBoldData -#define gdFontMediumBoldRep php_gd_gdFontMediumBoldRep -#define gdFontSmall php_gd_gdFontSmall -#define gdFontSmallData php_gd_gdFontSmallData -#define gdFontSmallRep php_gd_gdFontSmallRep -#define gdFontTiny php_gd_gdFontTiny -#define gdFontTinyData php_gd_gdFontTinyData -#define gdFontTinyRep php_gd_gdFontTinyRep -#define gdGetBuf php_gd_gdGetBuf -#define gdGetByte php_gd_gdGetByte -#define gdGetC php_gd_gdGetC -#define _gdGetColors php_gd__gdGetColors -#define gd_getin php_gd_gd_getin -#define gdGetInt php_gd_gdGetInt -#define gdGetWord php_gd_gdGetWord -#define gdImageAABlend php_gd_gdImageAABlend -#define gdImageAALine php_gd_gdImageAALine -#define gdImageAlphaBlending php_gd_gdImageAlphaBlending -#define gdImageAntialias php_gd_gdImageAntialias -#define gdImageArc php_gd_gdImageArc -#define gdImageBrightness php_gd_gdImageBrightness -#define gdImageChar php_gd_gdImageChar -#define gdImageCharUp php_gd_gdImageCharUp -#define gdImageColor php_gd_gdImageColor -#define gdImageColorAllocate php_gd_gdImageColorAllocate -#define gdImageColorAllocateAlpha php_gd_gdImageColorAllocateAlpha -#define gdImageColorClosest php_gd_gdImageColorClosest -#define gdImageColorClosestAlpha php_gd_gdImageColorClosestAlpha -#define gdImageColorClosestHWB php_gd_gdImageColorClosestHWB -#define gdImageColorDeallocate php_gd_gdImageColorDeallocate -#define gdImageColorExact php_gd_gdImageColorExact -#define gdImageColorExactAlpha php_gd_gdImageColorExactAlpha -#define gdImageColorMatch php_gd_gdImageColorMatch -#define gdImageColorResolve php_gd_gdImageColorResolve -#define gdImageColorResolveAlpha php_gd_gdImageColorResolveAlpha -#define gdImageColorTransparent php_gd_gdImageColorTransparent -#define gdImageCompare php_gd_gdImageCompare -#define gdImageContrast php_gd_gdImageContrast -#define gdImageConvolution php_gd_gdImageConvolution -#define gdImageCopy php_gd_gdImageCopy -#define gdImageCopyMerge php_gd_gdImageCopyMerge -#define gdImageCopyMergeGray php_gd_gdImageCopyMergeGray -#define gdImageCopyResampled php_gd_gdImageCopyResampled -#define gdImageCopyResized php_gd_gdImageCopyResized -#define gdImageCreate php_gd_gdImageCreate -#define gdImageCreateFromGd php_gd_gdImageCreateFromGd -#define gdImageCreateFromGd2 php_gd_gdImageCreateFromGd2 -#define gdImageCreateFromGd2Ctx php_gd_gdImageCreateFromGd2Ctx -#define gdImageCreateFromGd2Part php_gd_gdImageCreateFromGd2Part -#define gdImageCreateFromGd2PartCtx php_gd_gdImageCreateFromGd2PartCtx -#define gdImageCreateFromGd2PartPtr php_gd_gdImageCreateFromGd2PartPtr -#define gdImageCreateFromGd2Ptr php_gd_gdImageCreateFromGd2Ptr -#define gdImageCreateFromGdCtx php_gd_gdImageCreateFromGdCtx -#define gdImageCreateFromGdPtr php_gd_gdImageCreateFromGdPtr -#define gdImageCreateFromGif php_gd_gdImageCreateFromGif -#define gdImageCreateFromGifCtx php_gd_gdImageCreateFromGifCtx -#define gdImageCreateFromGifSource php_gd_gdImageCreateFromGifSource -#define gdImageCreateFromJpeg php_gd_gdImageCreateFromJpeg -#define gdImageCreateFromJpegCtx php_gd_gdImageCreateFromJpegCtx -#define gdImageCreateFromJpegPtr php_gd_gdImageCreateFromJpegPtr -#define gdImageCreateFromPng php_gd_gdImageCreateFromPng -#define gdImageCreateFromPngCtx php_gd_gdImageCreateFromPngCtx -#define gdImageCreateFromPngPtr php_gd_gdImageCreateFromPngPtr -#define gdImageCreateFromPngSource php_gd_gdImageCreateFromPngSource -#define gdImageCreateFromWBMP php_gd_gdImageCreateFromWBMP -#define gdImageCreateFromWBMPCtx php_gd_gdImageCreateFromWBMPCtx -#define gdImageCreateFromWBMPPtr php_gd_gdImageCreateFromWBMPPtr -#define gdImageCreateFromXbm php_gd_gdImageCreateFromXbm -#define gdImageCreatePaletteFromTrueColor php_gd_gdImageCreatePaletteFromTrueColor -#define gdImageCreateTrueColor php_gd_gdImageCreateTrueColor -#define gdImageDashedLine php_gd_gdImageDashedLine -#define gdImageDestroy php_gd_gdImageDestroy -#define gdImageEdgeDetectQuick php_gd_gdImageEdgeDetectQuick -#define gdImageEllipse php_gd_gdImageEllipse -#define gdImageEmboss php_gd_gdImageEmboss -#define gdImageFill php_gd_gdImageFill -#define gdImageFilledArc php_gd_gdImageFilledArc -#define gdImageFilledEllipse php_gd_gdImageFilledEllipse -#define gdImageFilledPolygon php_gd_gdImageFilledPolygon -#define gdImageFilledRectangle php_gd_gdImageFilledRectangle -#define _gdImageFillTiled php_gd__gdImageFillTiled -#define gdImageFillToBorder php_gd_gdImageFillToBorder -#define gdImageGaussianBlur php_gd_gdImageGaussianBlur -#define gdImageGd php_gd_gdImageGd -#define gdImageGd2 php_gd_gdImageGd2 -#define gdImageGd2Ptr php_gd_gdImageGd2Ptr -#define gdImageGdPtr php_gd_gdImageGdPtr -#define gdImageGetClip php_gd_gdImageGetClip -#define gdImageGetPixel php_gd_gdImageGetPixel -#define gdImageGetTrueColorPixel php_gd_gdImageGetTrueColorPixel -#define gdImageGif php_gd_gdImageGif -#define gdImageGifCtx php_gd_gdImageGifCtx -#define gdImageGifPtr php_gd_gdImageGifPtr -#define gdImageGrayScale php_gd_gdImageGrayScale -#define gdImageInterlace php_gd_gdImageInterlace -#define gdImageJpeg php_gd_gdImageJpeg -#define gdImageJpegCtx php_gd_gdImageJpegCtx -#define gdImageJpegPtr php_gd_gdImageJpegPtr -#define gdImageLine php_gd_gdImageLine -#define gdImageMeanRemoval php_gd_gdImageMeanRemoval -#define gdImageNegate php_gd_gdImageNegate -#define gdImagePaletteCopy php_gd_gdImagePaletteCopy -#define gdImagePng php_gd_gdImagePng -#define gdImagePngCtx php_gd_gdImagePngCtx -#define gdImagePngCtxEx php_gd_gdImagePngCtxEx -#define gdImagePngEx php_gd_gdImagePngEx -#define gdImagePngPtr php_gd_gdImagePngPtr -#define gdImagePngPtrEx php_gd_gdImagePngPtrEx -#define gdImagePngToSink php_gd_gdImagePngToSink -#define gdImagePolygon php_gd_gdImagePolygon -#define gdImageRectangle php_gd_gdImageRectangle -#define gdImageRotate php_gd_gdImageRotate -#define gdImageRotate180 php_gd_gdImageRotate180 -#define gdImageRotate270 php_gd_gdImageRotate270 -#define gdImageRotate45 php_gd_gdImageRotate45 -#define gdImageRotate90 php_gd_gdImageRotate90 -#define gdImageSaveAlpha php_gd_gdImageSaveAlpha -#define gdImageSelectiveBlur php_gd_gdImageSelectiveBlur -#define gdImageSetAntiAliased php_gd_gdImageSetAntiAliased -#define gdImageSetAntiAliasedDontBlend php_gd_gdImageSetAntiAliasedDontBlend -#define gdImageSetBrush php_gd_gdImageSetBrush -#define gdImageSetClip php_gd_gdImageSetClip -#define gdImageSetPixel php_gd_gdImageSetPixel -#define gdImageSetStyle php_gd_gdImageSetStyle -#define gdImageSetThickness php_gd_gdImageSetThickness -#define gdImageSetTile php_gd_gdImageSetTile -#define gdImageSkewX php_gd_gdImageSkewX -#define gdImageSkewY php_gd_gdImageSkewY -#define gdImageSmooth php_gd_gdImageSmooth -#define gdImageString php_gd_gdImageString -#define gdImageString16 php_gd_gdImageString16 -#define gdImageStringFT php_gd_gdImageStringFT -#define gdImageStringFTEx php_gd_gdImageStringFTEx -#define gdImageStringTTF php_gd_gdImageStringTTF -#define gdImageStringUp php_gd_gdImageStringUp -#define gdImageStringUp16 php_gd_gdImageStringUp16 -#define gdImageTrueColorToPalette php_gd_gdImageTrueColorToPalette -#define gdImageWBMP php_gd_gdImageWBMP -#define gdImageWBMPCtx php_gd_gdImageWBMPCtx -#define gdImageWBMPPtr php_gd_gdImageWBMPPtr -#define gdImageXbmCtx php_gd_gdImageXbmCtx -#define gdNewDynamicCtx php_gd_gdNewDynamicCtx -#define gdNewDynamicCtxEx php_gd_gdNewDynamicCtxEx -#define gdNewFileCtx php_gd_gdNewFileCtx -#define gdNewSSCtx php_gd_gdNewSSCtx -#define gdPutBuf php_gd_gdPutBuf -#define gdPutC php_gd_gdPutC -#define _gdPutColors php_gd__gdPutColors -#define gdPutInt php_gd_gdPutInt -#define gd_putout php_gd_gd_putout -#define gdPutWord php_gd_gdPutWord -#define gdSeek php_gd_gdSeek -#define gdSinT php_gd_gdSinT -#define gd_strtok_r php_gd_gd_strtok_r -#define gdTell php_gd_gdTell -#define getmbi php_gd_getmbi -#define init_destination php_gd_init_destination -#define init_source php_gd_init_source -#define jpeg_gdIOCtx_dest php_gd_jpeg_gdIOCtx_dest -#define jpeg_gdIOCtx_src php_gd_jpeg_gdIOCtx_src -#define lsqrt php_gd_lsqrt -#define printwbmp php_gd_printwbmp -#define Putchar php_gd_Putchar -#define putmbi php_gd_putmbi -#define Putword php_gd_Putword -#define readwbmp php_gd_readwbmp -#define skipheader php_gd_skipheader -#define skip_input_data php_gd_skip_input_data -#define term_destination php_gd_term_destination -#define term_source php_gd_term_source -#define writewbmp php_gd_writewbmp -#define ZeroDataBlock php_gd_ZeroDataBlock -#define gdCacheCreate php_gd_gdCacheCreate -#define gdCacheDelete php_gd_gdCacheDelete -#define gdCacheGet php_gd_gdCacheGet -#define gdFontCacheSetup php_gd_gdFontCacheSetup -#define gdFontCacheShutdown php_gd_gdFontCacheShutdown -#define gdFreeFontCache php_gd_gdFreeFontCache -#endif /* HAVE_GD_BUNDLED */ - -/* Define to specify how much context to retain around the current parse - point. */ -#define XML_CONTEXT_BYTES 1024 - -/* Define to make parameter entity parsing functionality available. */ -#define XML_DTD 1 - -/* Define to make XML Namespaces functionality available. */ -#define XML_NS 1 -#endif - -#ifdef PHP_EXPORTS -#define PCRE_STATIC -#endif - -#endif diff --git a/7.4.27/mac/include/php/main/php_config.h b/7.4.27/mac/include/php/main/php_config.h deleted file mode 100644 index a6b97ae..0000000 --- a/7.4.27/mac/include/php/main/php_config.h +++ /dev/null @@ -1,2382 +0,0 @@ -/* main/php_config.h. Generated from php_config.h.in by configure. */ -/* main/php_config.h.in. Generated from configure.ac by autoheader. */ - - -#ifndef PHP_CONFIG_H -#define PHP_CONFIG_H - -#if defined(__GNUC__) && __GNUC__ >= 4 -# define ZEND_API __attribute__ ((visibility("default"))) -# define ZEND_DLEXPORT __attribute__ ((visibility("default"))) -#else -# define ZEND_API -# define ZEND_DLEXPORT -#endif - -#define ZEND_DLIMPORT - - -/* */ -/* #undef CDB_INCLUDE_FILE */ - -/* Define if system uses EBCDIC */ -/* #undef CHARSET_EBCDIC */ - -/* Whether to build bcmath as dynamic module */ -/* #undef COMPILE_DL_BCMATH */ - -/* Whether to build bz2 as dynamic module */ -/* #undef COMPILE_DL_BZ2 */ - -/* Whether to build calendar as dynamic module */ -/* #undef COMPILE_DL_CALENDAR */ - -/* Whether to build ctype as dynamic module */ -/* #undef COMPILE_DL_CTYPE */ - -/* Whether to build curl as dynamic module */ -/* #undef COMPILE_DL_CURL */ - -/* Whether to build date as dynamic module */ -/* #undef COMPILE_DL_DATE */ - -/* Whether to build dba as dynamic module */ -/* #undef COMPILE_DL_DBA */ - -/* Whether to build dom as dynamic module */ -/* #undef COMPILE_DL_DOM */ - -/* Whether to build enchant as dynamic module */ -/* #undef COMPILE_DL_ENCHANT */ - -/* Whether to build exif as dynamic module */ -/* #undef COMPILE_DL_EXIF */ - -/* Whether to build ffi as dynamic module */ -/* #undef COMPILE_DL_FFI */ - -/* Whether to build fileinfo as dynamic module */ -/* #undef COMPILE_DL_FILEINFO */ - -/* Whether to build filter as dynamic module */ -/* #undef COMPILE_DL_FILTER */ - -/* Whether to build ftp as dynamic module */ -/* #undef COMPILE_DL_FTP */ - -/* Whether to build gd as dynamic module */ -/* #undef COMPILE_DL_GD */ - -/* Whether to build gettext as dynamic module */ -/* #undef COMPILE_DL_GETTEXT */ - -/* Whether to build gmp as dynamic module */ -/* #undef COMPILE_DL_GMP */ - -/* Whether to build hash as dynamic module */ -/* #undef COMPILE_DL_HASH */ - -/* Whether to build iconv as dynamic module */ -/* #undef COMPILE_DL_ICONV */ - -/* Whether to build imap as dynamic module */ -/* #undef COMPILE_DL_IMAP */ - -/* Whether to build intl as dynamic module */ -/* #undef COMPILE_DL_INTL */ - -/* Whether to build json as dynamic module */ -/* #undef COMPILE_DL_JSON */ - -/* Whether to build ldap as dynamic module */ -/* #undef COMPILE_DL_LDAP */ - -/* Whether to build libxml as dynamic module */ -/* #undef COMPILE_DL_LIBXML */ - -/* Whether to build mbstring as dynamic module */ -/* #undef COMPILE_DL_MBSTRING */ - -/* Whether to build mysqli as dynamic module */ -/* #undef COMPILE_DL_MYSQLI */ - -/* Whether to build mysqlnd as dynamic module */ -/* #undef COMPILE_DL_MYSQLND */ - -/* Whether to build oci8 as dynamic module */ -/* #undef COMPILE_DL_OCI8 */ - -/* Whether to build odbc as dynamic module */ -/* #undef COMPILE_DL_ODBC */ - -/* Whether to build opcache as dynamic module */ -#define COMPILE_DL_OPCACHE 1 - -/* Whether to build openssl as dynamic module */ -/* #undef COMPILE_DL_OPENSSL */ - -/* Whether to build pcntl as dynamic module */ -/* #undef COMPILE_DL_PCNTL */ - -/* Whether to build pcre as dynamic module */ -/* #undef COMPILE_DL_PCRE */ - -/* Whether to build pdo as dynamic module */ -/* #undef COMPILE_DL_PDO */ - -/* Whether to build pdo_dblib as dynamic module */ -/* #undef COMPILE_DL_PDO_DBLIB */ - -/* Whether to build pdo_firebird as dynamic module */ -/* #undef COMPILE_DL_PDO_FIREBIRD */ - -/* Whether to build pdo_mysql as dynamic module */ -/* #undef COMPILE_DL_PDO_MYSQL */ - -/* Whether to build pdo_oci as dynamic module */ -/* #undef COMPILE_DL_PDO_OCI */ - -/* Whether to build pdo_odbc as dynamic module */ -/* #undef COMPILE_DL_PDO_ODBC */ - -/* Whether to build pdo_pgsql as dynamic module */ -/* #undef COMPILE_DL_PDO_PGSQL */ - -/* Whether to build pdo_sqlite as dynamic module */ -/* #undef COMPILE_DL_PDO_SQLITE */ - -/* Whether to build pgsql as dynamic module */ -/* #undef COMPILE_DL_PGSQL */ - -/* Whether to build phar as dynamic module */ -/* #undef COMPILE_DL_PHAR */ - -/* Whether to build phpdbg_webhelper as dynamic module */ -/* #undef COMPILE_DL_PHPDBG_WEBHELPER */ - -/* Whether to build posix as dynamic module */ -/* #undef COMPILE_DL_POSIX */ - -/* Whether to build pspell as dynamic module */ -/* #undef COMPILE_DL_PSPELL */ - -/* Whether to build readline as dynamic module */ -/* #undef COMPILE_DL_READLINE */ - -/* Whether to build reflection as dynamic module */ -/* #undef COMPILE_DL_REFLECTION */ - -/* Whether to build session as dynamic module */ -/* #undef COMPILE_DL_SESSION */ - -/* Whether to build shmop as dynamic module */ -/* #undef COMPILE_DL_SHMOP */ - -/* Whether to build simplexml as dynamic module */ -/* #undef COMPILE_DL_SIMPLEXML */ - -/* Whether to build snmp as dynamic module */ -/* #undef COMPILE_DL_SNMP */ - -/* Whether to build soap as dynamic module */ -/* #undef COMPILE_DL_SOAP */ - -/* Whether to build sockets as dynamic module */ -/* #undef COMPILE_DL_SOCKETS */ - -/* Whether to build sodium as dynamic module */ -/* #undef COMPILE_DL_SODIUM */ - -/* Whether to build spl as dynamic module */ -/* #undef COMPILE_DL_SPL */ - -/* Whether to build sqlite3 as dynamic module */ -/* #undef COMPILE_DL_SQLITE3 */ - -/* Whether to build standard as dynamic module */ -/* #undef COMPILE_DL_STANDARD */ - -/* Whether to build sysvmsg as dynamic module */ -/* #undef COMPILE_DL_SYSVMSG */ - -/* Whether to build sysvsem as dynamic module */ -/* #undef COMPILE_DL_SYSVSEM */ - -/* Whether to build sysvshm as dynamic module */ -/* #undef COMPILE_DL_SYSVSHM */ - -/* Whether to build tidy as dynamic module */ -/* #undef COMPILE_DL_TIDY */ - -/* Whether to build tokenizer as dynamic module */ -/* #undef COMPILE_DL_TOKENIZER */ - -/* Whether to build xml as dynamic module */ -/* #undef COMPILE_DL_XML */ - -/* Whether to build xmlreader as dynamic module */ -/* #undef COMPILE_DL_XMLREADER */ - -/* Whether to build xmlrpc as dynamic module */ -/* #undef COMPILE_DL_XMLRPC */ - -/* Whether to build xmlwriter as dynamic module */ -/* #undef COMPILE_DL_XMLWRITER */ - -/* Whether to build xsl as dynamic module */ -/* #undef COMPILE_DL_XSL */ - -/* Whether to build zend_test as dynamic module */ -/* #undef COMPILE_DL_ZEND_TEST */ - -/* Whether to build zip as dynamic module */ -/* #undef COMPILE_DL_ZIP */ - -/* Whether to build zlib as dynamic module */ -/* #undef COMPILE_DL_ZLIB */ - -/* */ -/* #undef COOKIE_IO_FUNCTIONS_T */ - -/* */ -/* #undef COOKIE_SEEKER_USES_OFF64_T */ - -/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP - systems. This function is required for `alloca.c' support on those systems. - */ -/* #undef CRAY_STACKSEG_END */ - -/* Define if crypt_r has uses CRYPTD */ -/* #undef CRYPT_R_CRYPTD */ - -/* Define if struct crypt_data requires _GNU_SOURCE */ -/* #undef CRYPT_R_GNU_SOURCE */ - -/* Define if crypt_r uses struct crypt_data */ -/* #undef CRYPT_R_STRUCT_CRYPT_DATA */ - -/* Define to 1 if using `alloca.c'. */ -/* #undef C_ALLOCA */ - -/* Define if the target system is darwin */ -#define DARWIN 1 - -/* */ -/* #undef DB1_INCLUDE_FILE */ - -/* */ -/* #undef DB1_VERSION */ - -/* */ -/* #undef DB2_INCLUDE_FILE */ - -/* */ -/* #undef DB3_INCLUDE_FILE */ - -/* */ -/* #undef DB4_INCLUDE_FILE */ - -/* */ -/* #undef DBA_CDB */ - -/* */ -/* #undef DBA_CDB_BUILTIN */ - -/* */ -/* #undef DBA_CDB_MAKE */ - -/* */ -/* #undef DBA_DB1 */ - -/* */ -/* #undef DBA_DB2 */ - -/* */ -/* #undef DBA_DB3 */ - -/* */ -/* #undef DBA_DB4 */ - -/* */ -/* #undef DBA_DBM */ - -/* */ -/* #undef DBA_FLATFILE */ - -/* */ -/* #undef DBA_GDBM */ - -/* */ -/* #undef DBA_INIFILE */ - -/* */ -/* #undef DBA_LMDB */ - -/* */ -/* #undef DBA_NDBM */ - -/* */ -/* #undef DBA_QDBM */ - -/* */ -/* #undef DBA_TCADB */ - -/* */ -/* #undef DBM_INCLUDE_FILE */ - -/* */ -/* #undef DBM_VERSION */ - -/* */ -#define DEFAULT_SHORT_OPEN_TAG "1" - -/* Define if dlsym() requires a leading underscore in symbol names. */ -/* #undef DLSYM_NEEDS_UNDERSCORE */ - -/* Whether to enable chroot() function */ -#define ENABLE_CHROOT_FUNC 1 - -/* */ -/* #undef GDBM_INCLUDE_FILE */ - -/* Whether you use GNU Pth */ -/* #undef GNUPTH */ - -/* Define to 1 if `TIOCGWINSZ' requires . */ -/* #undef GWINSZ_IN_SYS_IOCTL */ - -/* Whether 3 arg set_rebind_proc() */ -/* #undef HAVE_3ARG_SETREBINDPROC */ - -/* Define when aarch64 CRC32 API is available. */ -/* #undef HAVE_AARCH64_CRC32 */ - -/* Define to 1 if you have the `acosh' function. */ -#define HAVE_ACOSH 1 - -/* */ -/* #undef HAVE_ADABAS */ - -/* Whether you have AI_ALL */ -#define HAVE_AI_ALL 1 - -/* Whether you have AI_IDN */ -/* #undef HAVE_AI_IDN */ - -/* Whether you have AI_V4MAPPED */ -#define HAVE_AI_V4MAPPED 1 - -/* whether the compiler supports __alignof__ */ -#define HAVE_ALIGNOF 1 - -/* Define to 1 if you have `alloca', as a function or macro. */ -#define HAVE_ALLOCA 1 - -/* Define to 1 if you have and it should be used (not on Ultrix). - */ -#define HAVE_ALLOCA_H 1 - -/* Define to 1 if you have the `alphasort' function. */ -#define HAVE_ALPHASORT 1 - -/* do we have apparmor support? */ -/* #undef HAVE_APPARMOR */ - -/* Define to 1 if you have the header file */ -/* #undef HAVE_ARGON2LIB */ - -/* Define to 1 if you have the header file. */ -#define HAVE_ARPA_INET_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_ARPA_NAMESER_H 1 - -/* Define to 1 if you have the `asctime_r' function. */ -#define HAVE_ASCTIME_R 1 - -/* Define to 1 if you have the `asinh' function. */ -#define HAVE_ASINH 1 - -/* Define if asm goto support */ -/* #undef HAVE_ASM_GOTO */ - -/* Define to 1 if you have the `asprintf' function. */ -#define HAVE_ASPRINTF 1 - -/* Define to 1 if you have the `atanh' function. */ -#define HAVE_ATANH 1 - -/* whether atof() accepts INF */ -/* #undef HAVE_ATOF_ACCEPTS_INF */ - -/* whether atof() accepts NAN */ -/* #undef HAVE_ATOF_ACCEPTS_NAN */ - -/* Define to 1 if you have the `atoll' function. */ -#define HAVE_ATOLL 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_ATOMIC_H */ - -/* whether the compiler supports __attribute__ ((__aligned__)) */ -#define HAVE_ATTRIBUTE_ALIGNED 1 - -/* Whether you have bcmath */ -#define HAVE_BCMATH 1 - -/* */ -/* #undef HAVE_BIND_TEXTDOMAIN_CODESET */ - -/* Define if system has broken getcwd */ -/* #undef HAVE_BROKEN_GETCWD */ - -/* Konstantin Chuguev's iconv implementation */ -/* #undef HAVE_BSD_ICONV */ - -/* */ -#define HAVE_BUILD_DEFS_H 1 - -/* Define to 1 if gcc supports __sync_bool_compare_and_swap() a.o. */ -/* #undef HAVE_BUILTIN_ATOMIC */ - -/* */ -#define HAVE_BUNDLED_PCRE 1 - -/* */ -#define HAVE_BZ2 1 - -/* */ -#define HAVE_CALENDAR 1 - -/* Define to 1 if you have the `chroot' function. */ -#define HAVE_CHROOT 1 - -/* Define to 1 if you have the `clearenv' function. */ -/* #undef HAVE_CLEARENV */ - -/* */ -/* #undef HAVE_CLI0CLI_H */ - -/* */ -/* #undef HAVE_CLI0CORE_H */ - -/* */ -/* #undef HAVE_CLI0DEFS_H */ - -/* */ -/* #undef HAVE_CLI0ENV_H */ - -/* */ -/* #undef HAVE_CLI0EXT_H */ - -/* do we have clock_gettime? */ -/* #undef HAVE_CLOCK_GETTIME */ - -/* do we have clock_get_time? */ -/* #undef HAVE_CLOCK_GET_TIME */ - -/* */ -/* #undef HAVE_CODBC */ - -/* whether __cpuid_count is available */ -#define HAVE_CPUID_COUNT 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_CPUID_H 1 - -/* Define to 1 if you have the `CreateProcess' function. */ -/* #undef HAVE_CREATEPROCESS */ - -/* */ -#define HAVE_CRYPT 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_CRYPT_H */ - -/* Define to 1 if you have the `crypt_r' function. */ -/* #undef HAVE_CRYPT_R */ - -/* Define to 1 if you have the `ctermid' function. */ -#define HAVE_CTERMID 1 - -/* Define to 1 if you have the `ctime_r' function. */ -#define HAVE_CTIME_R 1 - -/* */ -#define HAVE_CTYPE 1 - -/* */ -#define HAVE_CURL 1 - -/* Have cURL with old OpenSSL */ -/* #undef HAVE_CURL_OLD_OPENSSL */ - -/* */ -/* #undef HAVE_DBA */ - -/* Whether you want DBMaker */ -/* #undef HAVE_DBMAKER */ - -/* */ -/* #undef HAVE_DCNGETTEXT */ - -/* Define to 1 if you have the declaration of `arc4random_buf', and to 0 if - you don't. */ -#define HAVE_DECL_ARC4RANDOM_BUF 1 - -/* Define to 1 if you have the declaration of `isfinite', and to 0 if you - don't. */ -#define HAVE_DECL_ISFINITE 1 - -/* Define to 1 if you have the declaration of `isinf', and to 0 if you don't. - */ -#define HAVE_DECL_ISINF 1 - -/* Define to 1 if you have the declaration of `isnan', and to 0 if you don't. - */ -#define HAVE_DECL_ISNAN 1 - -/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't. - */ -/* #undef HAVE_DECL_TZNAME */ - -/* do we have /dev/poll? */ -/* #undef HAVE_DEVPOLL */ - -/* Define if the target system has /dev/urandom device */ -#define HAVE_DEV_URANDOM 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_DIRENT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_DLFCN_H 1 - -/* */ -#define HAVE_DLOPEN 1 - -/* */ -#define HAVE_DLSYM 1 - -/* Whether you have dmalloc */ -/* #undef HAVE_DMALLOC */ - -/* */ -/* #undef HAVE_DNGETTEXT */ - -/* Define to 1 if you have the header file. */ -#define HAVE_DNS_H 1 - -/* */ -#define HAVE_DNS_SEARCH 1 - -/* */ -#define HAVE_DN_EXPAND 1 - -/* */ -#define HAVE_DN_SKIPNAME 1 - -/* */ -#define HAVE_DOM 1 - -/* Whether to enable DTrace support */ -/* #undef HAVE_DTRACE */ - -/* */ -/* #undef HAVE_EMPRESS */ - -/* */ -/* #undef HAVE_ENCHANT */ - -/* */ -/* #undef HAVE_ENCHANT_BROKER_SET_PARAM */ - -/* */ -/* #undef HAVE_ENCHANT_GET_VERSION */ - -/* Libzip >= 1.2.0 with encryption support */ -#define HAVE_ENCRYPTION 1 - -/* do we have epoll? */ -/* #undef HAVE_EPOLL */ - -/* */ -/* #undef HAVE_ESOOB */ - -/* Whether you want EXIF (metadata from images) support */ -/* #undef HAVE_EXIF */ - -/* Define to 1 if you have the `explicit_bzero' function. */ -/* #undef HAVE_EXPLICIT_BZERO */ - -/* Define to 1 if you have the `explicit_memset' function. */ -/* #undef HAVE_EXPLICIT_MEMSET */ - -/* Define to 1 if you have the `fabsf' function. */ -/* #undef HAVE_FABSF */ - -/* Define to 1 if you have the header file. */ -#define HAVE_FCNTL_H 1 - -/* Have ffi support */ -/* #undef HAVE_FFI */ - -/* Whether libffi supports fastcall calling convention */ -/* #undef HAVE_FFI_FASTCALL */ - -/* Whether libffi supports ms_cdecl calling convention */ -/* #undef HAVE_FFI_MS_CDECL */ - -/* Whether libffi supports pascal calling convention */ -/* #undef HAVE_FFI_PASCAL */ - -/* Whether libffi supports register calling convention */ -/* #undef HAVE_FFI_REGISTER */ - -/* Whether libffi supports stdcall calling convention */ -/* #undef HAVE_FFI_STDCALL */ - -/* Whether libffi supports sysv calling convention */ -/* #undef HAVE_FFI_SYSV */ - -/* Whether libffi supports thiscall calling convention */ -/* #undef HAVE_FFI_THISCALL */ - -/* Define to 1 if you have the `finite' function. */ -#define HAVE_FINITE 1 - -/* Define to 1 if you have the `flock' function. */ -#define HAVE_FLOCK 1 - -/* Define to 1 if you have the `floorf' function. */ -/* #undef HAVE_FLOORF */ - -/* Define if flush should be called explicitly after a buffered io. */ -#define HAVE_FLUSHIO 1 - -/* Define to 1 if your system has a working POSIX `fnmatch' function. */ -#define HAVE_FNMATCH 1 - -/* */ -/* #undef HAVE_FOPENCOOKIE */ - -/* Define to 1 if you have the `fork' function. */ -#define HAVE_FORK 1 - -/* Define to 1 if you have the `fpclass' function. */ -/* #undef HAVE_FPCLASS */ - -/* POSIX Access Control List */ -/* #undef HAVE_FPM_ACL */ - -/* whether fpsetprec is present and usable */ -/* #undef HAVE_FPSETPREC */ - -/* whether FPU control word can be manipulated by inline assembler */ -#define HAVE_FPU_INLINE_ASM_X86 1 - -/* Define to 1 if you have the `ftok' function. */ -#define HAVE_FTOK 1 - -/* Whether you want FTP support */ -/* #undef HAVE_FTP */ - -/* Whether FTP over SSL is supported */ -/* #undef HAVE_FTP_SSL */ - -/* Define to 1 if the system has the `ifunc' function attribute */ -/* #undef HAVE_FUNC_ATTRIBUTE_IFUNC */ - -/* Define to 1 if the system has the `target' function attribute */ -#define HAVE_FUNC_ATTRIBUTE_TARGET 1 - -/* Define to 1 if you have the three-argument form of gethostbyname_r(). */ -/* #undef HAVE_FUNC_GETHOSTBYNAME_R_3 */ - -/* Define to 1 if you have the five-argument form of gethostbyname_r(). */ -/* #undef HAVE_FUNC_GETHOSTBYNAME_R_5 */ - -/* Define to 1 if you have the six-argument form of gethostbyname_r(). */ -/* #undef HAVE_FUNC_GETHOSTBYNAME_R_6 */ - -/* Define to 1 if you have the `funopen' function. */ -#define HAVE_FUNOPEN 1 - -/* Define to 1 if you have the `gai_strerror' function. */ -#define HAVE_GAI_STRERROR 1 - -/* Define if the target system has support for global register variables */ -/* #undef HAVE_GCC_GLOBAL_REGS */ - -/* Whether you have gcov */ -/* #undef HAVE_GCOV */ - -/* */ -/* #undef HAVE_GD_BMP */ - -/* */ -/* #undef HAVE_GD_BUNDLED */ - -/* */ -/* #undef HAVE_GD_FREETYPE */ - -/* */ -/* #undef HAVE_GD_JPG */ - -/* */ -/* #undef HAVE_GD_LIBVERSION */ - -/* */ -/* #undef HAVE_GD_PNG */ - -/* */ -/* #undef HAVE_GD_TGA */ - -/* */ -/* #undef HAVE_GD_WEBP */ - -/* */ -/* #undef HAVE_GD_XPM */ - -/* Define if you have the getaddrinfo function */ -#define HAVE_GETADDRINFO 1 - -/* Define to 1 if you have the `getcwd' function. */ -#define HAVE_GETCWD 1 - -/* Define to 1 if you have the `getgrgid_r' function. */ -#define HAVE_GETGRGID_R 1 - -/* Define to 1 if you have the `getgrnam_r' function. */ -#define HAVE_GETGRNAM_R 1 - -/* Define to 1 if you have the `getgroups' function. */ -#define HAVE_GETGROUPS 1 - -/* */ -#define HAVE_GETHOSTBYADDR 1 - -/* Define to 1 if you have some form of gethostbyname_r(). */ -/* #undef HAVE_GETHOSTBYNAME_R */ - -/* */ -#define HAVE_GETHOSTNAME 1 - -/* whether getifaddrs is present and usable */ -#define HAVE_GETIFADDRS 1 - -/* Define to 1 if you have the `getloadavg' function. */ -#define HAVE_GETLOADAVG 1 - -/* Define to 1 if you have the `getlogin' function. */ -#define HAVE_GETLOGIN 1 - -/* Define to 1 if you have the `getopt' function. */ -#define HAVE_GETOPT 1 - -/* Define to 1 if you have the `getpgid' function. */ -#define HAVE_GETPGID 1 - -/* Define to 1 if you have the `getpid' function. */ -#define HAVE_GETPID 1 - -/* Define to 1 if you have the `getpriority' function. */ -#define HAVE_GETPRIORITY 1 - -/* Define to 1 if you have the `getprotobyname' function. */ -#define HAVE_GETPROTOBYNAME 1 - -/* Define to 1 if you have the `getprotobynumber' function. */ -#define HAVE_GETPROTOBYNUMBER 1 - -/* Define to 1 if you have the `getpwnam_r' function. */ -#define HAVE_GETPWNAM_R 1 - -/* Define to 1 if you have the `getpwuid_r' function. */ -#define HAVE_GETPWUID_R 1 - -/* Define to 1 if you have the `getrlimit' function. */ -#define HAVE_GETRLIMIT 1 - -/* Define to 1 if you have the `getrusage' function. */ -#define HAVE_GETRUSAGE 1 - -/* Define to 1 if you have the `getservbyname' function. */ -#define HAVE_GETSERVBYNAME 1 - -/* Define to 1 if you have the `getservbyport' function. */ -#define HAVE_GETSERVBYPORT 1 - -/* Define to 1 if you have the `getsid' function. */ -#define HAVE_GETSID 1 - -/* Define to 1 if you have the `gettimeofday' function. */ -#define HAVE_GETTIMEOFDAY 1 - -/* Define to 1 if you have the `getwd' function. */ -#define HAVE_GETWD 1 - -/* */ -/* #undef HAVE_GICONV_H */ - -/* glibc's iconv implementation */ -/* #undef HAVE_GLIBC_ICONV */ - -/* Define to 1 if you have the `glob' function. */ -#define HAVE_GLOB 1 - -/* */ -/* #undef HAVE_GMP */ - -/* Define to 1 if you have the `gmtime_r' function. */ -#define HAVE_GMTIME_R 1 - -/* Define to 1 if you have the `grantpt' function. */ -#define HAVE_GRANTPT 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_GRP_H 1 - -/* Have HASH Extension */ -#define HAVE_HASH_EXT 1 - -/* */ -#define HAVE_HISTORY_LIST 1 - -/* Define to 1 if you have the `hstrerror' function. */ -#define HAVE_HSTRERROR 1 - -/* */ -#define HAVE_HTONL 1 - -/* Define to enable copying PHP CODE pages into HUGE PAGES (experimental) */ -#define HAVE_HUGE_CODE_PAGES 1 - -/* whether HUGE_VAL == INF */ -#define HAVE_HUGE_VAL_INF 1 - -/* whether HUGE_VAL + -HUGEVAL == NAN */ -/* #undef HAVE_HUGE_VAL_NAN */ - -/* Define to 1 if you have the `hypot' function. */ -#define HAVE_HYPOT 1 - -/* */ -/* #undef HAVE_IBMDB2 */ - -/* IBM iconv implementation */ -/* #undef HAVE_IBM_ICONV */ - -/* */ -/* #undef HAVE_ICONV */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_IEEEFP_H */ - -/* Define to 1 if you have the `if_indextoname' function. */ -#define HAVE_IF_INDEXTONAME 1 - -/* Define to 1 if you have the `if_nametoindex' function. */ -#define HAVE_IF_NAMETOINDEX 1 - -/* */ -/* #undef HAVE_IMAP */ - -/* */ -/* #undef HAVE_IMAP2000 */ - -/* */ -/* #undef HAVE_IMAP2001 */ - -/* */ -/* #undef HAVE_IMAP2004 */ - -/* */ -/* #undef HAVE_IMAP_AUTH_GSS */ - -/* Whether IMAP extension has Kerberos support */ -/* #undef HAVE_IMAP_KRB */ - -/* */ -/* #undef HAVE_IMAP_MUTF7 */ - -/* */ -/* #undef HAVE_IMAP_SSL */ - -/* Define to 1 if you have the header file. */ -#define HAVE_IMMINTRIN_H 1 - -/* */ -#define HAVE_INET_ATON 1 - -/* Define to 1 if you have the `inet_ntoa' function. */ -#define HAVE_INET_NTOA 1 - -/* Define to 1 if you have the `inet_ntop' function. */ -#define HAVE_INET_NTOP 1 - -/* Define to 1 if you have the `inet_pton' function. */ -#define HAVE_INET_PTON 1 - -/* Define to 1 if you have the `initgroups' function. */ -#define HAVE_INITGROUPS 1 - -/* Define to 1 if the system has the type `int16'. */ -/* #undef HAVE_INT16 */ - -/* Define to 1 if the system has the type `int16_t'. */ -#define HAVE_INT16_T 1 - -/* Define to 1 if the system has the type `int32'. */ -/* #undef HAVE_INT32 */ - -/* Define to 1 if the system has the type `int32_t'. */ -#define HAVE_INT32_T 1 - -/* Define to 1 if the system has the type `int64'. */ -/* #undef HAVE_INT64 */ - -/* Define to 1 if the system has the type `int64_t'. */ -#define HAVE_INT64_T 1 - -/* Define to 1 if the system has the type `int8'. */ -/* #undef HAVE_INT8 */ - -/* Define to 1 if the system has the type `int8_t'. */ -#define HAVE_INT8_T 1 - -/* Whether intmax_t is available */ -#define HAVE_INTMAX_T 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_INTTYPES_H 1 - -/* */ -/* #undef HAVE_IODBC */ - -/* */ -/* #undef HAVE_IODBC_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_IO_H */ - -/* Whether to enable IPv6 support */ -#define HAVE_IPV6 1 - -/* */ -/* #undef HAVE_ISQLEXT_H */ - -/* */ -/* #undef HAVE_ISQL_H */ - -/* whether to enable JavaScript Object Serialization support */ -#define HAVE_JSON 1 - -/* Define to 1 if you have the `kill' function. */ -#define HAVE_KILL 1 - -/* do we have kqueue? */ -/* #undef HAVE_KQUEUE */ - -/* Define to 1 if you have the header file. */ -#define HAVE_LANGINFO_H 1 - -/* Define to 1 if you have the `lchown' function. */ -#define HAVE_LCHOWN 1 - -/* */ -/* #undef HAVE_LDAP */ - -/* Define to 1 if you have the `ldap_control_find' function. */ -/* #undef HAVE_LDAP_CONTROL_FIND */ - -/* Define to 1 if you have the `ldap_extended_operation' function. */ -/* #undef HAVE_LDAP_EXTENDED_OPERATION */ - -/* Define to 1 if you have the `ldap_extended_operation_s' function. */ -/* #undef HAVE_LDAP_EXTENDED_OPERATION_S */ - -/* Define to 1 if you have the `ldap_parse_extended_result' function. */ -/* #undef HAVE_LDAP_PARSE_EXTENDED_RESULT */ - -/* Define to 1 if you have the `ldap_parse_reference' function. */ -/* #undef HAVE_LDAP_PARSE_REFERENCE */ - -/* Define to 1 if you have the `ldap_parse_result' function. */ -/* #undef HAVE_LDAP_PARSE_RESULT */ - -/* Define to 1 if you have the `ldap_passwd' function. */ -/* #undef HAVE_LDAP_PASSWD */ - -/* Define to 1 if you have the `ldap_refresh_s' function. */ -/* #undef HAVE_LDAP_REFRESH_S */ - -/* LDAP SASL support */ -/* #undef HAVE_LDAP_SASL */ - -/* Define to 1 if you have the `ldap_start_tls_s' function. */ -/* #undef HAVE_LDAP_START_TLS_S */ - -/* Define to 1 if you have the `ldap_whoami_s' function. */ -/* #undef HAVE_LDAP_WHOAMI_S */ - -/* */ -/* #undef HAVE_LIBBIND */ - -/* */ -/* #undef HAVE_LIBCRYPT */ - -/* */ -#define HAVE_LIBDL 1 - -/* */ -/* #undef HAVE_LIBEDIT */ - -/* */ -/* #undef HAVE_LIBEXPAT */ - -/* */ -/* #undef HAVE_LIBFREETYPE */ - -/* */ -/* #undef HAVE_LIBGD */ - -/* */ -/* #undef HAVE_LIBICONV */ - -/* */ -/* #undef HAVE_LIBINTL */ - -/* */ -/* #undef HAVE_LIBJPEG */ - -/* Define to 1 if you have the `m' library (-lm). */ -#define HAVE_LIBM 1 - -/* Whether you have libmm */ -/* #undef HAVE_LIBMM */ - -/* */ -/* #undef HAVE_LIBNSL */ - -/* */ -/* #undef HAVE_LIBPAM */ - -/* */ -/* #undef HAVE_LIBPNG */ - -/* Define to 1 if you have the `pq' library (-lpq). */ -/* #undef HAVE_LIBPQ */ - -/* */ -/* #undef HAVE_LIBRARYMANAGER_H */ - -/* */ -#define HAVE_LIBREADLINE 1 - -/* */ -#define HAVE_LIBRESOLV 1 - -/* */ -/* #undef HAVE_LIBRT */ - -/* */ -/* #undef HAVE_LIBSOCKET */ - -/* */ -/* #undef HAVE_LIBSODIUMLIB */ - -/* */ -/* #undef HAVE_LIBWEBP */ - -/* */ -#define HAVE_LIBXML 1 - -/* Libzip >= 1.3.1 with zip_libzip_version function */ -#define HAVE_LIBZIP_VERSION 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_LOCALE_H 1 - -/* Define to 1 if you have the `localtime_r' function. */ -#define HAVE_LOCALTIME_R 1 - -/* Define to 1 if you have the `log1p' function. */ -#define HAVE_LOG1P 1 - -/* Define to 1 if the system has the type `long double'. */ -/* #undef HAVE_LONG_DOUBLE */ - -/* do we have SO_LISTENQxxx? */ -/* #undef HAVE_LQ_SO_LISTENQ */ - -/* do we have TCP_INFO? */ -/* #undef HAVE_LQ_TCP_INFO */ - -/* do we have mach_vm_read? */ -/* #undef HAVE_MACH_VM_READ */ - -/* Define to 1 if you have the `makedev' function. */ -/* #undef HAVE_MAKEDEV */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_MALLOC_H */ - -/* Define to 1 if you have the `mblen' function. */ -#define HAVE_MBLEN 1 - -/* whether to have multibyte regex support */ -#define HAVE_MBREGEX 1 - -/* Define to 1 if you have the `mbrlen' function. */ -#define HAVE_MBRLEN 1 - -/* Define if your system has mbstate_t in wchar.h */ -#define HAVE_MBSTATE_T 1 - -/* whether to have multibyte string support */ -#define HAVE_MBSTRING 1 - -/* Define to 1 if you have the `memmem' function. */ -#define HAVE_MEMMEM 1 - -/* Define to 1 if you have the `memmove' function. */ -#define HAVE_MEMMOVE 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_MEMORY_H 1 - -/* Define to 1 if you have the `mkfifo' function. */ -#define HAVE_MKFIFO 1 - -/* Define to 1 if you have the `mknod' function. */ -#define HAVE_MKNOD 1 - -/* Define to 1 if you have the `mkstemp' function. */ -#define HAVE_MKSTEMP 1 - -/* Define to 1 if you have the `mmap' function. */ -#define HAVE_MMAP 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_MONETARY_H 1 - -/* Define to 1 if you have the `mprotect' function. */ -#define HAVE_MPROTECT 1 - -/* Define to 1 if you have the `mremap' function. */ -/* #undef HAVE_MREMAP */ - -/* Whether you have MySQL */ -/* #undef HAVE_MYSQL */ - -/* */ -/* #undef HAVE_MYSQLILIB */ - -/* */ -#define HAVE_NANOSLEEP 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_NETDB_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_NETINET_IN_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_NETINET_TCP_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_NET_IF_H 1 - -/* Whether utf8_mime2text() has new signature */ -/* #undef HAVE_NEW_MIME2TEXT */ - -/* */ -/* #undef HAVE_NGETTEXT */ - -/* Define to 1 if you have the `nice' function. */ -#define HAVE_NICE 1 - -/* Define to 1 if you have the `nl_langinfo' function. */ -#define HAVE_NL_LANGINFO 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_NMMINTRIN_H 1 - -/* Defined to 1 if the PHP OCI8 extension for Oracle Database is configured */ -/* #undef HAVE_OCI8 */ - -/* Defined to 1 if PHP OCI8 DTrace support was enabled during configuration */ -/* #undef HAVE_OCI8_DTRACE */ - -/* */ -/* #undef HAVE_OCIENVCREATE */ - -/* */ -/* #undef HAVE_OCIENVNLSCREATE */ - -/* */ -/* #undef HAVE_OCISTMTFETCH2 */ - -/* Defined to 1 if OCI8 configuration located Oracle's Instant Client - libraries */ -/* #undef HAVE_OCI_INSTANT_CLIENT */ - -/* */ -/* #undef HAVE_ODBC2 */ - -/* */ -/* #undef HAVE_ODBCSDK_H */ - -/* */ -/* #undef HAVE_ODBC_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_OPENSSL_CRYPTO_H */ - -/* */ -#define HAVE_OPENSSL_EXT 1 - -/* */ -/* #undef HAVE_ORALDAP */ - -/* */ -/* #undef HAVE_PCRE */ - -/* */ -#define HAVE_PCRE_JIT_SUPPORT 1 - -/* */ -/* #undef HAVE_PCRE_VALGRIND_SUPPORT */ - -/* */ -/* #undef HAVE_PDO_DBLIB */ - -/* */ -/* #undef HAVE_PDO_FIREBIRD */ - -/* Whether to build PostgreSQL for PDO support or not */ -/* #undef HAVE_PDO_PGSQL */ - -/* Define to 1 if you have the pdo_sqlite extension enabled. */ -/* #undef HAVE_PDO_SQLITELIB */ - -/* Whether to build PostgreSQL support or not */ -/* #undef HAVE_PGSQL */ - -/* Whether libpq is compiled with --enable-multibyte */ -/* #undef HAVE_PGSQL_WITH_MULTIBYTE_SUPPORT */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PGTRANSACTIONSTATUS */ - -/* Whether to have pg_config.h */ -/* #undef HAVE_PG_CONFIG_H */ - -/* PostgreSQL 9.3 or later */ -/* #undef HAVE_PG_LO64 */ - -/* PostgreSQL 8.1 or later */ -/* #undef HAVE_PG_LO_CREATE */ - -/* PostgreSQL 8.4 or later */ -/* #undef HAVE_PG_LO_IMPORT_WITH_OID */ - -/* PostgreSQL 8.3 or later */ -/* #undef HAVE_PG_LO_TRUNCATE */ - -/* */ -#define HAVE_PHPDBG 1 - -/* */ -/* #undef HAVE_PHPDBG_READLINE */ - -/* */ -#define HAVE_PHP_SESSION 1 - -/* Define to 1 if you have the `poll' function. */ -#define HAVE_POLL 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_POLL_H 1 - -/* do we have port framework? */ -/* #undef HAVE_PORT */ - -/* whether to include POSIX-like functions */ -#define HAVE_POSIX 1 - -/* PostgreSQL 7.0.x or later */ -/* #undef HAVE_PQCLIENTENCODING */ - -/* Broken libpq under windows */ -/* #undef HAVE_PQCMDTUPLES */ - -/* PostgreSQL 7.2.0 or later */ -/* #undef HAVE_PQESCAPE */ - -/* PostgreSQL 9.0 or later */ -/* #undef HAVE_PQESCAPELITERAL */ - -/* PostgreSQL 8.1.4 or later */ -/* #undef HAVE_PQESCAPE_BYTEA_CONN */ - -/* PostgreSQL 8.1.4 or later */ -/* #undef HAVE_PQESCAPE_CONN */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQEXECPARAMS */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQEXECPREPARED */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQFREEMEM */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQFTABLE */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQGETCOPYDATA */ - -/* Older PostgreSQL */ -/* #undef HAVE_PQOIDVALUE */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQPARAMETERSTATUS */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQPREPARE */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQPROTOCOLVERSION */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQPUTCOPYDATA */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQRESULTERRORFIELD */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQSENDPREPARE */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQSENDQUERYPARAMS */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQSENDQUERYPREPARED */ - -/* PostgreSQL 7.4 or later */ -/* #undef HAVE_PQSETERRORVERBOSITY */ - -/* PostgreSQL 7.0.x or later */ -/* #undef HAVE_PQSETNONBLOCKING */ - -/* PostgreSQL 7.3.0 or later */ -/* #undef HAVE_PQUNESCAPEBYTEA */ - -/* do we have prctl? */ -/* #undef HAVE_PRCTL */ - -/* */ -#define HAVE_PREAD 1 - -/* */ -/* #undef HAVE_PSPELL */ - -/* Define to 1 if the PS_STRINGS thing exists. */ -/* #undef HAVE_PS_STRINGS */ - -/* do we have ptrace? */ -/* #undef HAVE_PTRACE */ - -/* Whether ptrdiff_t is available */ -#define HAVE_PTRDIFF_T 1 - -/* Define to 1 if you have the `ptsname' function. */ -#define HAVE_PTSNAME 1 - -/* Define to 1 if you have the `putenv' function. */ -#define HAVE_PUTENV 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_PWD_H 1 - -/* */ -#define HAVE_PWRITE 1 - -/* Define to 1 if you have the `RAND_egd' function. */ -/* #undef HAVE_RAND_EGD */ - -/* Define to 1 if you have the `rand_r' function. */ -#define HAVE_RAND_R 1 - -/* Define to 1 if you have the `realpath' function. */ -#define HAVE_REALPATH 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_RESOLV_H 1 - -/* */ -/* #undef HAVE_RES_NDESTROY */ - -/* */ -/* #undef HAVE_RES_NSEARCH */ - -/* */ -#define HAVE_RES_SEARCH 1 - -/* */ -/* #undef HAVE_RFC822_OUTPUT_ADDRESS_LIST */ - -/* */ -#define HAVE_RL_CALLBACK_READ_CHAR 1 - -/* */ -#define HAVE_RL_COMPLETION_MATCHES 1 - -/* */ -#define HAVE_RL_ON_NEW_LINE 1 - -/* */ -/* #undef HAVE_SAPDB */ - -/* Whether you have sockaddr_storage.ss_family */ -#define HAVE_SA_SS_FAMILY 1 - -/* Define to 1 if you have the `scandir' function. */ -#define HAVE_SCANDIR 1 - -/* do we have select? */ -/* #undef HAVE_SELECT */ - -/* */ -#define HAVE_SEMUN 1 - -/* Define to 1 if you have the `setegid' function. */ -#define HAVE_SETEGID 1 - -/* Define to 1 if you have the `setenv' function. */ -#define HAVE_SETENV 1 - -/* Define to 1 if you have the `seteuid' function. */ -#define HAVE_SETEUID 1 - -/* Define to 1 if you have the `setitimer' function. */ -#define HAVE_SETITIMER 1 - -/* Define to 1 if you have the `setpriority' function. */ -#define HAVE_SETPRIORITY 1 - -/* Define to 1 if you have the `setproctitle' function. */ -/* #undef HAVE_SETPROCTITLE */ - -/* Define to 1 if you have the `setproctitle_fast' function. */ -/* #undef HAVE_SETPROCTITLE_FAST */ - -/* Define to 1 if you have the `setrlimit' function. */ -#define HAVE_SETRLIMIT 1 - -/* Define to 1 if you have the `setsid' function. */ -#define HAVE_SETSID 1 - -/* */ -#define HAVE_SHMOP 1 - -/* Define if you have SysV IPC SHM support */ -#define HAVE_SHM_IPC 1 - -/* Define if you have mmap(MAP_ANON) SHM support */ -#define HAVE_SHM_MMAP_ANON 1 - -/* Define if you have POSIX mmap() SHM support */ -#define HAVE_SHM_MMAP_POSIX 1 - -/* */ -/* #undef HAVE_SHM_OPEN */ - -/* Define to 1 if you have the `shutdown' function. */ -#define HAVE_SHUTDOWN 1 - -/* */ -/* #undef HAVE_SHUTDOWN_SNMP_LOGGING */ - -/* Define to 1 if you have the `sigaction' function. */ -#define HAVE_SIGACTION 1 - -/* Define to 1 if you have the `sigprocmask' function. */ -#define HAVE_SIGPROCMASK 1 - -/* Define to 1 if you have the `sigsetjmp' function. */ -#define HAVE_SIGSETJMP 1 - -/* Define to 1 if you have the `sigtimedwait' function. */ -/* #undef HAVE_SIGTIMEDWAIT */ - -/* Define to 1 if you have the `sigwaitinfo' function. */ -/* #undef HAVE_SIGWAITINFO */ - -/* */ -#define HAVE_SIMPLEXML 1 - -/* Define is hash3 algo is available */ -/* #undef HAVE_SLOW_HASH3 */ - -/* */ -/* #undef HAVE_SNMP */ - -/* */ -/* #undef HAVE_SOAP */ - -/* Whether struct sockaddr has field sa_len */ -#define HAVE_SOCKADDR_SA_LEN 1 - -/* Whether you have struct sockaddr_storage */ -#define HAVE_SOCKADDR_STORAGE 1 - -/* Define if sockaddr_un in sys/un.h contains a sun_len component */ -#define HAVE_SOCKADDR_UN_SUN_LEN 1 - -/* */ -#define HAVE_SOCKET 1 - -/* */ -#define HAVE_SOCKETPAIR 1 - -/* */ -#define HAVE_SOCKETS 1 - -/* Define to 1 if the system has the type `socklen_t'. */ -#define HAVE_SOCKLEN_T 1 - -/* */ -/* #undef HAVE_SOLID */ - -/* */ -/* #undef HAVE_SOLID_30 */ - -/* */ -/* #undef HAVE_SOLID_35 */ - -/* */ -/* #undef HAVE_SQLCLI1_H */ - -/* */ -/* #undef HAVE_SQLDATASOURCES */ - -/* */ -/* #undef HAVE_SQLEXT_H */ - -/* Define to 1 if you have the sqlite3 extension enabled. */ -/* #undef HAVE_SQLITE3 */ - -/* have sqlite3_close_v2 */ -/* #undef HAVE_SQLITE3_CLOSE_V2 */ - -/* have sqlite3_column_table_name */ -/* #undef HAVE_SQLITE3_COLUMN_TABLE_NAME */ - -/* have sqlite3_errstr function */ -/* #undef HAVE_SQLITE3_ERRSTR */ - -/* have sqlite3_expanded_sql function */ -/* #undef HAVE_SQLITE3_EXPANDED_SQL */ - -/* */ -/* #undef HAVE_SQLTYPES_H */ - -/* */ -/* #undef HAVE_SQLUCODE_H */ - -/* */ -/* #undef HAVE_SQLUNIX_H */ - -/* */ -/* #undef HAVE_SQL_H */ - -/* Whether ssize_t is available */ -#define HAVE_SSIZE_T 1 - -/* Define to 1 if you have the `statfs' function. */ -#define HAVE_STATFS 1 - -/* Define to 1 if you have the `statvfs' function. */ -#define HAVE_STATVFS 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STDINT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STDLIB_H 1 - -/* Define to 1 if you have the `std_syslog' function. */ -/* #undef HAVE_STD_SYSLOG */ - -/* */ -/* #undef HAVE_STMT_NEXT_RESULT */ - -/* Define to 1 if you have the `strcasecmp' function. */ -#define HAVE_STRCASECMP 1 - -/* Define to 1 if you have the `strfmon' function. */ -#define HAVE_STRFMON 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRINGS_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_STRING_H 1 - -/* Define to 1 if you have the `strlcat' function. */ -#define HAVE_STRLCAT 1 - -/* Define to 1 if you have the `strlcpy' function. */ -#define HAVE_STRLCPY 1 - -/* Define to 1 if you have the `strndup' function. */ -#define HAVE_STRNDUP 1 - -/* Define to 1 if you have the `strnlen' function. */ -#define HAVE_STRNLEN 1 - -/* Define to 1 if you have the `strptime' function. */ -#define HAVE_STRPTIME 1 - -/* whether strptime() declaration fails */ -#define HAVE_STRPTIME_DECL_FAILS 1 - -/* Define to 1 if you have the `strtok_r' function. */ -#define HAVE_STRTOK_R 1 - -/* Define to 1 if you have the `strtoll' function. */ -#define HAVE_STRTOLL 1 - -/* whether you have struct flock */ -#define HAVE_STRUCT_FLOCK 1 - -/* Define to 1 if `st_blksize' is a member of `struct stat'. */ -#define HAVE_STRUCT_STAT_ST_BLKSIZE 1 - -/* Define to 1 if `st_blocks' is a member of `struct stat'. */ -#define HAVE_STRUCT_STAT_ST_BLOCKS 1 - -/* Define to 1 if `st_rdev' is a member of `struct stat'. */ -#define HAVE_STRUCT_STAT_ST_RDEV 1 - -/* Define to 1 if `tm_gmtoff' is a member of `struct tm'. */ -#define HAVE_STRUCT_TM_TM_GMTOFF 1 - -/* Define to 1 if `tm_zone' is a member of `struct tm'. */ -#define HAVE_STRUCT_TM_TM_ZONE 1 - -/* Define to 1 if your `struct stat' has `st_blocks'. Deprecated, use - `HAVE_STRUCT_STAT_ST_BLOCKS' instead. */ -#define HAVE_ST_BLOCKS 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_ST_H */ - -/* Define to 1 if you have the `symlink' function. */ -#define HAVE_SYMLINK 1 - -/* Define if you have the __sync_fetch_and_add function */ -#define HAVE_SYNC_FETCH_AND_ADD 1 - -/* do we have sysconf? */ -/* #undef HAVE_SYSCONF */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYSEXITS_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYSLOG_H 1 - -/* FPM use systemd integration */ -/* #undef HAVE_SYSTEMD */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYSTEMD_SD_DAEMON_H */ - -/* */ -#define HAVE_SYSVMSG 1 - -/* */ -#define HAVE_SYSVSEM 1 - -/* */ -#define HAVE_SYSVSHM 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_ACL_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_AUXV_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_FILE_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_IOCTL_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_IPC_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_LOADAVG_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_MKDEV_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_MMAN_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_MOUNT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_PARAM_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_POLL_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_PSTAT_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_RESOURCE_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SDT_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_SELECT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_SOCKET_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_SOCKIO_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_STATFS_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_STATVFS_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_STAT_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SYSEXITS_H */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_SYSMACROS_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TIME_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_TYPES_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_UIO_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_UN_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_UTSNAME_H 1 - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_SYS_VFS_H */ - -/* Define to 1 if you have the header file. */ -#define HAVE_SYS_WAIT_H 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_TERMIOS_H 1 - -/* */ -/* #undef HAVE_TIDY */ - -/* defined if tidybuffio.h exists */ -/* #undef HAVE_TIDYBUFFIO_H */ - -/* */ -/* #undef HAVE_TIDYOPTGETDOC */ - -/* defined if tidyp.h exists */ -/* #undef HAVE_TIDYP_H */ - -/* */ -/* #undef HAVE_TIDYRELEASEDATE */ - -/* defined if tidy.h exists */ -/* #undef HAVE_TIDY_H */ - -/* Have timelib_config.h */ -#define HAVE_TIMELIB_CONFIG_H 1 - -/* do we have times? */ -/* #undef HAVE_TIMES */ - -/* Define to 1 if you have the header file. */ -#define HAVE_TMMINTRIN_H 1 - -/* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use - `HAVE_STRUCT_TM_TM_ZONE' instead. */ -#define HAVE_TM_ZONE 1 - -/* Whether you have a working ttyname_r */ -#define HAVE_TTYNAME_R 1 - -/* Define to 1 if you don't have `tm_zone' but do have the external array - `tzname'. */ -/* #undef HAVE_TZNAME */ - -/* Define to 1 if you have the `tzset' function. */ -#define HAVE_TZSET 1 - -/* */ -/* #undef HAVE_UDBCEXT_H */ - -/* Define to 1 if the system has the type `uint16'. */ -/* #undef HAVE_UINT16 */ - -/* Define to 1 if the system has the type `uint16_t'. */ -#define HAVE_UINT16_T 1 - -/* Define to 1 if the system has the type `uint32'. */ -/* #undef HAVE_UINT32 */ - -/* Define to 1 if the system has the type `uint32_t'. */ -#define HAVE_UINT32_T 1 - -/* Define to 1 if the system has the type `uint64'. */ -/* #undef HAVE_UINT64 */ - -/* Define to 1 if the system has the type `uint64_t'. */ -#define HAVE_UINT64_T 1 - -/* Define to 1 if the system has the type `uint8'. */ -/* #undef HAVE_UINT8 */ - -/* Define to 1 if the system has the type `uint8_t'. */ -#define HAVE_UINT8_T 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_UNISTD_H 1 - -/* */ -/* #undef HAVE_UNIXODBC */ - -/* Define to 1 if you have the header file. */ -/* #undef HAVE_UNIX_H */ - -/* Define to 1 if you have the `unlockpt' function. */ -#define HAVE_UNLOCKPT 1 - -/* Define to 1 if you have the `unsetenv' function. */ -#define HAVE_UNSETENV 1 - -/* Define to 1 if you have the `unshare' function. */ -/* #undef HAVE_UNSHARE */ - -/* */ -/* #undef HAVE_UODBC */ - -/* Define to 1 if you have the `usleep' function. */ -#define HAVE_USLEEP 1 - -/* Define to 1 if you have the `utime' function. */ -#define HAVE_UTIME 1 - -/* Define to 1 if you have the `utimes' function. */ -#define HAVE_UTIMES 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_UTIME_H 1 - -/* Whether struct utsname has domainname */ -/* #undef HAVE_UTSNAME_DOMAINNAME */ - -/* Define to 1 if the system has the type `u_int16_t'. */ -#define HAVE_U_INT16_T 1 - -/* Define to 1 if the system has the type `u_int32_t'. */ -#define HAVE_U_INT32_T 1 - -/* Define to 1 if the system has the type `u_int64_t'. */ -#define HAVE_U_INT64_T 1 - -/* Define to 1 if the system has the type `u_int8_t'. */ -#define HAVE_U_INT8_T 1 - -/* */ -/* #undef HAVE_VALGRIND */ - -/* Define to 1 if you have the `vasprintf' function. */ -#define HAVE_VASPRINTF 1 - -/* Define to 1 if you have the `wait3' function. */ -#define HAVE_WAIT3 1 - -/* Define to 1 if you have the `wait4' function. */ -#define HAVE_WAIT4 1 - -/* Define to 1 if you have the `waitpid' function. */ -#define HAVE_WAITPID 1 - -/* Define to 1 if you have the header file. */ -#define HAVE_WCHAR_H 1 - -/* */ -#define HAVE_XML 1 - -/* */ -#define HAVE_XMLREADER 1 - -/* */ -/* #undef HAVE_XMLRPC */ - -/* */ -/* #undef HAVE_XMLRPC_BUNDLED */ - -/* */ -#define HAVE_XMLWRITER 1 - -/* */ -/* #undef HAVE_XPM */ - -/* */ -#define HAVE_XSL 1 - -/* */ -#define HAVE_XSL_EXSLT 1 - -/* */ -#define HAVE_ZIP 1 - -/* */ -#define HAVE_ZLIB 1 - -/* whether _controlfp is present usable */ -/* #undef HAVE__CONTROLFP */ - -/* whether _controlfp_s is present and usable */ -/* #undef HAVE__CONTROLFP_S */ - -/* whether _FPU_SETCW is present and usable */ -/* #undef HAVE__FPU_SETCW */ - -/* iconv() is aliased to libiconv() in -liconv */ -/* #undef ICONV_ALIASED_LIBICONV */ - -/* Whether iconv supports IGNORE */ -/* #undef ICONV_BROKEN_IGNORE */ - -/* Whether iconv supports error no or not */ -/* #undef ICONV_SUPPORTS_ERRNO */ - -/* */ -/* #undef JISX0208 */ - -/* */ -/* #undef LMDB_INCLUDE_FILE */ - -/* Whether asctime_r is declared */ -/* #undef MISSING_ASCTIME_R_DECL */ - -/* Whether ctime_r is declared */ -/* #undef MISSING_CTIME_R_DECL */ - -/* */ -#define MISSING_FCLOSE_DECL 0 - -/* Whether gmtime_r is declared */ -/* #undef MISSING_GMTIME_R_DECL */ - -/* Whether localtime_r is declared */ -/* #undef MISSING_LOCALTIME_R_DECL */ - -/* Whether strtok_r is declared */ -/* #undef MISSING_STRTOK_R_DECL */ - -/* Whether mysqlnd is enabled */ -/* #undef MYSQLI_USE_MYSQLND */ - -/* Enable compressed protocol support */ -/* #undef MYSQLND_COMPRESSION_WANTED */ - -/* Enable mysqlnd code that uses OpenSSL directly */ -/* #undef MYSQLND_HAVE_SSL */ - -/* Enable core mysqlnd SSL code */ -/* #undef MYSQLND_SSL_SUPPORTED */ - -/* */ -/* #undef NDBM_INCLUDE_FILE */ - -/* The highest supported ODBC version */ -#define ODBCVER 0x0300 - -/* Define to the address where bug reports for this package should be sent. */ -/* #undef PACKAGE_BUGREPORT */ - -/* Define to the full name of this package. */ -/* #undef PACKAGE_NAME */ - -/* Define to the full name and version of this package. */ -/* #undef PACKAGE_STRING */ - -/* Define to the one symbol short name of this package. */ -/* #undef PACKAGE_TARNAME */ - -/* Define to the home page for this package. */ -/* #undef PACKAGE_URL */ - -/* Define to the version of this package. */ -/* #undef PACKAGE_VERSION */ - -/* */ -#define PCRE2_CODE_UNIT_WIDTH 8 - -/* */ -/* #undef PDO_MYSQL_UNIX_ADDR */ - -/* Whether pdo_mysql uses mysqlnd */ -/* #undef PDO_USE_MYSQLND */ - -/* */ -#define PHAR_HAVE_OPENSSL 1 - -/* */ -#define PHPDBG_DEBUG 0 - -/* PHP build date */ -#define PHP_BUILD_DATE "2022-01-26" - -/* Define if your system has fork/vfork/CreateProcess */ -#define PHP_CAN_SUPPORT_PROC_OPEN 1 - -/* fpm group name */ -/* #undef PHP_FPM_GROUP */ - -/* fpm systemd service type */ -/* #undef PHP_FPM_SYSTEMD */ - -/* fpm user name */ -/* #undef PHP_FPM_USER */ - -/* Whether the compiler supports avx2 instructions */ -#define PHP_HAVE_AVX2_INSTRUCTIONS 1 - -/* Whether the compiler supports avx instructions */ -#define PHP_HAVE_AVX_INSTRUCTIONS 1 - -/* Whether the compiler supports __builtin_clz */ -#define PHP_HAVE_BUILTIN_CLZ 1 - -/* Whether the compiler supports __builtin_cpu_init */ -#define PHP_HAVE_BUILTIN_CPU_INIT 0 - -/* Whether the compiler supports __builtin_cpu_supports */ -#define PHP_HAVE_BUILTIN_CPU_SUPPORTS 1 - -/* Whether the compiler supports __builtin_ctzl */ -#define PHP_HAVE_BUILTIN_CTZL 1 - -/* Whether the compiler supports __builtin_ctzll */ -#define PHP_HAVE_BUILTIN_CTZLL 1 - -/* Whether the compiler supports __builtin_expect */ -#define PHP_HAVE_BUILTIN_EXPECT 1 - -/* Whether the compiler supports __builtin_saddll_overflow */ -#define PHP_HAVE_BUILTIN_SADDLL_OVERFLOW 1 - -/* Whether the compiler supports __builtin_saddl_overflow */ -#define PHP_HAVE_BUILTIN_SADDL_OVERFLOW 1 - -/* Whether the compiler supports __builtin_smulll_overflow */ -#define PHP_HAVE_BUILTIN_SMULLL_OVERFLOW 1 - -/* Whether the compiler supports __builtin_smull_overflow */ -#define PHP_HAVE_BUILTIN_SMULL_OVERFLOW 1 - -/* Whether the compiler supports __builtin_ssubll_overflow */ -#define PHP_HAVE_BUILTIN_SSUBLL_OVERFLOW 1 - -/* Whether the compiler supports __builtin_ssubl_overflow */ -#define PHP_HAVE_BUILTIN_SSUBL_OVERFLOW 1 - -/* Whether the compiler supports sse4.2 instructions */ -#define PHP_HAVE_SSE4_2_INSTRUCTIONS 1 - -/* Whether the compiler supports ssse3 instructions */ -#define PHP_HAVE_SSSE3_INSTRUCTIONS 1 - -/* Whether you have HP-UX 10.x */ -/* #undef PHP_HPUX_TIME_R */ - -/* Path to iconv.h */ -/* #undef PHP_ICONV_H_PATH */ - -/* Which iconv implementation to use */ -/* #undef PHP_ICONV_IMPL */ - -/* Whether you have IRIX-style functions */ -/* #undef PHP_IRIX_TIME_R */ - -/* */ -#define PHP_MHASH_BC 1 - -/* */ -/* #undef PHP_MYSQL_UNIX_SOCK_ADDR */ - -/* */ -/* #undef PHP_OCI8_DEF_DIR */ - -/* */ -/* #undef PHP_OCI8_DEF_SHARED_LIBADD */ - -/* define to 1 if oniguruma has an invalid entry for KOI8 encoding */ -#define PHP_ONIG_BAD_KOI8_ENTRY 1 - -/* uname output */ -#define PHP_OS "Darwin" - -/* */ -/* #undef PHP_PDO_OCI_CLIENT_VERSION */ - -/* whether pread64 is default */ -/* #undef PHP_PREAD_64 */ - -/* whether pwrite64 is default */ -/* #undef PHP_PWRITE_64 */ - -/* */ -#define PHP_SIGCHILD 0 - -/* uname -a output */ -#define PHP_UNAME "Darwin pshchevayev.local 18.7.0 Darwin Kernel Version 18.7.0: Tue Aug 20 16:57:14 PDT 2019; root:xnu-4903.271.2~2/RELEASE_X86_64 x86_64" - -/* Whether PHP has to use its own crypt_r for blowfish, des and ext des */ -#define PHP_USE_PHP_CRYPT_R 1 - -/* Use dlopen with RTLD_NOW instead of RTLD_LAZY */ -/* #undef PHP_USE_RTLD_NOW */ - -/* whether write(2) works */ -#define PHP_WRITE_STDOUT 1 - -/* /proc/pid/mem interface */ -/* #undef PROC_MEM_FILE */ - -/* Whether to use Pthreads */ -#define PTHREADS 1 - -/* */ -/* #undef QDBM_INCLUDE_FILE */ - -/* The size of `int', as computed by sizeof. */ -#define SIZEOF_INT 4 - -/* Size of intmax_t */ -#define SIZEOF_INTMAX_T 8 - -/* The size of `long', as computed by sizeof. */ -#define SIZEOF_LONG 8 - -/* The size of `long long', as computed by sizeof. */ -#define SIZEOF_LONG_LONG 8 - -/* The size of `off_t', as computed by sizeof. */ -#define SIZEOF_OFF_T 8 - -/* Size of ptrdiff_t */ -#define SIZEOF_PTRDIFF_T 8 - -/* The size of `short', as computed by sizeof. */ -#define SIZEOF_SHORT 2 - -/* The size of `size_t', as computed by sizeof. */ -#define SIZEOF_SIZE_T 8 - -/* Size of ssize_t */ -#define SIZEOF_SSIZE_T 8 - -/* have sqlite3 with extension support */ -/* #undef SQLITE_OMIT_LOAD_EXTENSION */ - -/* Needed in sqlunix.h for wchar defs */ -/* #undef SS_FBX */ - -/* Needed in sqlunix.h */ -/* #undef SS_LINUX */ - -/* If using the C implementation of alloca, define if you know the - direction of stack growth for your system; otherwise it will be - automatically deduced at runtime. - STACK_DIRECTION > 0 => grows toward higher addresses - STACK_DIRECTION < 0 => grows toward lower addresses - STACK_DIRECTION = 0 => direction of growth unknown */ -/* #undef STACK_DIRECTION */ - -/* Define to 1 if you have the ANSI C header files. */ -#define STDC_HEADERS 1 - -/* */ -/* #undef TCADB_INCLUDE_FILE */ - -/* Define to 1 if your declares `struct tm'. */ -/* #undef TM_IN_SYS_TIME */ - -/* */ -/* #undef TSRM_ST */ - -/* */ -/* #undef USE_GD_JISX0208 */ - -/* Define if cross-process locking is required by accept() */ -/* #undef USE_LOCKING */ - -/* Use system default cipher list instead of hardcoded value */ -/* #undef USE_OPENSSL_SYSTEM_CIPHERS */ - -/* Enable extensions on AIX 3, Interix. */ -#ifndef _ALL_SOURCE -# define _ALL_SOURCE 1 -#endif -/* Enable GNU extensions on systems that have them. */ -#ifndef _GNU_SOURCE -# define _GNU_SOURCE 1 -#endif -/* Enable threading extensions on Solaris. */ -#ifndef _POSIX_PTHREAD_SEMANTICS -# define _POSIX_PTHREAD_SEMANTICS 1 -#endif -/* Enable extensions on HP NonStop. */ -#ifndef _TANDEM_SOURCE -# define _TANDEM_SOURCE 1 -#endif -/* Enable general extensions on Solaris. */ -#ifndef __EXTENSIONS__ -# define __EXTENSIONS__ 1 -#endif - - -/* Define if processor uses big-endian word */ -/* #undef WORDS_BIGENDIAN */ - -/* */ -#define ZEND_DEBUG 0 - -/* Define if double cast to long preserves least significant bits */ -/* #undef ZEND_DVAL_TO_LVAL_CAST_OK */ - -/* */ -#define ZEND_MM_ALIGNMENT 8 - -/* */ -#define ZEND_MM_ALIGNMENT_LOG2 3 - -/* Use zend signal handling */ -#define ZEND_SIGNALS 1 - -/* */ -#define ZTS 1 - -/* Define to 1 if on MINIX. */ -/* #undef _MINIX */ - -/* Define to 2 if the system does not provide POSIX.1 features except with - this defined. */ -/* #undef _POSIX_1_SOURCE */ - -/* Define to 1 if you need to in order for `stat' and other things to work. */ -/* #undef _POSIX_SOURCE */ - -/* Define to `int' if doesn't define. */ -/* #undef gid_t */ - -/* */ -/* #undef in_addr_t */ - -/* Define to `__inline__' or `__inline' if that's what the C compiler - calls it, or to nothing if 'inline' is not supported under any name. */ -#ifndef __cplusplus -/* #undef inline */ -#endif - -/* Define to `unsigned int' if does not define. */ -/* #undef size_t */ - -/* Define to `int' if doesn't define. */ -/* #undef uid_t */ - - -#ifndef ZEND_ACCONFIG_H_NO_C_PROTOS - -#include - -#ifdef HAVE_SYS_TYPES_H -# include -#endif - -#ifdef HAVE_SYS_SELECT_H -#include -#endif - -#ifdef HAVE_IEEEFP_H -# include -#endif - -#include - -#if defined(__cplusplus) && __cplusplus >= 201103L -extern "C++" { -#include -#define zend_isnan std::isnan -#define zend_isinf std::isinf -#define zend_finite std::isfinite -} -#else -#include - -#ifndef zend_isnan -#if HAVE_DECL_ISNAN -#define zend_isnan(a) isnan(a) -#elif defined(HAVE_FPCLASS) -#define zend_isnan(a) ((fpclass(a) == FP_SNAN) || (fpclass(a) == FP_QNAN)) -#else -#define zend_isnan(a) ((a) != (a)) -#endif -#endif - -#if HAVE_DECL_ISINF -#define zend_isinf(a) isinf(a) -#elif defined(INFINITY) -/* Might not work, but is required by ISO C99 */ -#define zend_isinf(a) (((a)==INFINITY || (a)==-INFINITY)?1:0) -#elif defined(HAVE_FPCLASS) -#define zend_isinf(a) ((fpclass(a) == FP_PINF) || (fpclass(a) == FP_NINF)) -#else -#define zend_isinf(a) 0 -#endif - -#if HAVE_DECL_ISFINITE -#define zend_finite(a) isfinite(a) -#elif defined(HAVE_FINITE) -#define zend_finite(a) finite(a) -#elif defined(fpclassify) -#define zend_finite(a) ((fpclassify((a))!=FP_INFINITE&&fpclassify((a))!=FP_NAN)?1:0) -#else -#define zend_finite(a) (zend_isnan(a) ? 0 : zend_isinf(a) ? 0 : 1) -#endif - -#endif -#endif /* ifndef ZEND_ACCONFIG_H_NO_C_PROTOS */ - -#endif /* PHP_CONFIG_H */ - diff --git a/7.4.27/mac/include/php/main/php_content_types.h b/7.4.27/mac/include/php/main/php_content_types.h deleted file mode 100644 index 145e8d4..0000000 --- a/7.4.27/mac/include/php/main/php_content_types.h +++ /dev/null @@ -1,29 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_CONTENT_TYPES_H -#define PHP_CONTENT_TYPES_H - -#define DEFAULT_POST_CONTENT_TYPE "application/x-www-form-urlencoded" - -SAPI_API SAPI_POST_READER_FUNC(php_default_post_reader); -SAPI_API SAPI_POST_HANDLER_FUNC(php_std_post_handler); -int php_startup_sapi_content_types(void); -int php_setup_sapi_content_types(void); - -#endif /* PHP_CONTENT_TYPES_H */ diff --git a/7.4.27/mac/include/php/main/php_getopt.h b/7.4.27/mac/include/php/main/php_getopt.h deleted file mode 100644 index c368aa7..0000000 --- a/7.4.27/mac/include/php/main/php_getopt.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Marcus Boerger | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_GETOPT_H -#define PHP_GETOPT_H - -#include "php.h" - -/* Define structure for one recognized option (both single char and long name). - * If short_open is '-' this is the last option. */ -typedef struct _opt_struct { - char opt_char; - int need_param; - char * opt_name; -} opt_struct; - -BEGIN_EXTERN_C() -/* holds the index of the latest fetched element from the opts array */ -extern PHPAPI int php_optidx; -PHPAPI int php_getopt(int argc, char* const *argv, const opt_struct opts[], char **optarg, int *optind, int show_err, int arg_start); -END_EXTERN_C() - -/* php_getopt will return this value if there is an error in arguments */ -#define PHP_GETOPT_INVALID_ARG (-2) - -#endif diff --git a/7.4.27/mac/include/php/main/php_globals.h b/7.4.27/mac/include/php/main/php_globals.h deleted file mode 100644 index 6b31d9e..0000000 --- a/7.4.27/mac/include/php/main/php_globals.h +++ /dev/null @@ -1,176 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_GLOBALS_H -#define PHP_GLOBALS_H - -#include "zend_globals.h" - -typedef struct _php_core_globals php_core_globals; - -#ifdef ZTS -# define PG(v) ZEND_TSRMG_FAST(core_globals_offset, php_core_globals *, v) -extern PHPAPI int core_globals_id; -extern PHPAPI size_t core_globals_offset; -#else -# define PG(v) (core_globals.v) -extern ZEND_API struct _php_core_globals core_globals; -#endif - -/* Error display modes */ -#define PHP_DISPLAY_ERRORS_STDOUT 1 -#define PHP_DISPLAY_ERRORS_STDERR 2 - -/* Track vars */ -#define TRACK_VARS_POST 0 -#define TRACK_VARS_GET 1 -#define TRACK_VARS_COOKIE 2 -#define TRACK_VARS_SERVER 3 -#define TRACK_VARS_ENV 4 -#define TRACK_VARS_FILES 5 -#define TRACK_VARS_REQUEST 6 - -struct _php_tick_function_entry; - -typedef struct _arg_separators { - char *output; - char *input; -} arg_separators; - -struct _php_core_globals { - zend_bool implicit_flush; - - zend_long output_buffering; - - zend_bool enable_dl; - - char *output_handler; - - char *unserialize_callback_func; - zend_long serialize_precision; - - zend_long memory_limit; - zend_long max_input_time; - - zend_bool track_errors; - zend_bool display_errors; - zend_bool display_startup_errors; - zend_bool log_errors; - zend_long log_errors_max_len; - zend_bool ignore_repeated_errors; - zend_bool ignore_repeated_source; - zend_bool report_memleaks; - char *error_log; - - char *doc_root; - char *user_dir; - char *include_path; - char *open_basedir; - char *extension_dir; - char *php_binary; - char *sys_temp_dir; - - char *upload_tmp_dir; - zend_long upload_max_filesize; - - char *error_append_string; - char *error_prepend_string; - - char *auto_prepend_file; - char *auto_append_file; - - char *input_encoding; - char *internal_encoding; - char *output_encoding; - - arg_separators arg_separator; - - char *variables_order; - - HashTable rfc1867_protected_variables; - - short connection_status; - zend_bool ignore_user_abort; - - unsigned char header_is_being_sent; - - zend_llist tick_functions; - - zval http_globals[6]; - - zend_bool expose_php; - - zend_bool register_argc_argv; - zend_bool auto_globals_jit; - - char *docref_root; - char *docref_ext; - - zend_bool html_errors; - zend_bool xmlrpc_errors; - - zend_long xmlrpc_error_number; - - zend_bool activated_auto_globals[8]; - - zend_bool modules_activated; - zend_bool file_uploads; - zend_bool during_request_startup; - zend_bool allow_url_fopen; - zend_bool enable_post_data_reading; - zend_bool report_zend_debug; - - int last_error_type; - char *last_error_message; - char *last_error_file; - int last_error_lineno; - - char *php_sys_temp_dir; - - char *disable_functions; - char *disable_classes; - zend_bool allow_url_include; -#ifdef PHP_WIN32 - zend_bool com_initialized; -#endif - zend_long max_input_nesting_level; - zend_long max_input_vars; - zend_bool in_user_include; - - char *user_ini_filename; - zend_long user_ini_cache_ttl; - - char *request_order; - - zend_bool mail_x_header; - char *mail_log; - - zend_bool in_error_log; - -#ifdef PHP_WIN32 - zend_bool windows_show_crt_warning; -#endif - - zend_long syslog_facility; - char *syslog_ident; - zend_bool have_called_openlog; - zend_long syslog_filter; -}; - - -#endif /* PHP_GLOBALS_H */ diff --git a/7.4.27/mac/include/php/main/php_ini.h b/7.4.27/mac/include/php/main/php_ini.h deleted file mode 100644 index a4fad6c..0000000 --- a/7.4.27/mac/include/php/main/php_ini.h +++ /dev/null @@ -1,89 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_INI_H -#define PHP_INI_H - -#include "zend_ini.h" - -BEGIN_EXTERN_C() -PHPAPI void config_zval_dtor(zval *zvalue); -int php_init_config(void); -int php_shutdown_config(void); -void php_ini_register_extensions(void); -PHPAPI zval *cfg_get_entry_ex(zend_string *name); -PHPAPI zval *cfg_get_entry(const char *name, size_t name_length); -PHPAPI int cfg_get_long(const char *varname, zend_long *result); -PHPAPI int cfg_get_double(const char *varname, double *result); -PHPAPI int cfg_get_string(const char *varname, char **result); -PHPAPI int php_parse_user_ini_file(const char *dirname, char *ini_filename, HashTable *target_hash); -PHPAPI void php_ini_activate_config(HashTable *source_hash, int modify_type, int stage); -PHPAPI int php_ini_has_per_dir_config(void); -PHPAPI int php_ini_has_per_host_config(void); -PHPAPI void php_ini_activate_per_dir_config(char *path, size_t path_len); -PHPAPI void php_ini_activate_per_host_config(const char *host, size_t host_len); -PHPAPI HashTable* php_ini_get_configuration_hash(void); -END_EXTERN_C() - -#define PHP_INI_USER ZEND_INI_USER -#define PHP_INI_PERDIR ZEND_INI_PERDIR -#define PHP_INI_SYSTEM ZEND_INI_SYSTEM - -#define PHP_INI_ALL ZEND_INI_ALL - -#define php_ini_entry zend_ini_entry - -#define PHP_INI_MH ZEND_INI_MH -#define PHP_INI_DISP ZEND_INI_DISP - -#define PHP_INI_BEGIN ZEND_INI_BEGIN -#define PHP_INI_END ZEND_INI_END - -#define PHP_INI_ENTRY3_EX ZEND_INI_ENTRY3_EX -#define PHP_INI_ENTRY3 ZEND_INI_ENTRY3 -#define PHP_INI_ENTRY2_EX ZEND_INI_ENTRY2_EX -#define PHP_INI_ENTRY2 ZEND_INI_ENTRY2 -#define PHP_INI_ENTRY1_EX ZEND_INI_ENTRY1_EX -#define PHP_INI_ENTRY1 ZEND_INI_ENTRY1 -#define PHP_INI_ENTRY_EX ZEND_INI_ENTRY_EX -#define PHP_INI_ENTRY ZEND_INI_ENTRY - -#define STD_PHP_INI_ENTRY STD_ZEND_INI_ENTRY -#define STD_PHP_INI_ENTRY_EX STD_ZEND_INI_ENTRY_EX -#define STD_PHP_INI_BOOLEAN STD_ZEND_INI_BOOLEAN - -#define PHP_INI_DISPLAY_ORIG ZEND_INI_DISPLAY_ORIG -#define PHP_INI_DISPLAY_ACTIVE ZEND_INI_DISPLAY_ACTIVE - -#define PHP_INI_STAGE_STARTUP ZEND_INI_STAGE_STARTUP -#define PHP_INI_STAGE_SHUTDOWN ZEND_INI_STAGE_SHUTDOWN -#define PHP_INI_STAGE_ACTIVATE ZEND_INI_STAGE_ACTIVATE -#define PHP_INI_STAGE_DEACTIVATE ZEND_INI_STAGE_DEACTIVATE -#define PHP_INI_STAGE_RUNTIME ZEND_INI_STAGE_RUNTIME -#define PHP_INI_STAGE_HTACCESS ZEND_INI_STAGE_HTACCESS - -#define php_ini_boolean_displayer_cb zend_ini_boolean_displayer_cb -#define php_ini_color_displayer_cb zend_ini_color_displayer_cb - -#define php_alter_ini_entry zend_alter_ini_entry - -#define php_ini_long zend_ini_long -#define php_ini_double zend_ini_double -#define php_ini_string zend_ini_string - -#endif /* PHP_INI_H */ diff --git a/7.4.27/mac/include/php/main/php_main.h b/7.4.27/mac/include/php/main/php_main.h deleted file mode 100644 index 44eeb97..0000000 --- a/7.4.27/mac/include/php/main/php_main.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Andi Gutmans | - | Zeev Suraski | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_MAIN_H -#define PHP_MAIN_H - -#include "zend_globals.h" -#include "php_globals.h" -#include "SAPI.h" - -BEGIN_EXTERN_C() -PHPAPI int php_request_startup(void); -PHPAPI void php_request_shutdown(void *dummy); -PHPAPI int php_module_startup(sapi_module_struct *sf, zend_module_entry *additional_modules, uint32_t num_additional_modules); -PHPAPI void php_module_shutdown(void); -PHPAPI int php_module_shutdown_wrapper(sapi_module_struct *sapi_globals); - -PHPAPI int php_register_extensions(zend_module_entry * const * ptr, int count); - -PHPAPI int php_execute_script(zend_file_handle *primary_file); -PHPAPI int php_execute_simple_script(zend_file_handle *primary_file, zval *ret); -PHPAPI int php_handle_special_queries(void); -PHPAPI int php_lint_script(zend_file_handle *file); - -PHPAPI void php_handle_aborted_connection(void); -PHPAPI int php_handle_auth_data(const char *auth); - -PHPAPI void php_html_puts(const char *str, size_t siz); -PHPAPI int php_stream_open_for_zend_ex(const char *filename, zend_file_handle *handle, int mode); - -/* environment module */ -extern int php_init_environ(void); -extern int php_shutdown_environ(void); - -#ifdef ZTS -PHPAPI void php_reserve_tsrm_memory(void); -PHPAPI int php_tsrm_startup(void); -#endif - -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/main/php_memory_streams.h b/7.4.27/mac/include/php/main/php_memory_streams.h deleted file mode 100644 index 7db25dd..0000000 --- a/7.4.27/mac/include/php/main/php_memory_streams.h +++ /dev/null @@ -1,65 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Marcus Boerger | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_MEMORY_STREAM_H -#define PHP_MEMORY_STREAM_H - -#include "php_streams.h" - -#define PHP_STREAM_MAX_MEM 2 * 1024 * 1024 - -#define TEMP_STREAM_DEFAULT 0x0 -#define TEMP_STREAM_READONLY 0x1 -#define TEMP_STREAM_TAKE_BUFFER 0x2 -#define TEMP_STREAM_APPEND 0x4 - -#define php_stream_memory_create(mode) _php_stream_memory_create((mode) STREAMS_CC) -#define php_stream_memory_create_rel(mode) _php_stream_memory_create((mode) STREAMS_REL_CC) -#define php_stream_memory_open(mode, buf, length) _php_stream_memory_open((mode), (buf), (length) STREAMS_CC) -#define php_stream_memory_get_buffer(stream, length) _php_stream_memory_get_buffer((stream), (length) STREAMS_CC) - -#define php_stream_temp_new() php_stream_temp_create(TEMP_STREAM_DEFAULT, PHP_STREAM_MAX_MEM) -#define php_stream_temp_create(mode, max_memory_usage) _php_stream_temp_create((mode), (max_memory_usage) STREAMS_CC) -#define php_stream_temp_create_ex(mode, max_memory_usage, tmpdir) _php_stream_temp_create_ex((mode), (max_memory_usage), (tmpdir) STREAMS_CC) -#define php_stream_temp_create_rel(mode, max_memory_usage) _php_stream_temp_create((mode), (max_memory_usage) STREAMS_REL_CC) -#define php_stream_temp_open(mode, max_memory_usage, buf, length) _php_stream_temp_open((mode), (max_memory_usage), (buf), (length) STREAMS_CC) - -BEGIN_EXTERN_C() - -PHPAPI php_stream *_php_stream_memory_create(int mode STREAMS_DC); -PHPAPI php_stream *_php_stream_memory_open(int mode, char *buf, size_t length STREAMS_DC); -PHPAPI char *_php_stream_memory_get_buffer(php_stream *stream, size_t *length STREAMS_DC); - -PHPAPI php_stream *_php_stream_temp_create(int mode, size_t max_memory_usage STREAMS_DC); -PHPAPI php_stream *_php_stream_temp_create_ex(int mode, size_t max_memory_usage, const char *tmpdir STREAMS_DC); -PHPAPI php_stream *_php_stream_temp_open(int mode, size_t max_memory_usage, char *buf, size_t length STREAMS_DC); - -PHPAPI int php_stream_mode_from_str(const char *mode); -PHPAPI const char *_php_stream_mode_to_str(int mode); - -END_EXTERN_C() - -extern PHPAPI const php_stream_ops php_stream_memory_ops; -extern PHPAPI const php_stream_ops php_stream_temp_ops; -extern PHPAPI const php_stream_ops php_stream_rfc2397_ops; -extern PHPAPI const php_stream_wrapper php_stream_rfc2397_wrapper; - -#define PHP_STREAM_IS_MEMORY &php_stream_memory_ops -#define PHP_STREAM_IS_TEMP &php_stream_temp_ops - -#endif diff --git a/7.4.27/mac/include/php/main/php_network.h b/7.4.27/mac/include/php/main/php_network.h deleted file mode 100644 index 241ca94..0000000 --- a/7.4.27/mac/include/php/main/php_network.h +++ /dev/null @@ -1,339 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Stig Venaas | - +----------------------------------------------------------------------+ - */ - -#ifndef _PHP_NETWORK_H -#define _PHP_NETWORK_H - -#include - -#ifdef PHP_WIN32 -# include "win32/inet.h" -#else -# undef closesocket -# define closesocket close -# include -#endif - -#ifndef HAVE_SHUTDOWN -#undef shutdown -#define shutdown(s,n) /* nothing */ -#endif - -#ifdef PHP_WIN32 -# ifdef EWOULDBLOCK -# undef EWOULDBLOCK -# endif -# ifdef EINPROGRESS -# undef EINPROGRESS -# endif -# define EWOULDBLOCK WSAEWOULDBLOCK -# define EINPROGRESS WSAEWOULDBLOCK -# define fsync _commit -# define ftruncate(a, b) chsize(a, b) -#endif /* defined(PHP_WIN32) */ - -#ifndef EWOULDBLOCK -# define EWOULDBLOCK EAGAIN -#endif - -#ifdef PHP_WIN32 -#define php_socket_errno() WSAGetLastError() -#else -#define php_socket_errno() errno -#endif - -/* like strerror, but caller must efree the returned string, - * unless buf is not NULL. - * Also works sensibly for win32 */ -BEGIN_EXTERN_C() -PHPAPI char *php_socket_strerror(long err, char *buf, size_t bufsize); -PHPAPI zend_string *php_socket_error_str(long err); -END_EXTERN_C() - -#ifdef HAVE_NETINET_IN_H -# include -#endif - -#ifdef HAVE_SYS_SOCKET_H -#include -#endif - -#ifdef HAVE_GETHOSTBYNAME_R -#include -#endif - -/* These are here, rather than with the win32 counterparts above, - * since defines them. */ -#ifndef SHUT_RD -# define SHUT_RD 0 -# define SHUT_WR 1 -# define SHUT_RDWR 2 -#endif - -#ifdef HAVE_SYS_TIME_H -#include -#endif - -#include - -#ifdef PHP_WIN32 -typedef SOCKET php_socket_t; -#else -typedef int php_socket_t; -#endif - -#ifdef PHP_WIN32 -# define SOCK_ERR INVALID_SOCKET -# define SOCK_CONN_ERR SOCKET_ERROR -# define SOCK_RECV_ERR SOCKET_ERROR -#else -# define SOCK_ERR -1 -# define SOCK_CONN_ERR -1 -# define SOCK_RECV_ERR -1 -#endif - -#define STREAM_SOCKOP_NONE (1 << 0) -#define STREAM_SOCKOP_SO_REUSEPORT (1 << 1) -#define STREAM_SOCKOP_SO_BROADCAST (1 << 2) -#define STREAM_SOCKOP_IPV6_V6ONLY (1 << 3) -#define STREAM_SOCKOP_IPV6_V6ONLY_ENABLED (1 << 4) -#define STREAM_SOCKOP_TCP_NODELAY (1 << 5) - - -/* uncomment this to debug poll(2) emulation on systems that have poll(2) */ -/* #define PHP_USE_POLL_2_EMULATION 1 */ - -#if defined(HAVE_POLL) -# if defined(HAVE_POLL_H) -# include -# elif defined(HAVE_SYS_POLL_H) -# include -# endif -typedef struct pollfd php_pollfd; -#else -typedef struct _php_pollfd { - php_socket_t fd; - short events; - short revents; -} php_pollfd; - -PHPAPI int php_poll2(php_pollfd *ufds, unsigned int nfds, int timeout); - -#ifndef POLLIN -# define POLLIN 0x0001 /* There is data to read */ -# define POLLPRI 0x0002 /* There is urgent data to read */ -# define POLLOUT 0x0004 /* Writing now will not block */ -# define POLLERR 0x0008 /* Error condition */ -# define POLLHUP 0x0010 /* Hung up */ -# define POLLNVAL 0x0020 /* Invalid request: fd not open */ -#endif - -# ifndef PHP_USE_POLL_2_EMULATION -# define PHP_USE_POLL_2_EMULATION 1 -# endif -#endif - -#define PHP_POLLREADABLE (POLLIN|POLLERR|POLLHUP) - -#ifndef PHP_USE_POLL_2_EMULATION -# define php_poll2(ufds, nfds, timeout) poll(ufds, nfds, timeout) -#endif - -/* timeval-to-timeout (for poll(2)) */ -static inline int php_tvtoto(struct timeval *timeouttv) -{ - if (timeouttv) { - return (timeouttv->tv_sec * 1000) + (timeouttv->tv_usec / 1000); - } - return -1; -} - -/* hybrid select(2)/poll(2) for a single descriptor. - * timeouttv follows same rules as select(2), but is reduced to millisecond accuracy. - * Returns 0 on timeout, -1 on error, or the event mask (ala poll(2)). - */ -static inline int php_pollfd_for(php_socket_t fd, int events, struct timeval *timeouttv) -{ - php_pollfd p; - int n; - - p.fd = fd; - p.events = events; - p.revents = 0; - - n = php_poll2(&p, 1, php_tvtoto(timeouttv)); - - if (n > 0) { - return p.revents; - } - - return n; -} - -static inline int php_pollfd_for_ms(php_socket_t fd, int events, int timeout) -{ - php_pollfd p; - int n; - - p.fd = fd; - p.events = events; - p.revents = 0; - - n = php_poll2(&p, 1, timeout); - - if (n > 0) { - return p.revents; - } - - return n; -} - -/* emit warning and suggestion for unsafe select(2) usage */ -PHPAPI void _php_emit_fd_setsize_warning(int max_fd); - -#ifdef PHP_WIN32 -/* it is safe to FD_SET too many fd's under win32; the macro will simply ignore - * descriptors that go beyond the default FD_SETSIZE */ -# define PHP_SAFE_FD_SET(fd, set) FD_SET(fd, set) -# define PHP_SAFE_FD_CLR(fd, set) FD_CLR(fd, set) -# define PHP_SAFE_FD_ISSET(fd, set) FD_ISSET(fd, set) -# define PHP_SAFE_MAX_FD(m, n) do { if (n + 1 >= FD_SETSIZE) { _php_emit_fd_setsize_warning(n); }} while(0) -#else -# define PHP_SAFE_FD_SET(fd, set) do { if (fd < FD_SETSIZE) FD_SET(fd, set); } while(0) -# define PHP_SAFE_FD_CLR(fd, set) do { if (fd < FD_SETSIZE) FD_CLR(fd, set); } while(0) -# define PHP_SAFE_FD_ISSET(fd, set) ((fd < FD_SETSIZE) && FD_ISSET(fd, set)) -# define PHP_SAFE_MAX_FD(m, n) do { if (m >= FD_SETSIZE) { _php_emit_fd_setsize_warning(m); m = FD_SETSIZE - 1; }} while(0) -#endif - - -#define PHP_SOCK_CHUNK_SIZE 8192 - -#ifdef HAVE_SOCKADDR_STORAGE -typedef struct sockaddr_storage php_sockaddr_storage; -#else -typedef struct { -#ifdef HAVE_SOCKADDR_SA_LEN - unsigned char ss_len; - unsigned char ss_family; -#else - unsigned short ss_family; -#endif - char info[126]; -} php_sockaddr_storage; -#endif - -BEGIN_EXTERN_C() -PHPAPI int php_network_getaddresses(const char *host, int socktype, struct sockaddr ***sal, zend_string **error_string); -PHPAPI void php_network_freeaddresses(struct sockaddr **sal); - -PHPAPI php_socket_t php_network_connect_socket_to_host(const char *host, unsigned short port, - int socktype, int asynchronous, struct timeval *timeout, zend_string **error_string, - int *error_code, char *bindto, unsigned short bindport, long sockopts - ); - -PHPAPI int php_network_connect_socket(php_socket_t sockfd, - const struct sockaddr *addr, - socklen_t addrlen, - int asynchronous, - struct timeval *timeout, - zend_string **error_string, - int *error_code); - -#define php_connect_nonb(sock, addr, addrlen, timeout) \ - php_network_connect_socket((sock), (addr), (addrlen), 0, (timeout), NULL, NULL) - -PHPAPI php_socket_t php_network_bind_socket_to_local_addr(const char *host, unsigned port, - int socktype, long sockopts, zend_string **error_string, int *error_code - ); - -PHPAPI php_socket_t php_network_accept_incoming(php_socket_t srvsock, - zend_string **textaddr, - struct sockaddr **addr, - socklen_t *addrlen, - struct timeval *timeout, - zend_string **error_string, - int *error_code, - int tcp_nodelay - ); - -PHPAPI int php_network_get_sock_name(php_socket_t sock, - zend_string **textaddr, - struct sockaddr **addr, - socklen_t *addrlen - ); - -PHPAPI int php_network_get_peer_name(php_socket_t sock, - zend_string **textaddr, - struct sockaddr **addr, - socklen_t *addrlen - ); - -PHPAPI void php_any_addr(int family, php_sockaddr_storage *addr, unsigned short port); -PHPAPI int php_sockaddr_size(php_sockaddr_storage *addr); -END_EXTERN_C() - -struct _php_netstream_data_t { - php_socket_t socket; - char is_blocked; - struct timeval timeout; - char timeout_event; - size_t ownsize; -}; -typedef struct _php_netstream_data_t php_netstream_data_t; -PHPAPI extern const php_stream_ops php_stream_socket_ops; -extern const php_stream_ops php_stream_generic_socket_ops; -#define PHP_STREAM_IS_SOCKET (&php_stream_socket_ops) - -BEGIN_EXTERN_C() -PHPAPI php_stream *_php_stream_sock_open_from_socket(php_socket_t socket, const char *persistent_id STREAMS_DC ); -/* open a connection to a host using php_hostconnect and return a stream */ -PHPAPI php_stream *_php_stream_sock_open_host(const char *host, unsigned short port, - int socktype, struct timeval *timeout, const char *persistent_id STREAMS_DC); -PHPAPI void php_network_populate_name_from_sockaddr( - /* input address */ - struct sockaddr *sa, socklen_t sl, - /* output readable address */ - zend_string **textaddr, - /* output address */ - struct sockaddr **addr, - socklen_t *addrlen - ); - -PHPAPI int php_network_parse_network_address_with_port(const char *addr, - zend_long addrlen, struct sockaddr *sa, socklen_t *sl); - -PHPAPI struct hostent* php_network_gethostbyname(char *name); - -PHPAPI int php_set_sock_blocking(php_socket_t socketd, int block); -END_EXTERN_C() - -#define php_stream_sock_open_from_socket(socket, persistent) _php_stream_sock_open_from_socket((socket), (persistent) STREAMS_CC) -#define php_stream_sock_open_host(host, port, socktype, timeout, persistent) _php_stream_sock_open_host((host), (port), (socktype), (timeout), (persistent) STREAMS_CC) - -/* {{{ memory debug */ -#define php_stream_sock_open_from_socket_rel(socket, persistent) _php_stream_sock_open_from_socket((socket), (persistent) STREAMS_REL_CC) -#define php_stream_sock_open_host_rel(host, port, socktype, timeout, persistent) _php_stream_sock_open_host((host), (port), (socktype), (timeout), (persistent) STREAMS_REL_CC) -#define php_stream_sock_open_unix_rel(path, pathlen, persistent, timeval) _php_stream_sock_open_unix((path), (pathlen), (persistent), (timeval) STREAMS_REL_CC) - -/* }}} */ - -#ifndef MAXFQDNLEN -#define MAXFQDNLEN 255 -#endif - -#endif /* _PHP_NETWORK_H */ diff --git a/7.4.27/mac/include/php/main/php_open_temporary_file.h b/7.4.27/mac/include/php/main/php_open_temporary_file.h deleted file mode 100644 index 2c7d98f..0000000 --- a/7.4.27/mac/include/php/main/php_open_temporary_file.h +++ /dev/null @@ -1,40 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_OPEN_TEMPORARY_FILE_H -#define PHP_OPEN_TEMPORARY_FILE_H - -#define PHP_TMP_FILE_DEFAULT 0 -#define PHP_TMP_FILE_OPEN_BASEDIR_CHECK_ON_FALLBACK (1<<0) -#define PHP_TMP_FILE_SILENT (1<<1) -#define PHP_TMP_FILE_OPEN_BASEDIR_CHECK_ON_EXPLICIT_DIR (1<<2) -#define PHP_TMP_FILE_OPEN_BASEDIR_CHECK_ALWAYS \ - (PHP_TMP_FILE_OPEN_BASEDIR_CHECK_ON_FALLBACK | PHP_TMP_FILE_OPEN_BASEDIR_CHECK_ON_EXPLICIT_DIR) - -/* for compatibility purpose */ -#define PHP_TMP_FILE_OPEN_BASEDIR_CHECK PHP_TMP_FILE_OPEN_BASEDIR_CHECK_ON_FALLBACK - - -BEGIN_EXTERN_C() -PHPAPI FILE *php_open_temporary_file(const char *dir, const char *pfx, zend_string **opened_path_p); -PHPAPI int php_open_temporary_fd_ex(const char *dir, const char *pfx, zend_string **opened_path_p, uint32_t flags); -PHPAPI int php_open_temporary_fd(const char *dir, const char *pfx, zend_string **opened_path_p); -PHPAPI const char *php_get_temporary_directory(void); -END_EXTERN_C() - -#endif /* PHP_OPEN_TEMPORARY_FILE_H */ diff --git a/7.4.27/mac/include/php/main/php_output.h b/7.4.27/mac/include/php/main/php_output.h deleted file mode 100644 index f76d61d..0000000 --- a/7.4.27/mac/include/php/main/php_output.h +++ /dev/null @@ -1,264 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Michael Wallner | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_OUTPUT_H -#define PHP_OUTPUT_H - -#define PHP_OUTPUT_NEWAPI 1 - -/* handler ops */ -#define PHP_OUTPUT_HANDLER_WRITE 0x00 /* standard passthru */ -#define PHP_OUTPUT_HANDLER_START 0x01 /* start */ -#define PHP_OUTPUT_HANDLER_CLEAN 0x02 /* restart */ -#define PHP_OUTPUT_HANDLER_FLUSH 0x04 /* pass along as much as possible */ -#define PHP_OUTPUT_HANDLER_FINAL 0x08 /* finalize */ -#define PHP_OUTPUT_HANDLER_CONT PHP_OUTPUT_HANDLER_WRITE -#define PHP_OUTPUT_HANDLER_END PHP_OUTPUT_HANDLER_FINAL - -/* handler types */ -#define PHP_OUTPUT_HANDLER_INTERNAL 0x0000 -#define PHP_OUTPUT_HANDLER_USER 0x0001 - -/* handler ability flags */ -#define PHP_OUTPUT_HANDLER_CLEANABLE 0x0010 -#define PHP_OUTPUT_HANDLER_FLUSHABLE 0x0020 -#define PHP_OUTPUT_HANDLER_REMOVABLE 0x0040 -#define PHP_OUTPUT_HANDLER_STDFLAGS 0x0070 - -/* handler status flags */ -#define PHP_OUTPUT_HANDLER_STARTED 0x1000 -#define PHP_OUTPUT_HANDLER_DISABLED 0x2000 -#define PHP_OUTPUT_HANDLER_PROCESSED 0x4000 - -/* handler op return values */ -typedef enum _php_output_handler_status_t { - PHP_OUTPUT_HANDLER_FAILURE, - PHP_OUTPUT_HANDLER_SUCCESS, - PHP_OUTPUT_HANDLER_NO_DATA -} php_output_handler_status_t; - -/* php_output_stack_pop() flags */ -#define PHP_OUTPUT_POP_TRY 0x000 -#define PHP_OUTPUT_POP_FORCE 0x001 -#define PHP_OUTPUT_POP_DISCARD 0x010 -#define PHP_OUTPUT_POP_SILENT 0x100 - -/* real global flags */ -#define PHP_OUTPUT_IMPLICITFLUSH 0x01 -#define PHP_OUTPUT_DISABLED 0x02 -#define PHP_OUTPUT_WRITTEN 0x04 -#define PHP_OUTPUT_SENT 0x08 -/* supplementary flags for php_output_get_status() */ -#define PHP_OUTPUT_ACTIVE 0x10 -#define PHP_OUTPUT_LOCKED 0x20 -/* output layer is ready to use */ -#define PHP_OUTPUT_ACTIVATED 0x100000 - -/* handler hooks */ -typedef enum _php_output_handler_hook_t { - PHP_OUTPUT_HANDLER_HOOK_GET_OPAQ, - PHP_OUTPUT_HANDLER_HOOK_GET_FLAGS, - PHP_OUTPUT_HANDLER_HOOK_GET_LEVEL, - PHP_OUTPUT_HANDLER_HOOK_IMMUTABLE, - PHP_OUTPUT_HANDLER_HOOK_DISABLE, - /* unused */ - PHP_OUTPUT_HANDLER_HOOK_LAST -} php_output_handler_hook_t; - -#define PHP_OUTPUT_HANDLER_INITBUF_SIZE(s) \ -( ((s) > 1) ? \ - (s) + PHP_OUTPUT_HANDLER_ALIGNTO_SIZE - ((s) % (PHP_OUTPUT_HANDLER_ALIGNTO_SIZE)) : \ - PHP_OUTPUT_HANDLER_DEFAULT_SIZE \ -) -#define PHP_OUTPUT_HANDLER_ALIGNTO_SIZE 0x1000 -#define PHP_OUTPUT_HANDLER_DEFAULT_SIZE 0x4000 - -typedef struct _php_output_buffer { - char *data; - size_t size; - size_t used; - uint32_t free:1; - uint32_t _reserved:31; -} php_output_buffer; - -typedef struct _php_output_context { - int op; - php_output_buffer in; - php_output_buffer out; -} php_output_context; - -/* old-style, stateless callback */ -typedef void (*php_output_handler_func_t)(char *output, size_t output_len, char **handled_output, size_t *handled_output_len, int mode); -/* new-style, opaque context callback */ -typedef int (*php_output_handler_context_func_t)(void **handler_context, php_output_context *output_context); -/* output handler context dtor */ -typedef void (*php_output_handler_context_dtor_t)(void *opaq); -/* conflict check callback */ -typedef int (*php_output_handler_conflict_check_t)(const char *handler_name, size_t handler_name_len); -/* ctor for aliases */ -typedef struct _php_output_handler *(*php_output_handler_alias_ctor_t)(const char *handler_name, size_t handler_name_len, size_t chunk_size, int flags); - -typedef struct _php_output_handler_user_func_t { - zend_fcall_info fci; - zend_fcall_info_cache fcc; - zval zoh; -} php_output_handler_user_func_t; - -typedef struct _php_output_handler { - zend_string *name; - int flags; - int level; - size_t size; - php_output_buffer buffer; - - void *opaq; - void (*dtor)(void *opaq); - - union { - php_output_handler_user_func_t *user; - php_output_handler_context_func_t internal; - } func; -} php_output_handler; - -ZEND_BEGIN_MODULE_GLOBALS(output) - zend_stack handlers; - php_output_handler *active; - php_output_handler *running; - const char *output_start_filename; - int output_start_lineno; - int flags; -ZEND_END_MODULE_GLOBALS(output) - -PHPAPI ZEND_EXTERN_MODULE_GLOBALS(output) - -/* there should not be a need to use OG() from outside of output.c */ -#ifdef ZTS -# define OG(v) ZEND_TSRMG(output_globals_id, zend_output_globals *, v) -#else -# define OG(v) (output_globals.v) -#endif - -/* convenience macros */ -#define PHPWRITE(str, str_len) php_output_write((str), (str_len)) -#define PHPWRITE_H(str, str_len) php_output_write_unbuffered((str), (str_len)) - -#define PUTC(c) php_output_write((const char *) &(c), 1) -#define PUTC_H(c) php_output_write_unbuffered((const char *) &(c), 1) - -#define PUTS(str) do { \ - const char *__str = (str); \ - php_output_write(__str, strlen(__str)); \ -} while (0) -#define PUTS_H(str) do { \ - const char *__str = (str); \ - php_output_write_unbuffered(__str, strlen(__str)); \ -} while (0) - - -BEGIN_EXTERN_C() - -extern const char php_output_default_handler_name[sizeof("default output handler")]; -extern const char php_output_devnull_handler_name[sizeof("null output handler")]; - -#define php_output_tearup() \ - php_output_startup(); \ - php_output_activate() -#define php_output_teardown() \ - php_output_end_all(); \ - php_output_deactivate(); \ - php_output_shutdown() - -/* MINIT */ -PHPAPI void php_output_startup(void); -/* MSHUTDOWN */ -PHPAPI void php_output_shutdown(void); - -PHPAPI void php_output_register_constants(void); - -/* RINIT */ -PHPAPI int php_output_activate(void); -/* RSHUTDOWN */ -PHPAPI void php_output_deactivate(void); - -PHPAPI void php_output_set_status(int status); -PHPAPI int php_output_get_status(void); -PHPAPI void php_output_set_implicit_flush(int flush); -PHPAPI const char *php_output_get_start_filename(void); -PHPAPI int php_output_get_start_lineno(void); - -PHPAPI size_t php_output_write_unbuffered(const char *str, size_t len); -PHPAPI size_t php_output_write(const char *str, size_t len); - -PHPAPI int php_output_flush(void); -PHPAPI void php_output_flush_all(void); -PHPAPI int php_output_clean(void); -PHPAPI void php_output_clean_all(void); -PHPAPI int php_output_end(void); -PHPAPI void php_output_end_all(void); -PHPAPI int php_output_discard(void); -PHPAPI void php_output_discard_all(void); - -PHPAPI int php_output_get_contents(zval *p); -PHPAPI int php_output_get_length(zval *p); -PHPAPI int php_output_get_level(void); -PHPAPI php_output_handler* php_output_get_active_handler(void); - -PHPAPI int php_output_start_default(void); -PHPAPI int php_output_start_devnull(void); - -PHPAPI int php_output_start_user(zval *output_handler, size_t chunk_size, int flags); -PHPAPI int php_output_start_internal(const char *name, size_t name_len, php_output_handler_func_t output_handler, size_t chunk_size, int flags); - -PHPAPI php_output_handler *php_output_handler_create_user(zval *handler, size_t chunk_size, int flags); -PHPAPI php_output_handler *php_output_handler_create_internal(const char *name, size_t name_len, php_output_handler_context_func_t handler, size_t chunk_size, int flags); - -PHPAPI void php_output_handler_set_context(php_output_handler *handler, void *opaq, void (*dtor)(void*)); -PHPAPI int php_output_handler_start(php_output_handler *handler); -PHPAPI int php_output_handler_started(const char *name, size_t name_len); -PHPAPI int php_output_handler_hook(php_output_handler_hook_t type, void *arg); -PHPAPI void php_output_handler_dtor(php_output_handler *handler); -PHPAPI void php_output_handler_free(php_output_handler **handler); - -PHPAPI int php_output_handler_conflict(const char *handler_new, size_t handler_new_len, const char *handler_set, size_t handler_set_len); -PHPAPI int php_output_handler_conflict_register(const char *handler_name, size_t handler_name_len, php_output_handler_conflict_check_t check_func); -PHPAPI int php_output_handler_reverse_conflict_register(const char *handler_name, size_t handler_name_len, php_output_handler_conflict_check_t check_func); - -PHPAPI php_output_handler_alias_ctor_t php_output_handler_alias(const char *handler_name, size_t handler_name_len); -PHPAPI int php_output_handler_alias_register(const char *handler_name, size_t handler_name_len, php_output_handler_alias_ctor_t func); - -END_EXTERN_C() - - -PHP_FUNCTION(ob_start); -PHP_FUNCTION(ob_flush); -PHP_FUNCTION(ob_clean); -PHP_FUNCTION(ob_end_flush); -PHP_FUNCTION(ob_end_clean); -PHP_FUNCTION(ob_get_flush); -PHP_FUNCTION(ob_get_clean); -PHP_FUNCTION(ob_get_contents); -PHP_FUNCTION(ob_get_length); -PHP_FUNCTION(ob_get_level); -PHP_FUNCTION(ob_get_status); -PHP_FUNCTION(ob_implicit_flush); -PHP_FUNCTION(ob_list_handlers); - -PHP_FUNCTION(output_add_rewrite_var); -PHP_FUNCTION(output_reset_rewrite_vars); - -#endif diff --git a/7.4.27/mac/include/php/main/php_reentrancy.h b/7.4.27/mac/include/php/main/php_reentrancy.h deleted file mode 100644 index bbc772b..0000000 --- a/7.4.27/mac/include/php/main/php_reentrancy.h +++ /dev/null @@ -1,124 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Sascha Schumann | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_REENTRANCY_H -#define PHP_REENTRANCY_H - -#include "php.h" - -#include -#ifdef HAVE_DIRENT_H -#include -#endif -#include - -/* currently, PHP does not check for these functions, but assumes - that they are available on all systems. */ - -#define HAVE_LOCALTIME 1 -#define HAVE_GMTIME 1 -#define HAVE_ASCTIME 1 -#define HAVE_CTIME 1 - -#if defined(PHP_IRIX_TIME_R) -#undef HAVE_ASCTIME_R -#undef HAVE_CTIME_R -#endif - -#if defined(PHP_HPUX_TIME_R) -#undef HAVE_LOCALTIME_R -#undef HAVE_ASCTIME_R -#undef HAVE_CTIME_R -#undef HAVE_GMTIME_R -#endif - -BEGIN_EXTERN_C() - -#if !defined(HAVE_LOCALTIME_R) && defined(HAVE_LOCALTIME) -#define PHP_NEED_REENTRANCY 1 -PHPAPI struct tm *php_localtime_r(const time_t *const timep, struct tm *p_tm); -#else -#define php_localtime_r localtime_r -#ifdef MISSING_LOCALTIME_R_DECL -struct tm *localtime_r(const time_t *const timep, struct tm *p_tm); -#endif -#endif - - -#if !defined(HAVE_CTIME_R) && defined(HAVE_CTIME) -#define PHP_NEED_REENTRANCY 1 -PHPAPI char *php_ctime_r(const time_t *clock, char *buf); -#else -#define php_ctime_r ctime_r -#ifdef MISSING_CTIME_R_DECL -char *ctime_r(const time_t *clock, char *buf); -#endif -#endif - - -#if !defined(HAVE_ASCTIME_R) && defined(HAVE_ASCTIME) -#define PHP_NEED_REENTRANCY 1 -PHPAPI char *php_asctime_r(const struct tm *tm, char *buf); -#else -#define php_asctime_r asctime_r -#ifdef MISSING_ASCTIME_R_DECL -char *asctime_r(const struct tm *tm, char *buf); -#endif -#endif - - -#if !defined(HAVE_GMTIME_R) && defined(HAVE_GMTIME) -#define PHP_NEED_REENTRANCY 1 -PHPAPI struct tm *php_gmtime_r(const time_t *const timep, struct tm *p_tm); -#else -#define php_gmtime_r gmtime_r -#ifdef MISSING_GMTIME_R_DECL -struct tm *php_gmtime_r(const time_t *const timep, struct tm *p_tm); -#endif -#endif - -#if !defined(HAVE_STRTOK_R) -PHPAPI char *php_strtok_r(char *s, const char *delim, char **last); -#else -#define php_strtok_r strtok_r -#ifdef MISSING_STRTOK_R_DECL -char *strtok_r(char *s, const char *delim, char **last); -#endif -#endif - -#if !defined(HAVE_RAND_R) -PHPAPI int php_rand_r(unsigned int *seed); -#else -#define php_rand_r rand_r -#endif - -END_EXTERN_C() - -#if !defined(ZTS) -#undef PHP_NEED_REENTRANCY -#endif - -#if defined(PHP_NEED_REENTRANCY) -void reentrancy_startup(void); -void reentrancy_shutdown(void); -#else -#define reentrancy_startup() -#define reentrancy_shutdown() -#endif - -#endif diff --git a/7.4.27/mac/include/php/main/php_scandir.h b/7.4.27/mac/include/php/main/php_scandir.h deleted file mode 100644 index 04bf29f..0000000 --- a/7.4.27/mac/include/php/main/php_scandir.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Shane Caraveo | - | Ilia Alshanetsky | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_SCANDIR_H -#define PHP_SCANDIR_H - -#include - -#ifdef PHP_WIN32 -#include "config.w32.h" -#include "win32/readdir.h" -#else -#include -#endif - -#ifdef HAVE_DIRENT_H -#include -#endif - -#ifdef HAVE_SCANDIR -#define php_scandir scandir -#else -PHPAPI int php_scandir(const char *dirname, struct dirent **namelist[], int (*selector) (const struct dirent *entry), int (*compare) (const struct dirent **a, const struct dirent **b)); -#endif - -#ifdef HAVE_ALPHASORT -#define php_alphasort alphasort -#else -PHPAPI int php_alphasort(const struct dirent **a, const struct dirent **b); -#endif - -#endif /* PHP_SCANDIR_H */ diff --git a/7.4.27/mac/include/php/main/php_stdint.h b/7.4.27/mac/include/php/main/php_stdint.h deleted file mode 100644 index 3e5fd00..0000000 --- a/7.4.27/mac/include/php/main/php_stdint.h +++ /dev/null @@ -1,220 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Michael Wallner | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_STDINT_H -#define PHP_STDINT_H - -/* C99 requires these for C++ to get the definitions - * of INT64_MAX and other macros used by Zend/zend_long.h - * C11 drops this requirement, so these effectively - * just backport that piece of behavior. - * - * These defines are placed here instead of - * with the include below, because sys/types - * and inttypes may include stdint themselves. - * And these definitions MUST come first. - */ -#ifdef __cplusplus -# ifndef __STDC_LIMIT_MACROS -# define __STDC_LIMIT_MACROS -# endif -# ifndef __STDC_CONSTANT_MACROS -# define __STDC_CONSTANT_MACROS -# endif -# ifndef __STDC_FORMAT_MACROS -# define __STDC_FORMAT_MACROS -# endif -#endif - -#if defined(_MSC_VER) -/* Make sure the regular stdint.h wasn't included already and prevent it to be - included afterwards. Though if some other library needs some stuff from - stdint.h included afterwards and misses it, we'd have to extend ours. On - the other hand, if stdint.h was included before, some conflicts might - happen so we'd likewise have to fix ours. */ -# if !defined(_STDINT) -# define _STDINT -# include "win32/php_stdint.h" -# include "win32/php_inttypes.h" -# endif -# define HAVE_INT8_T 1 -# define HAVE_UINT8_T 1 -# define HAVE_INT16_T 1 -# define HAVE_UINT16_T 1 -# define HAVE_INT32_T 1 -# define HAVE_UINT32_T 1 -# define HAVE_INT64_T 1 -# define HAVE_UINT64_T 1 -#else - -#include "php_config.h" - -#if HAVE_SYS_TYPES_H -# include -#endif - -#if HAVE_INTTYPES_H -# include -#endif - -#if HAVE_STDINT_H -# include -#endif - -#ifndef HAVE_INT8_T -# ifdef HAVE_INT8 -typedef int8 int8_t; -# else -typedef signed char int8_t; -# endif -#endif - -#ifndef INT8_C -# define INT8_C(c) c -#endif - -#ifndef HAVE_UINT8_T -# ifdef HAVE_UINT8 -typedef uint8 uint8_t -# elif HAVE_U_INT8_T -typedef u_int8_t uint8_t; -# else -typedef unsigned char uint8_t; -# endif -#endif - -#ifndef UINT8_C -# define UINT8_C(c) c -#endif - -#ifndef HAVE_INT16_T -# ifdef HAVE_INT16 -typedef int16 int16_t; -# elif SIZEOF_SHORT >= 2 -typedef signed short int16_t; -# else -# error "No suitable 16bit integer type found" -# endif -#endif - -#ifndef INT16_C -# define INT16_C(c) c -#endif - -#ifndef HAVE_UINT16_T -# ifdef HAVE_UINT16 -typedef uint16 uint16_t -# elif HAVE_U_INT16_T -typedef u_int16_t uint16_t; -# elif SIZEOF_SHORT >= 2 -typedef unsigned short uint16_t; -# else -# error "No suitable 16bit integer type found" -# endif -#endif - -#ifndef UINT16_C -# define UINT16_C(c) c -#endif - -#ifndef HAVE_INT32_T -# ifdef HAVE_INT32 -typedef int32 int32_t; -# elif SIZEOF_INT >= 4 -typedef int int32_t; -# elif SIZEOF_LONG >= 4 -typedef long int32_t; -# else -# error "No suitable 32bit integer type found" -# endif -#endif - -#ifndef INT32_C -# define INT32_C(c) c -#endif - -#ifndef HAVE_UINT32_T -# ifdef HAVE_UINT32 -typedef uint32 uint32_t -# elif HAVE_U_INT32_T -typedef u_int32_t uint32_t; -# elif SIZEOF_INT >= 4 -typedef unsigned int uint32_t; -# elif SIZEOF_LONG >= 4 -typedef unsigned long uint32_t; -# else -# error "No suitable 32bit integer type found" -# endif -#endif - -#ifndef UINT32_C -# define UINT32_C(c) c ## U -#endif - -#ifndef HAVE_INT64_T -# ifdef HAVE_INT64 -typedef int64 int64_t; -# elif SIZEOF_INT >= 8 -typedef int int64_t; -# elif SIZEOF_LONG >= 8 -typedef long int64_t; -# elif SIZEOF_LONG_LONG >= 8 -typedef long long int64_t; -# else -# error "No suitable 64bit integer type found" -# endif -#endif - -#ifndef INT64_C -# if SIZEOF_INT >= 8 -# define INT64_C(c) c -# elif SIZEOF_LONG >= 8 -# define INT64_C(c) c ## L -# elif SIZEOF_LONG_LONG >= 8 -# define INT64_C(c) c ## LL -# endif -#endif - -#ifndef HAVE_UINT64_T -# ifdef HAVE_UINT64 -typedef uint64 uint64_t -# elif HAVE_U_INT64_T -typedef u_int64_t uint64_t; -# elif SIZEOF_INT >= 8 -typedef unsigned int uint64_t; -# elif SIZEOF_LONG >= 8 -typedef unsigned long uint64_t; -# elif SIZEOF_LONG_LONG >= 8 -typedef unsigned long long uint64_t; -# else -# error "No suitable 64bit integer type found" -# endif -#endif - -#ifndef UINT64_C -# if SIZEOF_INT >= 8 -# define UINT64_C(c) c ## U -# elif SIZEOF_LONG >= 8 -# define UINT64_C(c) c ## UL -# elif SIZEOF_LONG_LONG >= 8 -# define UINT64_C(c) c ## ULL -# endif -#endif - -#endif /* !PHP_WIN32 */ -#endif /* PHP_STDINT_H */ diff --git a/7.4.27/mac/include/php/main/php_streams.h b/7.4.27/mac/include/php/main/php_streams.h deleted file mode 100644 index 11e7c2a..0000000 --- a/7.4.27/mac/include/php/main/php_streams.h +++ /dev/null @@ -1,610 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Wez Furlong (wez@thebrainroom.com) | - +----------------------------------------------------------------------+ - */ - -#ifndef PHP_STREAMS_H -#define PHP_STREAMS_H - -#ifdef HAVE_SYS_TIME_H -#include -#endif -#include -#include -#include "zend.h" -#include "zend_stream.h" - -BEGIN_EXTERN_C() -PHPAPI int php_file_le_stream(void); -PHPAPI int php_file_le_pstream(void); -PHPAPI int php_file_le_stream_filter(void); -END_EXTERN_C() - -/* {{{ Streams memory debugging stuff */ - -#if ZEND_DEBUG -/* these have more of a dependency on the definitions of the zend macros than - * I would prefer, but doing it this way saves loads of idefs :-/ */ -# define STREAMS_D int __php_stream_call_depth ZEND_FILE_LINE_DC ZEND_FILE_LINE_ORIG_DC -# define STREAMS_C 0 ZEND_FILE_LINE_CC ZEND_FILE_LINE_EMPTY_CC -# define STREAMS_REL_C __php_stream_call_depth + 1 ZEND_FILE_LINE_CC, \ - __php_stream_call_depth ? __zend_orig_filename : __zend_filename, \ - __php_stream_call_depth ? __zend_orig_lineno : __zend_lineno - -# define STREAMS_DC , STREAMS_D -# define STREAMS_CC , STREAMS_C -# define STREAMS_REL_CC , STREAMS_REL_C - -#else -# define STREAMS_D -# define STREAMS_C -# define STREAMS_REL_C -# define STREAMS_DC -# define STREAMS_CC -# define STREAMS_REL_CC -#endif - -/* these functions relay the file/line number information. They are depth aware, so they will pass - * the ultimate ancestor, which is useful, because there can be several layers of calls */ -#define php_stream_alloc_rel(ops, thisptr, persistent, mode) _php_stream_alloc((ops), (thisptr), (persistent), (mode) STREAMS_REL_CC) - -#define php_stream_copy_to_mem_rel(src, maxlen, persistent) _php_stream_copy_to_mem((src), (buf), (maxlen), (persistent) STREAMS_REL_CC) - -#define php_stream_fopen_rel(filename, mode, opened, options) _php_stream_fopen((filename), (mode), (opened), (options) STREAMS_REL_CC) - -#define php_stream_fopen_with_path_rel(filename, mode, path, opened, options) _php_stream_fopen_with_path((filename), (mode), (path), (opened), (options) STREAMS_REL_CC) - -#define php_stream_fopen_from_fd_rel(fd, mode, persistent_id) _php_stream_fopen_from_fd((fd), (mode), (persistent_id) STREAMS_REL_CC) -#define php_stream_fopen_from_file_rel(file, mode) _php_stream_fopen_from_file((file), (mode) STREAMS_REL_CC) - -#define php_stream_fopen_from_pipe_rel(file, mode) _php_stream_fopen_from_pipe((file), (mode) STREAMS_REL_CC) - -#define php_stream_fopen_tmpfile_rel() _php_stream_fopen_tmpfile(0 STREAMS_REL_CC) - -#define php_stream_fopen_temporary_file_rel(dir, pfx, opened_path) _php_stream_fopen_temporary_file((dir), (pfx), (opened_path) STREAMS_REL_CC) - -#define php_stream_open_wrapper_rel(path, mode, options, opened) _php_stream_open_wrapper_ex((path), (mode), (options), (opened), NULL STREAMS_REL_CC) -#define php_stream_open_wrapper_ex_rel(path, mode, options, opened, context) _php_stream_open_wrapper_ex((path), (mode), (options), (opened), (context) STREAMS_REL_CC) - -#define php_stream_make_seekable_rel(origstream, newstream, flags) _php_stream_make_seekable((origstream), (newstream), (flags) STREAMS_REL_CC) - -/* }}} */ - -/* The contents of the php_stream_ops and php_stream should only be accessed - * using the functions/macros in this header. - * If you need to get at something that doesn't have an API, - * drop me a line and we can sort out a way to do - * it properly. - * - * The only exceptions to this rule are that stream implementations can use - * the php_stream->abstract pointer to hold their context, and streams - * opened via stream_open_wrappers can use the zval ptr in - * php_stream->wrapperdata to hold meta data for php scripts to - * retrieve using file_get_wrapper_data(). */ - -typedef struct _php_stream php_stream; -typedef struct _php_stream_wrapper php_stream_wrapper; -typedef struct _php_stream_context php_stream_context; -typedef struct _php_stream_filter php_stream_filter; - -#include "streams/php_stream_context.h" -#include "streams/php_stream_filter_api.h" - -typedef struct _php_stream_statbuf { - zend_stat_t sb; /* regular info */ - /* extended info to go here some day: content-type etc. etc. */ -} php_stream_statbuf; - -typedef struct _php_stream_dirent { - char d_name[MAXPATHLEN]; -} php_stream_dirent; - -/* operations on streams that are file-handles */ -typedef struct _php_stream_ops { - /* stdio like functions - these are mandatory! */ - ssize_t (*write)(php_stream *stream, const char *buf, size_t count); - ssize_t (*read)(php_stream *stream, char *buf, size_t count); - int (*close)(php_stream *stream, int close_handle); - int (*flush)(php_stream *stream); - - const char *label; /* label for this ops structure */ - - /* these are optional */ - int (*seek)(php_stream *stream, zend_off_t offset, int whence, zend_off_t *newoffset); - int (*cast)(php_stream *stream, int castas, void **ret); - int (*stat)(php_stream *stream, php_stream_statbuf *ssb); - int (*set_option)(php_stream *stream, int option, int value, void *ptrparam); -} php_stream_ops; - -typedef struct _php_stream_wrapper_ops { - /* open/create a wrapped stream */ - php_stream *(*stream_opener)(php_stream_wrapper *wrapper, const char *filename, const char *mode, - int options, zend_string **opened_path, php_stream_context *context STREAMS_DC); - /* close/destroy a wrapped stream */ - int (*stream_closer)(php_stream_wrapper *wrapper, php_stream *stream); - /* stat a wrapped stream */ - int (*stream_stat)(php_stream_wrapper *wrapper, php_stream *stream, php_stream_statbuf *ssb); - /* stat a URL */ - int (*url_stat)(php_stream_wrapper *wrapper, const char *url, int flags, php_stream_statbuf *ssb, php_stream_context *context); - /* open a "directory" stream */ - php_stream *(*dir_opener)(php_stream_wrapper *wrapper, const char *filename, const char *mode, - int options, zend_string **opened_path, php_stream_context *context STREAMS_DC); - - const char *label; - - /* delete a file */ - int (*unlink)(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context); - - /* rename a file */ - int (*rename)(php_stream_wrapper *wrapper, const char *url_from, const char *url_to, int options, php_stream_context *context); - - /* Create/Remove directory */ - int (*stream_mkdir)(php_stream_wrapper *wrapper, const char *url, int mode, int options, php_stream_context *context); - int (*stream_rmdir)(php_stream_wrapper *wrapper, const char *url, int options, php_stream_context *context); - /* Metadata handling */ - int (*stream_metadata)(php_stream_wrapper *wrapper, const char *url, int options, void *value, php_stream_context *context); -} php_stream_wrapper_ops; - -struct _php_stream_wrapper { - const php_stream_wrapper_ops *wops; /* operations the wrapper can perform */ - void *abstract; /* context for the wrapper */ - int is_url; /* so that PG(allow_url_fopen) can be respected */ -}; - -#define PHP_STREAM_FLAG_NO_SEEK 0x1 -#define PHP_STREAM_FLAG_NO_BUFFER 0x2 - -#define PHP_STREAM_FLAG_EOL_UNIX 0x0 /* also includes DOS */ -#define PHP_STREAM_FLAG_DETECT_EOL 0x4 -#define PHP_STREAM_FLAG_EOL_MAC 0x8 - -/* set this when the stream might represent "interactive" data. - * When set, the read buffer will avoid certain operations that - * might otherwise cause the read to block for much longer than - * is strictly required. */ -#define PHP_STREAM_FLAG_AVOID_BLOCKING 0x10 - -#define PHP_STREAM_FLAG_NO_CLOSE 0x20 - -#define PHP_STREAM_FLAG_IS_DIR 0x40 - -#define PHP_STREAM_FLAG_NO_FCLOSE 0x80 - -#define PHP_STREAM_FLAG_WAS_WRITTEN 0x80000000 - -struct _php_stream { - const php_stream_ops *ops; - void *abstract; /* convenience pointer for abstraction */ - - php_stream_filter_chain readfilters, writefilters; - - php_stream_wrapper *wrapper; /* which wrapper was used to open the stream */ - void *wrapperthis; /* convenience pointer for a instance of a wrapper */ - zval wrapperdata; /* fgetwrapperdata retrieves this */ - - uint8_t is_persistent:1; - uint8_t in_free:2; /* to prevent recursion during free */ - uint8_t eof:1; - uint8_t __exposed:1; /* non-zero if exposed as a zval somewhere */ - - /* so we know how to clean it up correctly. This should be set to - * PHP_STREAM_FCLOSE_XXX as appropriate */ - uint8_t fclose_stdiocast:2; - - uint8_t fgetss_state; /* for fgetss to handle multiline tags */ - - char mode[16]; /* "rwb" etc. ala stdio */ - - uint32_t flags; /* PHP_STREAM_FLAG_XXX */ - - zend_resource *res; /* used for auto-cleanup */ - FILE *stdiocast; /* cache this, otherwise we might leak! */ - char *orig_path; - - zend_resource *ctx; - - /* buffer */ - zend_off_t position; /* of underlying stream */ - unsigned char *readbuf; - size_t readbuflen; - zend_off_t readpos; - zend_off_t writepos; - - /* how much data to read when filling buffer */ - size_t chunk_size; - -#if ZEND_DEBUG - const char *open_filename; - uint32_t open_lineno; -#endif - - struct _php_stream *enclosing_stream; /* this is a private stream owned by enclosing_stream */ -}; /* php_stream */ - -#define PHP_STREAM_CONTEXT(stream) \ - ((php_stream_context*) ((stream)->ctx ? ((stream)->ctx->ptr) : NULL)) - -/* state definitions when closing down; these are private to streams.c */ -#define PHP_STREAM_FCLOSE_NONE 0 -#define PHP_STREAM_FCLOSE_FDOPEN 1 -#define PHP_STREAM_FCLOSE_FOPENCOOKIE 2 - -/* allocate a new stream for a particular ops */ -BEGIN_EXTERN_C() -PHPAPI php_stream *_php_stream_alloc(const php_stream_ops *ops, void *abstract, - const char *persistent_id, const char *mode STREAMS_DC); -END_EXTERN_C() -#define php_stream_alloc(ops, thisptr, persistent_id, mode) _php_stream_alloc((ops), (thisptr), (persistent_id), (mode) STREAMS_CC) - -#define php_stream_get_resource_id(stream) ((php_stream *)(stream))->res->handle -/* use this to tell the stream that it is OK if we don't explicitly close it */ -#define php_stream_auto_cleanup(stream) { (stream)->__exposed = 1; } -/* use this to assign the stream to a zval and tell the stream that is - * has been exported to the engine; it will expect to be closed automatically - * when the resources are auto-destructed */ -#define php_stream_to_zval(stream, zval) { ZVAL_RES(zval, (stream)->res); (stream)->__exposed = 1; } - -#define php_stream_from_zval(xstr, pzval) do { \ - if (((xstr) = (php_stream*)zend_fetch_resource2_ex((pzval), \ - "stream", php_file_le_stream(), php_file_le_pstream())) == NULL) { \ - RETURN_FALSE; \ - } \ -} while (0) -#define php_stream_from_res(xstr, res) do { \ - if (((xstr) = (php_stream*)zend_fetch_resource2((res), \ - "stream", php_file_le_stream(), php_file_le_pstream())) == NULL) { \ - RETURN_FALSE; \ - } \ -} while (0) -#define php_stream_from_res_no_verify(xstr, pzval) (xstr) = (php_stream*)zend_fetch_resource2((res), "stream", php_file_le_stream(), php_file_le_pstream()) -#define php_stream_from_zval_no_verify(xstr, pzval) (xstr) = (php_stream*)zend_fetch_resource2_ex((pzval), "stream", php_file_le_stream(), php_file_le_pstream()) - -BEGIN_EXTERN_C() -PHPAPI php_stream *php_stream_encloses(php_stream *enclosing, php_stream *enclosed); -#define php_stream_free_enclosed(stream_enclosed, close_options) _php_stream_free_enclosed((stream_enclosed), (close_options)) -PHPAPI int _php_stream_free_enclosed(php_stream *stream_enclosed, int close_options); - -PHPAPI int php_stream_from_persistent_id(const char *persistent_id, php_stream **stream); -#define PHP_STREAM_PERSISTENT_SUCCESS 0 /* id exists */ -#define PHP_STREAM_PERSISTENT_FAILURE 1 /* id exists but is not a stream! */ -#define PHP_STREAM_PERSISTENT_NOT_EXIST 2 /* id does not exist */ - -#define PHP_STREAM_FREE_CALL_DTOR 1 /* call ops->close */ -#define PHP_STREAM_FREE_RELEASE_STREAM 2 /* pefree(stream) */ -#define PHP_STREAM_FREE_PRESERVE_HANDLE 4 /* tell ops->close to not close it's underlying handle */ -#define PHP_STREAM_FREE_RSRC_DTOR 8 /* called from the resource list dtor */ -#define PHP_STREAM_FREE_PERSISTENT 16 /* manually freeing a persistent connection */ -#define PHP_STREAM_FREE_IGNORE_ENCLOSING 32 /* don't close the enclosing stream instead */ -#define PHP_STREAM_FREE_KEEP_RSRC 64 /* keep associated zend_resource */ -#define PHP_STREAM_FREE_CLOSE (PHP_STREAM_FREE_CALL_DTOR | PHP_STREAM_FREE_RELEASE_STREAM) -#define PHP_STREAM_FREE_CLOSE_CASTED (PHP_STREAM_FREE_CLOSE | PHP_STREAM_FREE_PRESERVE_HANDLE) -#define PHP_STREAM_FREE_CLOSE_PERSISTENT (PHP_STREAM_FREE_CLOSE | PHP_STREAM_FREE_PERSISTENT) - -PHPAPI int _php_stream_free(php_stream *stream, int close_options); -#define php_stream_free(stream, close_options) _php_stream_free((stream), (close_options)) -#define php_stream_close(stream) _php_stream_free((stream), PHP_STREAM_FREE_CLOSE) -#define php_stream_pclose(stream) _php_stream_free((stream), PHP_STREAM_FREE_CLOSE_PERSISTENT) - -PHPAPI int _php_stream_seek(php_stream *stream, zend_off_t offset, int whence); -#define php_stream_rewind(stream) _php_stream_seek((stream), 0L, SEEK_SET) -#define php_stream_seek(stream, offset, whence) _php_stream_seek((stream), (offset), (whence)) - -PHPAPI zend_off_t _php_stream_tell(php_stream *stream); -#define php_stream_tell(stream) _php_stream_tell((stream)) - -PHPAPI ssize_t _php_stream_read(php_stream *stream, char *buf, size_t count); -#define php_stream_read(stream, buf, count) _php_stream_read((stream), (buf), (count)) - -PHPAPI zend_string *php_stream_read_to_str(php_stream *stream, size_t len); - -PHPAPI ssize_t _php_stream_write(php_stream *stream, const char *buf, size_t count); -#define php_stream_write_string(stream, str) _php_stream_write(stream, str, strlen(str)) -#define php_stream_write(stream, buf, count) _php_stream_write(stream, (buf), (count)) - -PHPAPI int _php_stream_fill_read_buffer(php_stream *stream, size_t size); -#define php_stream_fill_read_buffer(stream, size) _php_stream_fill_read_buffer((stream), (size)) - -PHPAPI ssize_t _php_stream_printf(php_stream *stream, const char *fmt, ...) PHP_ATTRIBUTE_FORMAT(printf, 2, 3); - -/* php_stream_printf macro & function require */ -#define php_stream_printf _php_stream_printf - -PHPAPI int _php_stream_eof(php_stream *stream); -#define php_stream_eof(stream) _php_stream_eof((stream)) - -PHPAPI int _php_stream_getc(php_stream *stream); -#define php_stream_getc(stream) _php_stream_getc((stream)) - -PHPAPI int _php_stream_putc(php_stream *stream, int c); -#define php_stream_putc(stream, c) _php_stream_putc((stream), (c)) - -PHPAPI int _php_stream_flush(php_stream *stream, int closing); -#define php_stream_flush(stream) _php_stream_flush((stream), 0) - -PHPAPI char *_php_stream_get_line(php_stream *stream, char *buf, size_t maxlen, size_t *returned_len); -#define php_stream_gets(stream, buf, maxlen) _php_stream_get_line((stream), (buf), (maxlen), NULL) - -#define php_stream_get_line(stream, buf, maxlen, retlen) _php_stream_get_line((stream), (buf), (maxlen), (retlen)) -PHPAPI zend_string *php_stream_get_record(php_stream *stream, size_t maxlen, const char *delim, size_t delim_len); - -/* CAREFUL! this is equivalent to puts NOT fputs! */ -PHPAPI int _php_stream_puts(php_stream *stream, const char *buf); -#define php_stream_puts(stream, buf) _php_stream_puts((stream), (buf)) - -PHPAPI int _php_stream_stat(php_stream *stream, php_stream_statbuf *ssb); -#define php_stream_stat(stream, ssb) _php_stream_stat((stream), (ssb)) - -PHPAPI int _php_stream_stat_path(const char *path, int flags, php_stream_statbuf *ssb, php_stream_context *context); -#define php_stream_stat_path(path, ssb) _php_stream_stat_path((path), 0, (ssb), NULL) -#define php_stream_stat_path_ex(path, flags, ssb, context) _php_stream_stat_path((path), (flags), (ssb), (context)) - -PHPAPI int _php_stream_mkdir(const char *path, int mode, int options, php_stream_context *context); -#define php_stream_mkdir(path, mode, options, context) _php_stream_mkdir(path, mode, options, context) - -PHPAPI int _php_stream_rmdir(const char *path, int options, php_stream_context *context); -#define php_stream_rmdir(path, options, context) _php_stream_rmdir(path, options, context) - -PHPAPI php_stream *_php_stream_opendir(const char *path, int options, php_stream_context *context STREAMS_DC); -#define php_stream_opendir(path, options, context) _php_stream_opendir((path), (options), (context) STREAMS_CC) -PHPAPI php_stream_dirent *_php_stream_readdir(php_stream *dirstream, php_stream_dirent *ent); -#define php_stream_readdir(dirstream, dirent) _php_stream_readdir((dirstream), (dirent)) -#define php_stream_closedir(dirstream) php_stream_close((dirstream)) -#define php_stream_rewinddir(dirstream) php_stream_rewind((dirstream)) - -PHPAPI int php_stream_dirent_alphasort(const zend_string **a, const zend_string **b); -PHPAPI int php_stream_dirent_alphasortr(const zend_string **a, const zend_string **b); - -PHPAPI int _php_stream_scandir(const char *dirname, zend_string **namelist[], int flags, php_stream_context *context, - int (*compare) (const zend_string **a, const zend_string **b)); -#define php_stream_scandir(dirname, namelist, context, compare) _php_stream_scandir((dirname), (namelist), 0, (context), (compare)) - -PHPAPI int _php_stream_set_option(php_stream *stream, int option, int value, void *ptrparam); -#define php_stream_set_option(stream, option, value, ptrvalue) _php_stream_set_option((stream), (option), (value), (ptrvalue)) - -#define php_stream_set_chunk_size(stream, size) _php_stream_set_option((stream), PHP_STREAM_OPTION_SET_CHUNK_SIZE, (size), NULL) - -END_EXTERN_C() - - -/* Flags for mkdir method in wrapper ops */ -#define PHP_STREAM_MKDIR_RECURSIVE 1 -/* define REPORT ERRORS 8 (below) */ - -/* Flags for rmdir method in wrapper ops */ -/* define REPORT_ERRORS 8 (below) */ - -/* Flags for url_stat method in wrapper ops */ -#define PHP_STREAM_URL_STAT_LINK 1 -#define PHP_STREAM_URL_STAT_QUIET 2 -#define PHP_STREAM_URL_STAT_NOCACHE 4 - -/* change the blocking mode of stream: value == 1 => blocking, value == 0 => non-blocking. */ -#define PHP_STREAM_OPTION_BLOCKING 1 - -/* change the buffering mode of stream. value is a PHP_STREAM_BUFFER_XXXX value, ptrparam is a ptr to a size_t holding - * the required buffer size */ -#define PHP_STREAM_OPTION_READ_BUFFER 2 -#define PHP_STREAM_OPTION_WRITE_BUFFER 3 - -#define PHP_STREAM_BUFFER_NONE 0 /* unbuffered */ -#define PHP_STREAM_BUFFER_LINE 1 /* line buffered */ -#define PHP_STREAM_BUFFER_FULL 2 /* fully buffered */ - -/* set the timeout duration for reads on the stream. ptrparam is a pointer to a struct timeval * */ -#define PHP_STREAM_OPTION_READ_TIMEOUT 4 -#define PHP_STREAM_OPTION_SET_CHUNK_SIZE 5 - -/* set or release lock on a stream */ -#define PHP_STREAM_OPTION_LOCKING 6 - -/* whether or not locking is supported */ -#define PHP_STREAM_LOCK_SUPPORTED 1 - -#define php_stream_supports_lock(stream) (_php_stream_set_option((stream), PHP_STREAM_OPTION_LOCKING, 0, (void *) PHP_STREAM_LOCK_SUPPORTED) == 0 ? 1 : 0) -#define php_stream_lock(stream, mode) _php_stream_set_option((stream), PHP_STREAM_OPTION_LOCKING, (mode), (void *) NULL) - -/* option code used by the php_stream_xport_XXX api */ -#define PHP_STREAM_OPTION_XPORT_API 7 /* see php_stream_transport.h */ -#define PHP_STREAM_OPTION_CRYPTO_API 8 /* see php_stream_transport.h */ -#define PHP_STREAM_OPTION_MMAP_API 9 /* see php_stream_mmap.h */ -#define PHP_STREAM_OPTION_TRUNCATE_API 10 - -#define PHP_STREAM_TRUNCATE_SUPPORTED 0 -#define PHP_STREAM_TRUNCATE_SET_SIZE 1 /* ptrparam is a pointer to a size_t */ - -#define php_stream_truncate_supported(stream) (_php_stream_set_option((stream), PHP_STREAM_OPTION_TRUNCATE_API, PHP_STREAM_TRUNCATE_SUPPORTED, NULL) == PHP_STREAM_OPTION_RETURN_OK ? 1 : 0) - -BEGIN_EXTERN_C() -PHPAPI int _php_stream_truncate_set_size(php_stream *stream, size_t newsize); -#define php_stream_truncate_set_size(stream, size) _php_stream_truncate_set_size((stream), (size)) -END_EXTERN_C() - -#define PHP_STREAM_OPTION_META_DATA_API 11 /* ptrparam is a zval* to which to add meta data information */ -#define php_stream_populate_meta_data(stream, zv) (_php_stream_set_option((stream), PHP_STREAM_OPTION_META_DATA_API, 0, zv) == PHP_STREAM_OPTION_RETURN_OK ? 1 : 0) - -/* Check if the stream is still "live"; for sockets/pipes this means the socket - * is still connected; for files, this does not really have meaning */ -#define PHP_STREAM_OPTION_CHECK_LIVENESS 12 /* no parameters */ - -/* Enable/disable blocking reads on anonymous pipes on Windows. */ -#define PHP_STREAM_OPTION_PIPE_BLOCKING 13 - -#define PHP_STREAM_OPTION_RETURN_OK 0 /* option set OK */ -#define PHP_STREAM_OPTION_RETURN_ERR -1 /* problem setting option */ -#define PHP_STREAM_OPTION_RETURN_NOTIMPL -2 /* underlying stream does not implement; streams can handle it instead */ - -/* copy up to maxlen bytes from src to dest. If maxlen is PHP_STREAM_COPY_ALL, - * copy until eof(src). */ -#define PHP_STREAM_COPY_ALL ((size_t)-1) - -BEGIN_EXTERN_C() -ZEND_ATTRIBUTE_DEPRECATED -PHPAPI size_t _php_stream_copy_to_stream(php_stream *src, php_stream *dest, size_t maxlen STREAMS_DC); -#define php_stream_copy_to_stream(src, dest, maxlen) _php_stream_copy_to_stream((src), (dest), (maxlen) STREAMS_CC) -PHPAPI int _php_stream_copy_to_stream_ex(php_stream *src, php_stream *dest, size_t maxlen, size_t *len STREAMS_DC); -#define php_stream_copy_to_stream_ex(src, dest, maxlen, len) _php_stream_copy_to_stream_ex((src), (dest), (maxlen), (len) STREAMS_CC) - - -/* read all data from stream and put into a buffer. Caller must free buffer - * when done. */ -PHPAPI zend_string *_php_stream_copy_to_mem(php_stream *src, size_t maxlen, int persistent STREAMS_DC); -#define php_stream_copy_to_mem(src, maxlen, persistent) _php_stream_copy_to_mem((src), (maxlen), (persistent) STREAMS_CC) - -/* output all data from a stream */ -PHPAPI ssize_t _php_stream_passthru(php_stream * src STREAMS_DC); -#define php_stream_passthru(stream) _php_stream_passthru((stream) STREAMS_CC) -END_EXTERN_C() - -#include "streams/php_stream_transport.h" -#include "streams/php_stream_plain_wrapper.h" -#include "streams/php_stream_glob_wrapper.h" -#include "streams/php_stream_userspace.h" -#include "streams/php_stream_mmap.h" - -/* coerce the stream into some other form */ -/* cast as a stdio FILE * */ -#define PHP_STREAM_AS_STDIO 0 -/* cast as a POSIX fd or socketd */ -#define PHP_STREAM_AS_FD 1 -/* cast as a socketd */ -#define PHP_STREAM_AS_SOCKETD 2 -/* cast as fd/socket for select purposes */ -#define PHP_STREAM_AS_FD_FOR_SELECT 3 - -/* try really, really hard to make sure the cast happens (avoid using this flag if possible) */ -#define PHP_STREAM_CAST_TRY_HARD 0x80000000 -#define PHP_STREAM_CAST_RELEASE 0x40000000 /* stream becomes invalid on success */ -#define PHP_STREAM_CAST_INTERNAL 0x20000000 /* stream cast for internal use */ -#define PHP_STREAM_CAST_MASK (PHP_STREAM_CAST_TRY_HARD | PHP_STREAM_CAST_RELEASE | PHP_STREAM_CAST_INTERNAL) -BEGIN_EXTERN_C() -PHPAPI int _php_stream_cast(php_stream *stream, int castas, void **ret, int show_err); -END_EXTERN_C() -/* use this to check if a stream can be cast into another form */ -#define php_stream_can_cast(stream, as) _php_stream_cast((stream), (as), NULL, 0) -#define php_stream_cast(stream, as, ret, show_err) _php_stream_cast((stream), (as), (ret), (show_err)) - -/* use this to check if a stream is of a particular type: - * PHPAPI int php_stream_is(php_stream *stream, php_stream_ops *ops); */ -#define php_stream_is(stream, anops) ((stream)->ops == anops) -#define PHP_STREAM_IS_STDIO &php_stream_stdio_ops - -#define php_stream_is_persistent(stream) (stream)->is_persistent - -/* Wrappers support */ - -#define IGNORE_PATH 0x00000000 -#define USE_PATH 0x00000001 -#define IGNORE_URL 0x00000002 -#define REPORT_ERRORS 0x00000008 - -/* If you don't need to write to the stream, but really need to - * be able to seek, use this flag in your options. */ -#define STREAM_MUST_SEEK 0x00000010 -/* If you are going to end up casting the stream into a FILE* or - * a socket, pass this flag and the streams/wrappers will not use - * buffering mechanisms while reading the headers, so that HTTP - * wrapped streams will work consistently. - * If you omit this flag, streams will use buffering and should end - * up working more optimally. - * */ -#define STREAM_WILL_CAST 0x00000020 - -/* this flag applies to php_stream_locate_url_wrapper */ -#define STREAM_LOCATE_WRAPPERS_ONLY 0x00000040 - -/* this flag is only used by include/require functions */ -#define STREAM_OPEN_FOR_INCLUDE 0x00000080 - -/* this flag tells streams to ONLY open urls */ -#define STREAM_USE_URL 0x00000100 - -/* this flag is used when only the headers from HTTP request are to be fetched */ -#define STREAM_ONLY_GET_HEADERS 0x00000200 - -/* don't apply open_basedir checks */ -#define STREAM_DISABLE_OPEN_BASEDIR 0x00000400 - -/* get (or create) a persistent version of the stream */ -#define STREAM_OPEN_PERSISTENT 0x00000800 - -/* use glob stream for directory open in plain files stream */ -#define STREAM_USE_GLOB_DIR_OPEN 0x00001000 - -/* don't check allow_url_fopen and allow_url_include */ -#define STREAM_DISABLE_URL_PROTECTION 0x00002000 - -/* assume the path passed in exists and is fully expanded, avoiding syscalls */ -#define STREAM_ASSUME_REALPATH 0x00004000 - -/* Allow blocking reads on anonymous pipes on Windows. */ -#define STREAM_USE_BLOCKING_PIPE 0x00008000 - -/* Antique - no longer has meaning */ -#define IGNORE_URL_WIN 0 - -int php_init_stream_wrappers(int module_number); -int php_shutdown_stream_wrappers(int module_number); -void php_shutdown_stream_hashes(void); -PHP_RSHUTDOWN_FUNCTION(streams); - -BEGIN_EXTERN_C() -PHPAPI int php_register_url_stream_wrapper(const char *protocol, const php_stream_wrapper *wrapper); -PHPAPI int php_unregister_url_stream_wrapper(const char *protocol); -PHPAPI int php_register_url_stream_wrapper_volatile(zend_string *protocol, php_stream_wrapper *wrapper); -PHPAPI int php_unregister_url_stream_wrapper_volatile(zend_string *protocol); -PHPAPI php_stream *_php_stream_open_wrapper_ex(const char *path, const char *mode, int options, zend_string **opened_path, php_stream_context *context STREAMS_DC); -PHPAPI php_stream_wrapper *php_stream_locate_url_wrapper(const char *path, const char **path_for_open, int options); -PHPAPI const char *php_stream_locate_eol(php_stream *stream, zend_string *buf); - -#define php_stream_open_wrapper(path, mode, options, opened) _php_stream_open_wrapper_ex((path), (mode), (options), (opened), NULL STREAMS_CC) -#define php_stream_open_wrapper_ex(path, mode, options, opened, context) _php_stream_open_wrapper_ex((path), (mode), (options), (opened), (context) STREAMS_CC) - -/* pushes an error message onto the stack for a wrapper instance */ -PHPAPI void php_stream_wrapper_log_error(const php_stream_wrapper *wrapper, int options, const char *fmt, ...) PHP_ATTRIBUTE_FORMAT(printf, 3, 4); - -#define PHP_STREAM_UNCHANGED 0 /* orig stream was seekable anyway */ -#define PHP_STREAM_RELEASED 1 /* newstream should be used; origstream is no longer valid */ -#define PHP_STREAM_FAILED 2 /* an error occurred while attempting conversion */ -#define PHP_STREAM_CRITICAL 3 /* an error occurred; origstream is in an unknown state; you should close origstream */ -#define PHP_STREAM_NO_PREFERENCE 0 -#define PHP_STREAM_PREFER_STDIO 1 -#define PHP_STREAM_FORCE_CONVERSION 2 -/* DO NOT call this on streams that are referenced by resources! */ -PHPAPI int _php_stream_make_seekable(php_stream *origstream, php_stream **newstream, int flags STREAMS_DC); -#define php_stream_make_seekable(origstream, newstream, flags) _php_stream_make_seekable((origstream), (newstream), (flags) STREAMS_CC) - -/* Give other modules access to the url_stream_wrappers_hash and stream_filters_hash */ -PHPAPI HashTable *_php_stream_get_url_stream_wrappers_hash(void); -#define php_stream_get_url_stream_wrappers_hash() _php_stream_get_url_stream_wrappers_hash() -PHPAPI HashTable *php_stream_get_url_stream_wrappers_hash_global(void); -PHPAPI HashTable *_php_get_stream_filters_hash(void); -#define php_get_stream_filters_hash() _php_get_stream_filters_hash() -PHPAPI HashTable *php_get_stream_filters_hash_global(void); -extern const php_stream_wrapper_ops *php_stream_user_wrapper_ops; -END_EXTERN_C() -#endif - -/* Definitions for user streams */ -#define PHP_STREAM_IS_URL 1 - -/* Stream metadata definitions */ -/* Create if referred resource does not exist */ -#define PHP_STREAM_META_TOUCH 1 -#define PHP_STREAM_META_OWNER_NAME 2 -#define PHP_STREAM_META_OWNER 3 -#define PHP_STREAM_META_GROUP_NAME 4 -#define PHP_STREAM_META_GROUP 5 -#define PHP_STREAM_META_ACCESS 6 diff --git a/7.4.27/mac/include/php/main/php_syslog.h b/7.4.27/mac/include/php/main/php_syslog.h deleted file mode 100644 index 2c49926..0000000 --- a/7.4.27/mac/include/php/main/php_syslog.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_SYSLOG_H -#define PHP_SYSLOG_H - -#include "php.h" - -#ifdef PHP_WIN32 -#include "win32/syslog.h" -#else -#include -#ifdef HAVE_SYSLOG_H -#include -#endif -#endif - -/* Syslog filters */ -#define PHP_SYSLOG_FILTER_ALL 0 -#define PHP_SYSLOG_FILTER_NO_CTRL 1 -#define PHP_SYSLOG_FILTER_ASCII 2 -#define PHP_SYSLOG_FILTER_RAW 3 - -BEGIN_EXTERN_C() -PHPAPI void php_syslog(int, const char *format, ...); -PHPAPI void php_openlog(const char *, int, int); -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/main/php_ticks.h b/7.4.27/mac/include/php/main/php_ticks.h deleted file mode 100644 index 5b2bb05..0000000 --- a/7.4.27/mac/include/php/main/php_ticks.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Stig Bakken | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_TICKS_H -#define PHP_TICKS_H - -int php_startup_ticks(void); -void php_deactivate_ticks(void); -void php_shutdown_ticks(void); -void php_run_ticks(int count); - -BEGIN_EXTERN_C() -PHPAPI void php_add_tick_function(void (*func)(int, void *), void *arg); -PHPAPI void php_remove_tick_function(void (*func)(int, void *), void * arg); -END_EXTERN_C() - -#endif diff --git a/7.4.27/mac/include/php/main/php_variables.h b/7.4.27/mac/include/php/main/php_variables.h deleted file mode 100644 index 7dc33d3..0000000 --- a/7.4.27/mac/include/php/main/php_variables.h +++ /dev/null @@ -1,48 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Authors: Rasmus Lerdorf | - | Zeev Suraski | - +----------------------------------------------------------------------+ -*/ - -#ifndef PHP_VARIABLES_H -#define PHP_VARIABLES_H - -#include "php.h" -#include "SAPI.h" - -#define PARSE_POST 0 -#define PARSE_GET 1 -#define PARSE_COOKIE 2 -#define PARSE_STRING 3 -#define PARSE_ENV 4 -#define PARSE_SERVER 5 -#define PARSE_SESSION 6 - -BEGIN_EXTERN_C() -void php_startup_auto_globals(void); -extern PHPAPI void (*php_import_environment_variables)(zval *array_ptr); -PHPAPI void php_register_variable(char *var, char *val, zval *track_vars_array); -/* binary-safe version */ -PHPAPI void php_register_variable_safe(char *var, char *val, size_t val_len, zval *track_vars_array); -PHPAPI void php_register_variable_ex(char *var, zval *val, zval *track_vars_array); - -PHPAPI void php_build_argv(char *s, zval *track_vars_array); -PHPAPI int php_hash_environment(void); -END_EXTERN_C() - -#define NUM_TRACK_VARS 6 - -#endif /* PHP_VARIABLES_H */ diff --git a/7.4.27/mac/include/php/main/php_version.h b/7.4.27/mac/include/php/main/php_version.h deleted file mode 100644 index 2dcbc24..0000000 --- a/7.4.27/mac/include/php/main/php_version.h +++ /dev/null @@ -1,8 +0,0 @@ -/* automatically generated by configure */ -/* edit configure.ac to change version number */ -#define PHP_MAJOR_VERSION 7 -#define PHP_MINOR_VERSION 4 -#define PHP_RELEASE_VERSION 27 -#define PHP_EXTRA_VERSION "" -#define PHP_VERSION "7.4.27" -#define PHP_VERSION_ID 70427 diff --git a/7.4.27/mac/include/php/main/rfc1867.h b/7.4.27/mac/include/php/main/rfc1867.h deleted file mode 100644 index bfb9bb5..0000000 --- a/7.4.27/mac/include/php/main/rfc1867.h +++ /dev/null @@ -1,89 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: | - +----------------------------------------------------------------------+ -*/ - -#ifndef RFC1867_H -#define RFC1867_H - -#include "SAPI.h" - -#define MULTIPART_CONTENT_TYPE "multipart/form-data" -#define MULTIPART_EVENT_START 0 -#define MULTIPART_EVENT_FORMDATA 1 -#define MULTIPART_EVENT_FILE_START 2 -#define MULTIPART_EVENT_FILE_DATA 3 -#define MULTIPART_EVENT_FILE_END 4 -#define MULTIPART_EVENT_END 5 - -typedef struct _multipart_event_start { - size_t content_length; -} multipart_event_start; - -typedef struct _multipart_event_formdata { - size_t post_bytes_processed; - char *name; - char **value; - size_t length; - size_t *newlength; -} multipart_event_formdata; - -typedef struct _multipart_event_file_start { - size_t post_bytes_processed; - char *name; - char **filename; -} multipart_event_file_start; - -typedef struct _multipart_event_file_data { - size_t post_bytes_processed; - zend_off_t offset; - char *data; - size_t length; - size_t *newlength; -} multipart_event_file_data; - -typedef struct _multipart_event_file_end { - size_t post_bytes_processed; - char *temp_filename; - int cancel_upload; -} multipart_event_file_end; - -typedef struct _multipart_event_end { - size_t post_bytes_processed; -} multipart_event_end; - -typedef int (*php_rfc1867_encoding_translation_t)(void); -typedef void (*php_rfc1867_get_detect_order_t)(const zend_encoding ***list, size_t *list_size); -typedef void (*php_rfc1867_set_input_encoding_t)(const zend_encoding *encoding); -typedef char* (*php_rfc1867_getword_t)(const zend_encoding *encoding, char **line, char stop); -typedef char* (*php_rfc1867_getword_conf_t)(const zend_encoding *encoding, char *str); -typedef char* (*php_rfc1867_basename_t)(const zend_encoding *encoding, char *str); - -SAPI_API SAPI_POST_HANDLER_FUNC(rfc1867_post_handler); - -PHPAPI void destroy_uploaded_files_hash(void); -void php_rfc1867_register_constants(void); -extern PHPAPI int (*php_rfc1867_callback)(unsigned int event, void *event_data, void **extra); - -SAPI_API void php_rfc1867_set_multibyte_callbacks( - php_rfc1867_encoding_translation_t encoding_translation, - php_rfc1867_get_detect_order_t get_detect_order, - php_rfc1867_set_input_encoding_t set_input_encoding, - php_rfc1867_getword_t getword, - php_rfc1867_getword_conf_t getword_conf, - php_rfc1867_basename_t basename); - -#endif /* RFC1867_H */ diff --git a/7.4.27/mac/include/php/main/snprintf.h b/7.4.27/mac/include/php/main/snprintf.h deleted file mode 100644 index 93d2034..0000000 --- a/7.4.27/mac/include/php/main/snprintf.h +++ /dev/null @@ -1,164 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Stig Sæther Bakken | - | Marcus Boerger | - +----------------------------------------------------------------------+ -*/ - -/* - -Comparing: sprintf, snprintf, slprintf, spprintf - -sprintf offers the ability to make a lot of failures since it does not know - the size of the buffer it uses. Therefore usage of sprintf often - results in possible entries for buffer overrun attacks. So please - use this version only if you are sure the call is safe. sprintf - always terminstes the buffer it writes to. - -snprintf knows the buffers size and will not write behind it. But you will - have to use either a static buffer or allocate a dynamic buffer - before being able to call the function. In other words you must - be sure that you really know the maximum size of the buffer required. - A bad thing is having a big maximum while in most cases you would - only need a small buffer. If the size of the resulting string is - longer or equal to the buffer size than the buffer is not terminated. - The function also returns the number of chars not including the - terminating \0 that were needed to fully comply to the print request. - -slprintf same as snprintf with the difference that it actually returns the - length printed not including the terminating \0. - -spprintf is the dynamical version of snprintf. It allocates the buffer in size - as needed and allows a maximum setting as snprintf (turn this feature - off by setting max_len to 0). spprintf is a little bit slower than - snprintf and offers possible memory leakes if you miss freeing the - buffer allocated by the function. Therefore this function should be - used where either no maximum is known or the maximum is much bigger - than normal size required. spprintf always terminates the buffer. - -Example: - - #define MAX 1024 | #define MAX 1024 | #define MAX 1024 - char buffer[MAX] | char buffer[MAX] | char *buffer; - | | - | | // No need to initialize buffer: - | | // spprintf ignores value of buffer - sprintf(buffer, "test"); | snprintf(buffer, MAX, "test"); | spprintf(&buffer, MAX, "text"); - | | if (!buffer) - | | return OUT_OF_MEMORY - // sprintf always terminates | // manual termination of | // spprintf allays terminates buffer - // buffer | // buffer *IS* required | - | buffer[MAX-1] = 0; | - action_with_buffer(buffer); | action_with_buffer(buffer); | action_with_buffer(buffer); - | | efree(buffer); -*/ - -#ifndef SNPRINTF_H -#define SNPRINTF_H - -typedef int bool_int; - -typedef enum { - NO = 0, YES = 1 -} boolean_e; - - -BEGIN_EXTERN_C() -PHPAPI int ap_php_slprintf(char *buf, size_t len, const char *format,...) ZEND_ATTRIBUTE_FORMAT(printf, 3, 4); -PHPAPI int ap_php_vslprintf(char *buf, size_t len, const char *format, va_list ap); -PHPAPI int ap_php_snprintf(char *, size_t, const char *, ...) ZEND_ATTRIBUTE_FORMAT(printf, 3, 4); -PHPAPI int ap_php_vsnprintf(char *, size_t, const char *, va_list ap); -PHPAPI int ap_php_vasprintf(char **buf, const char *format, va_list ap); -PHPAPI int ap_php_asprintf(char **buf, const char *format, ...) ZEND_ATTRIBUTE_FORMAT(printf, 2, 3); -PHPAPI char * php_gcvt(double value, int ndigit, char dec_point, char exponent, char *buf); -PHPAPI char * php_0cvt(double value, int ndigit, char dec_point, char exponent, char *buf); -PHPAPI char * php_conv_fp(char format, double num, - boolean_e add_dp, int precision, char dec_point, bool_int * is_negative, char *buf, size_t *len); - -END_EXTERN_C() - -#ifdef slprintf -#undef slprintf -#endif -#define slprintf ap_php_slprintf - -#ifdef vslprintf -#undef vslprintf -#endif -#define vslprintf ap_php_vslprintf - -#ifdef snprintf -#undef snprintf -#endif -#define snprintf ap_php_snprintf - -#ifdef vsnprintf -#undef vsnprintf -#endif -#define vsnprintf ap_php_vsnprintf - -#ifndef HAVE_VASPRINTF -#define vasprintf ap_php_vasprintf -#endif - -#ifndef HAVE_ASPRINTF -#define asprintf ap_php_asprintf -#endif - -typedef enum { - LM_STD = 0, -#if SIZEOF_INTMAX_T - LM_INTMAX_T, -#endif -#if SIZEOF_PTRDIFF_T - LM_PTRDIFF_T, -#endif -#if SIZEOF_LONG_LONG - LM_LONG_LONG, -#endif - LM_SIZE_T, - LM_LONG, - LM_LONG_DOUBLE, - LM_PHP_INT_T -} length_modifier_e; - -#ifdef PHP_WIN32 -# define WIDE_INT __int64 -#elif SIZEOF_LONG_LONG -# define WIDE_INT long long -#else -# define WIDE_INT long -#endif -typedef WIDE_INT wide_int; -typedef unsigned WIDE_INT u_wide_int; - -PHPAPI char * ap_php_conv_10(wide_int num, bool_int is_unsigned, - bool_int * is_negative, char *buf_end, size_t *len); - -PHPAPI char * ap_php_conv_p2(u_wide_int num, int nbits, - char format, char *buf_end, size_t *len); - -/* The maximum precision that's allowed for float conversion. Does not include - * decimal separator, exponent, sign, terminator. Currently does not affect - * the modes e/f, only g/k/H, as those have a different limit enforced at - * another level (see NDIG in php_conv_fp()). - * Applies to the formatting functions of both spprintf.c and snprintf.c, which - * use equally sized buffers of MAX_BUF_SIZE = 512 to hold the result of the - * call to php_gcvt(). - * This should be reasonably smaller than MAX_BUF_SIZE (I think MAX_BUF_SIZE - 9 - * should be enough, but let's give some more space) */ -#define FORMAT_CONV_MAX_PRECISION 500 - -#endif /* SNPRINTF_H */ diff --git a/7.4.27/mac/include/php/main/spprintf.h b/7.4.27/mac/include/php/main/spprintf.h deleted file mode 100644 index bbb7add..0000000 --- a/7.4.27/mac/include/php/main/spprintf.h +++ /dev/null @@ -1,36 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Marcus Boerger | - +----------------------------------------------------------------------+ - */ - -#ifndef SPPRINTF_H -#define SPPRINTF_H - -#include "snprintf.h" -#include "zend_smart_str_public.h" -#include "zend_smart_string_public.h" - -BEGIN_EXTERN_C() -PHPAPI void php_printf_to_smart_string(smart_string *buf, const char *format, va_list ap); -PHPAPI void php_printf_to_smart_str(smart_str *buf, const char *format, va_list ap); -END_EXTERN_C() - -#define spprintf zend_spprintf -#define strpprintf zend_strpprintf -#define vspprintf zend_vspprintf -#define vstrpprintf zend_vstrpprintf - -#endif /* SPPRINTF_H */ diff --git a/7.4.27/mac/include/php/main/streams/php_stream_context.h b/7.4.27/mac/include/php/main/streams/php_stream_context.h deleted file mode 100644 index c477dda..0000000 --- a/7.4.27/mac/include/php/main/streams/php_stream_context.h +++ /dev/null @@ -1,116 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Wez Furlong | - +----------------------------------------------------------------------+ - */ - -/* Stream context and status notification related definitions */ - -/* callback for status notifications */ -typedef void (*php_stream_notification_func)(php_stream_context *context, - int notifycode, int severity, - char *xmsg, int xcode, - size_t bytes_sofar, size_t bytes_max, - void * ptr); - -#define PHP_STREAM_NOTIFIER_PROGRESS 1 - -/* Attempt to fetch context from the zval passed, - If no context was passed, use the default context - The default context has not yet been created, do it now. */ -#define php_stream_context_from_zval(zcontext, nocontext) ( \ - (zcontext) ? zend_fetch_resource_ex(zcontext, "Stream-Context", php_le_stream_context()) : \ - (nocontext) ? NULL : \ - FG(default_context) ? FG(default_context) : \ - (FG(default_context) = php_stream_context_alloc()) ) - -#define php_stream_context_to_zval(context, zval) { ZVAL_RES(zval, (context)->res); GC_ADDREF((context)->res); } - -typedef struct _php_stream_notifier php_stream_notifier; - -struct _php_stream_notifier { - php_stream_notification_func func; - void (*dtor)(php_stream_notifier *notifier); - zval ptr; - int mask; - size_t progress, progress_max; /* position for progress notification */ -}; - -struct _php_stream_context { - php_stream_notifier *notifier; - zval options; /* hash keyed by wrapper family or specific wrapper */ - zend_resource *res; /* used for auto-cleanup */ -}; - -BEGIN_EXTERN_C() -PHPAPI void php_stream_context_free(php_stream_context *context); -PHPAPI php_stream_context *php_stream_context_alloc(void); -PHPAPI zval *php_stream_context_get_option(php_stream_context *context, - const char *wrappername, const char *optionname); -PHPAPI int php_stream_context_set_option(php_stream_context *context, - const char *wrappername, const char *optionname, zval *optionvalue); - -PHPAPI php_stream_notifier *php_stream_notification_alloc(void); -PHPAPI void php_stream_notification_free(php_stream_notifier *notifier); -END_EXTERN_C() - -/* not all notification codes are implemented */ -#define PHP_STREAM_NOTIFY_RESOLVE 1 -#define PHP_STREAM_NOTIFY_CONNECT 2 -#define PHP_STREAM_NOTIFY_AUTH_REQUIRED 3 -#define PHP_STREAM_NOTIFY_MIME_TYPE_IS 4 -#define PHP_STREAM_NOTIFY_FILE_SIZE_IS 5 -#define PHP_STREAM_NOTIFY_REDIRECTED 6 -#define PHP_STREAM_NOTIFY_PROGRESS 7 -#define PHP_STREAM_NOTIFY_COMPLETED 8 -#define PHP_STREAM_NOTIFY_FAILURE 9 -#define PHP_STREAM_NOTIFY_AUTH_RESULT 10 - -#define PHP_STREAM_NOTIFY_SEVERITY_INFO 0 -#define PHP_STREAM_NOTIFY_SEVERITY_WARN 1 -#define PHP_STREAM_NOTIFY_SEVERITY_ERR 2 - -BEGIN_EXTERN_C() -PHPAPI void php_stream_notification_notify(php_stream_context *context, int notifycode, int severity, - char *xmsg, int xcode, size_t bytes_sofar, size_t bytes_max, void * ptr); -PHPAPI php_stream_context *php_stream_context_set(php_stream *stream, php_stream_context *context); -END_EXTERN_C() - -#define php_stream_notify_info(context, code, xmsg, xcode) do { if ((context) && (context)->notifier) { \ - php_stream_notification_notify((context), (code), PHP_STREAM_NOTIFY_SEVERITY_INFO, \ - (xmsg), (xcode), 0, 0, NULL); } } while (0) - -#define php_stream_notify_progress(context, bsofar, bmax) do { if ((context) && (context)->notifier) { \ - php_stream_notification_notify((context), PHP_STREAM_NOTIFY_PROGRESS, PHP_STREAM_NOTIFY_SEVERITY_INFO, \ - NULL, 0, (bsofar), (bmax), NULL); } } while(0) - -#define php_stream_notify_progress_init(context, sofar, bmax) do { if ((context) && (context)->notifier) { \ - (context)->notifier->progress = (sofar); \ - (context)->notifier->progress_max = (bmax); \ - (context)->notifier->mask |= PHP_STREAM_NOTIFIER_PROGRESS; \ - php_stream_notify_progress((context), (sofar), (bmax)); } } while (0) - -#define php_stream_notify_progress_increment(context, dsofar, dmax) do { if ((context) && (context)->notifier && (context)->notifier->mask & PHP_STREAM_NOTIFIER_PROGRESS) { \ - (context)->notifier->progress += (dsofar); \ - (context)->notifier->progress_max += (dmax); \ - php_stream_notify_progress((context), (context)->notifier->progress, (context)->notifier->progress_max); } } while (0) - -#define php_stream_notify_file_size(context, file_size, xmsg, xcode) do { if ((context) && (context)->notifier) { \ - php_stream_notification_notify((context), PHP_STREAM_NOTIFY_FILE_SIZE_IS, PHP_STREAM_NOTIFY_SEVERITY_INFO, \ - (xmsg), (xcode), 0, (file_size), NULL); } } while(0) - -#define php_stream_notify_error(context, code, xmsg, xcode) do { if ((context) && (context)->notifier) {\ - php_stream_notification_notify((context), (code), PHP_STREAM_NOTIFY_SEVERITY_ERR, \ - (xmsg), (xcode), 0, 0, NULL); } } while(0) diff --git a/7.4.27/mac/include/php/main/streams/php_stream_filter_api.h b/7.4.27/mac/include/php/main/streams/php_stream_filter_api.h deleted file mode 100644 index 4d5760e..0000000 --- a/7.4.27/mac/include/php/main/streams/php_stream_filter_api.h +++ /dev/null @@ -1,151 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Wez Furlong | - | With suggestions from: | - | Moriyoshi Koizumi | - | Sara Golemon | - +----------------------------------------------------------------------+ - */ - -/* The filter API works on the principle of "Bucket-Brigades". This is - * partially inspired by the Apache 2 method of doing things, although - * it is intentionally a light-weight implementation. - * - * Each stream can have a chain of filters for reading and another for writing. - * - * When data is written to the stream, it is placed into a bucket and placed at - * the start of the input brigade. - * - * The first filter in the chain is invoked on the brigade and (depending on - * it's return value), the next filter is invoked and so on. - * */ - -#define PHP_STREAM_FILTER_READ 0x0001 -#define PHP_STREAM_FILTER_WRITE 0x0002 -#define PHP_STREAM_FILTER_ALL (PHP_STREAM_FILTER_READ | PHP_STREAM_FILTER_WRITE) - -typedef struct _php_stream_bucket php_stream_bucket; -typedef struct _php_stream_bucket_brigade php_stream_bucket_brigade; - -struct _php_stream_bucket { - php_stream_bucket *next, *prev; - php_stream_bucket_brigade *brigade; - - char *buf; - size_t buflen; - /* if non-zero, buf should be pefreed when the bucket is destroyed */ - uint8_t own_buf; - uint8_t is_persistent; - - /* destroy this struct when refcount falls to zero */ - int refcount; -}; - -struct _php_stream_bucket_brigade { - php_stream_bucket *head, *tail; -}; - -typedef enum { - PSFS_ERR_FATAL, /* error in data stream */ - PSFS_FEED_ME, /* filter needs more data; stop processing chain until more is available */ - PSFS_PASS_ON /* filter generated output buckets; pass them on to next in chain */ -} php_stream_filter_status_t; - -/* Buckets API. */ -BEGIN_EXTERN_C() -PHPAPI php_stream_bucket *php_stream_bucket_new(php_stream *stream, char *buf, size_t buflen, uint8_t own_buf, uint8_t buf_persistent); -PHPAPI int php_stream_bucket_split(php_stream_bucket *in, php_stream_bucket **left, php_stream_bucket **right, size_t length); -PHPAPI void php_stream_bucket_delref(php_stream_bucket *bucket); -#define php_stream_bucket_addref(bucket) (bucket)->refcount++ -PHPAPI void php_stream_bucket_prepend(php_stream_bucket_brigade *brigade, php_stream_bucket *bucket); -PHPAPI void php_stream_bucket_append(php_stream_bucket_brigade *brigade, php_stream_bucket *bucket); -PHPAPI void php_stream_bucket_unlink(php_stream_bucket *bucket); -PHPAPI php_stream_bucket *php_stream_bucket_make_writeable(php_stream_bucket *bucket); -END_EXTERN_C() - -#define PSFS_FLAG_NORMAL 0 /* regular read/write */ -#define PSFS_FLAG_FLUSH_INC 1 /* an incremental flush */ -#define PSFS_FLAG_FLUSH_CLOSE 2 /* final flush prior to closing */ - -typedef struct _php_stream_filter_ops { - - php_stream_filter_status_t (*filter)( - php_stream *stream, - php_stream_filter *thisfilter, - php_stream_bucket_brigade *buckets_in, - php_stream_bucket_brigade *buckets_out, - size_t *bytes_consumed, - int flags - ); - - void (*dtor)(php_stream_filter *thisfilter); - - const char *label; - -} php_stream_filter_ops; - -typedef struct _php_stream_filter_chain { - php_stream_filter *head, *tail; - - /* Owning stream */ - php_stream *stream; -} php_stream_filter_chain; - -struct _php_stream_filter { - const php_stream_filter_ops *fops; - zval abstract; /* for use by filter implementation */ - php_stream_filter *next; - php_stream_filter *prev; - int is_persistent; - - /* link into stream and chain */ - php_stream_filter_chain *chain; - - /* buffered buckets */ - php_stream_bucket_brigade buffer; - - /* filters are auto_registered when they're applied */ - zend_resource *res; -}; - -/* stack filter onto a stream */ -BEGIN_EXTERN_C() -PHPAPI void _php_stream_filter_prepend(php_stream_filter_chain *chain, php_stream_filter *filter); -PHPAPI int php_stream_filter_prepend_ex(php_stream_filter_chain *chain, php_stream_filter *filter); -PHPAPI void _php_stream_filter_append(php_stream_filter_chain *chain, php_stream_filter *filter); -PHPAPI int php_stream_filter_append_ex(php_stream_filter_chain *chain, php_stream_filter *filter); -PHPAPI int _php_stream_filter_flush(php_stream_filter *filter, int finish); -PHPAPI php_stream_filter *php_stream_filter_remove(php_stream_filter *filter, int call_dtor); -PHPAPI void php_stream_filter_free(php_stream_filter *filter); -PHPAPI php_stream_filter *_php_stream_filter_alloc(const php_stream_filter_ops *fops, void *abstract, uint8_t persistent STREAMS_DC); -END_EXTERN_C() -#define php_stream_filter_alloc(fops, thisptr, persistent) _php_stream_filter_alloc((fops), (thisptr), (persistent) STREAMS_CC) -#define php_stream_filter_alloc_rel(fops, thisptr, persistent) _php_stream_filter_alloc((fops), (thisptr), (persistent) STREAMS_REL_CC) -#define php_stream_filter_prepend(chain, filter) _php_stream_filter_prepend((chain), (filter)) -#define php_stream_filter_append(chain, filter) _php_stream_filter_append((chain), (filter)) -#define php_stream_filter_flush(filter, finish) _php_stream_filter_flush((filter), (finish)) - -#define php_stream_is_filtered(stream) ((stream)->readfilters.head || (stream)->writefilters.head) - -typedef struct _php_stream_filter_factory { - php_stream_filter *(*create_filter)(const char *filtername, zval *filterparams, uint8_t persistent); -} php_stream_filter_factory; - -BEGIN_EXTERN_C() -PHPAPI int php_stream_filter_register_factory(const char *filterpattern, const php_stream_filter_factory *factory); -PHPAPI int php_stream_filter_unregister_factory(const char *filterpattern); -PHPAPI int php_stream_filter_register_factory_volatile(zend_string *filterpattern, const php_stream_filter_factory *factory); -PHPAPI php_stream_filter *php_stream_filter_create(const char *filtername, zval *filterparams, uint8_t persistent); -END_EXTERN_C() diff --git a/7.4.27/mac/include/php/main/streams/php_stream_glob_wrapper.h b/7.4.27/mac/include/php/main/streams/php_stream_glob_wrapper.h deleted file mode 100644 index 644e5ab..0000000 --- a/7.4.27/mac/include/php/main/streams/php_stream_glob_wrapper.h +++ /dev/null @@ -1,33 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Marcus Boerger | - +----------------------------------------------------------------------+ - */ - -PHPAPI extern const php_stream_wrapper php_glob_stream_wrapper; -PHPAPI extern const php_stream_ops php_glob_stream_ops; - -BEGIN_EXTERN_C() - -PHPAPI char* _php_glob_stream_get_path(php_stream *stream, size_t *plen STREAMS_DC); -#define php_glob_stream_get_path(stream, plen) _php_glob_stream_get_path((stream), (plen) STREAMS_CC) - -PHPAPI char* _php_glob_stream_get_pattern(php_stream *stream, size_t *plen STREAMS_DC); -#define php_glob_stream_get_pattern(stream, plen) _php_glob_stream_get_pattern((stream), (plen) STREAMS_CC) - -PHPAPI int _php_glob_stream_get_count(php_stream *stream, int *pflags STREAMS_DC); -#define php_glob_stream_get_count(stream, pflags) _php_glob_stream_get_count((stream), (pflags) STREAMS_CC) - -END_EXTERN_C() diff --git a/7.4.27/mac/include/php/main/streams/php_stream_mmap.h b/7.4.27/mac/include/php/main/streams/php_stream_mmap.h deleted file mode 100644 index 40288cc..0000000 --- a/7.4.27/mac/include/php/main/streams/php_stream_mmap.h +++ /dev/null @@ -1,79 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Wez Furlong | - +----------------------------------------------------------------------+ -*/ - -/* Memory Mapping interface for streams. - * The intention is to provide a uniform interface over the most common - * operations that are used within PHP itself, rather than a complete - * API for all memory mapping needs. - * - * ATM, we support only mmap(), but win32 memory mapping support will - * follow soon. - * */ - -typedef enum { - /* Does the stream support mmap ? */ - PHP_STREAM_MMAP_SUPPORTED, - /* Request a range and offset to be mapped; - * while mapped, you MUST NOT use any read/write functions - * on the stream (win9x compatibility) */ - PHP_STREAM_MMAP_MAP_RANGE, - /* Unmap the last range that was mapped for the stream */ - PHP_STREAM_MMAP_UNMAP -} php_stream_mmap_operation_t; - -typedef enum { - PHP_STREAM_MAP_MODE_READONLY, - PHP_STREAM_MAP_MODE_READWRITE, - PHP_STREAM_MAP_MODE_SHARED_READONLY, - PHP_STREAM_MAP_MODE_SHARED_READWRITE -} php_stream_mmap_access_t; - -typedef struct { - /* requested offset and length. - * If length is 0, the whole file is mapped */ - size_t offset; - size_t length; - - php_stream_mmap_access_t mode; - - /* returned mapped address */ - char *mapped; - -} php_stream_mmap_range; - -#define PHP_STREAM_MMAP_ALL 0 - -#define PHP_STREAM_MMAP_MAX (512 * 1024 * 1024) - -#define php_stream_mmap_supported(stream) (_php_stream_set_option((stream), PHP_STREAM_OPTION_MMAP_API, PHP_STREAM_MMAP_SUPPORTED, NULL) == 0 ? 1 : 0) - -/* Returns 1 if the stream in its current state can be memory mapped, - * 0 otherwise */ -#define php_stream_mmap_possible(stream) (!php_stream_is_filtered((stream)) && php_stream_mmap_supported((stream))) - -BEGIN_EXTERN_C() -PHPAPI char *_php_stream_mmap_range(php_stream *stream, size_t offset, size_t length, php_stream_mmap_access_t mode, size_t *mapped_len); -#define php_stream_mmap_range(stream, offset, length, mode, mapped_len) _php_stream_mmap_range((stream), (offset), (length), (mode), (mapped_len)) - -/* un-maps the last mapped range */ -PHPAPI int _php_stream_mmap_unmap(php_stream *stream); -#define php_stream_mmap_unmap(stream) _php_stream_mmap_unmap((stream)) - -PHPAPI int _php_stream_mmap_unmap_ex(php_stream *stream, zend_off_t readden); -#define php_stream_mmap_unmap_ex(stream, readden) _php_stream_mmap_unmap_ex((stream), (readden)) -END_EXTERN_C() diff --git a/7.4.27/mac/include/php/main/streams/php_stream_plain_wrapper.h b/7.4.27/mac/include/php/main/streams/php_stream_plain_wrapper.h deleted file mode 100644 index 4af8b86..0000000 --- a/7.4.27/mac/include/php/main/streams/php_stream_plain_wrapper.h +++ /dev/null @@ -1,58 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Wez Furlong | - +----------------------------------------------------------------------+ - */ - -/* definitions for the plain files wrapper */ - -/* operations for a plain file; use the php_stream_fopen_XXX funcs below */ -PHPAPI extern php_stream_ops php_stream_stdio_ops; -PHPAPI extern /*const*/ php_stream_wrapper php_plain_files_wrapper; - -BEGIN_EXTERN_C() - -/* like fopen, but returns a stream */ -PHPAPI php_stream *_php_stream_fopen(const char *filename, const char *mode, zend_string **opened_path, int options STREAMS_DC); -#define php_stream_fopen(filename, mode, opened) _php_stream_fopen((filename), (mode), (opened), 0 STREAMS_CC) - -PHPAPI php_stream *_php_stream_fopen_with_path(const char *filename, const char *mode, const char *path, zend_string **opened_path, int options STREAMS_DC); -#define php_stream_fopen_with_path(filename, mode, path, opened) _php_stream_fopen_with_path((filename), (mode), (path), (opened), 0 STREAMS_CC) - -PHPAPI php_stream *_php_stream_fopen_from_file(FILE *file, const char *mode STREAMS_DC); -#define php_stream_fopen_from_file(file, mode) _php_stream_fopen_from_file((file), (mode) STREAMS_CC) - -PHPAPI php_stream *_php_stream_fopen_from_fd(int fd, const char *mode, const char *persistent_id STREAMS_DC); -#define php_stream_fopen_from_fd(fd, mode, persistent_id) _php_stream_fopen_from_fd((fd), (mode), (persistent_id) STREAMS_CC) - -PHPAPI php_stream *_php_stream_fopen_from_pipe(FILE *file, const char *mode STREAMS_DC); -#define php_stream_fopen_from_pipe(file, mode) _php_stream_fopen_from_pipe((file), (mode) STREAMS_CC) - -PHPAPI php_stream *_php_stream_fopen_tmpfile(int dummy STREAMS_DC); -#define php_stream_fopen_tmpfile() _php_stream_fopen_tmpfile(0 STREAMS_CC) - -PHPAPI php_stream *_php_stream_fopen_temporary_file(const char *dir, const char *pfx, zend_string **opened_path STREAMS_DC); -#define php_stream_fopen_temporary_file(dir, pfx, opened_path) _php_stream_fopen_temporary_file((dir), (pfx), (opened_path) STREAMS_CC) - -/* This is a utility API for extensions that are opening a stream, converting it - * to a FILE* and then closing it again. Be warned that fileno() on the result - * will most likely fail on systems with fopencookie. */ -PHPAPI FILE * _php_stream_open_wrapper_as_file(char * path, char * mode, int options, zend_string **opened_path STREAMS_DC); -#define php_stream_open_wrapper_as_file(path, mode, options, opened_path) _php_stream_open_wrapper_as_file((path), (mode), (options), (opened_path) STREAMS_CC) - -/* parse standard "fopen" modes into open() flags */ -PHPAPI int php_stream_parse_fopen_modes(const char *mode, int *open_flags); - -END_EXTERN_C() diff --git a/7.4.27/mac/include/php/main/streams/php_stream_transport.h b/7.4.27/mac/include/php/main/streams/php_stream_transport.h deleted file mode 100644 index f49d9c7..0000000 --- a/7.4.27/mac/include/php/main/streams/php_stream_transport.h +++ /dev/null @@ -1,218 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Wez Furlong | - +----------------------------------------------------------------------+ -*/ - -#ifdef PHP_WIN32 -#include "config.w32.h" -#include -#endif - -#if HAVE_SYS_SOCKET_H -# include -#endif - -typedef php_stream *(php_stream_transport_factory_func)(const char *proto, size_t protolen, - const char *resourcename, size_t resourcenamelen, - const char *persistent_id, int options, int flags, - struct timeval *timeout, - php_stream_context *context STREAMS_DC); -typedef php_stream_transport_factory_func *php_stream_transport_factory; - -BEGIN_EXTERN_C() -PHPAPI int php_stream_xport_register(const char *protocol, php_stream_transport_factory factory); -PHPAPI int php_stream_xport_unregister(const char *protocol); - -#define STREAM_XPORT_CLIENT 0 -#define STREAM_XPORT_SERVER 1 - -#define STREAM_XPORT_CONNECT 2 -#define STREAM_XPORT_BIND 4 -#define STREAM_XPORT_LISTEN 8 -#define STREAM_XPORT_CONNECT_ASYNC 16 - -/* Open a client or server socket connection */ -PHPAPI php_stream *_php_stream_xport_create(const char *name, size_t namelen, int options, - int flags, const char *persistent_id, - struct timeval *timeout, - php_stream_context *context, - zend_string **error_string, - int *error_code - STREAMS_DC); - -#define php_stream_xport_create(name, namelen, options, flags, persistent_id, timeout, context, estr, ecode) \ - _php_stream_xport_create(name, namelen, options, flags, persistent_id, timeout, context, estr, ecode STREAMS_CC) - -/* Bind the stream to a local address */ -PHPAPI int php_stream_xport_bind(php_stream *stream, - const char *name, size_t namelen, - zend_string **error_text - ); - -/* Connect to a remote address */ -PHPAPI int php_stream_xport_connect(php_stream *stream, - const char *name, size_t namelen, - int asynchronous, - struct timeval *timeout, - zend_string **error_text, - int *error_code - ); - -/* Prepare to listen */ -PHPAPI int php_stream_xport_listen(php_stream *stream, - int backlog, - zend_string **error_text - ); - -/* Get the next client and their address as a string, or the underlying address - * structure. You must efree either of these if you request them */ -PHPAPI int php_stream_xport_accept(php_stream *stream, php_stream **client, - zend_string **textaddr, - void **addr, socklen_t *addrlen, - struct timeval *timeout, - zend_string **error_text - ); - -/* Get the name of either the socket or it's peer */ -PHPAPI int php_stream_xport_get_name(php_stream *stream, int want_peer, - zend_string **textaddr, - void **addr, socklen_t *addrlen - ); - -enum php_stream_xport_send_recv_flags { - STREAM_OOB = 1, - STREAM_PEEK = 2 -}; - -/* Similar to recv() system call; read data from the stream, optionally - * peeking, optionally retrieving OOB data */ -PHPAPI int php_stream_xport_recvfrom(php_stream *stream, char *buf, size_t buflen, - int flags, void **addr, socklen_t *addrlen, - zend_string **textaddr); - -/* Similar to send() system call; send data to the stream, optionally - * sending it as OOB data */ -PHPAPI int php_stream_xport_sendto(php_stream *stream, const char *buf, size_t buflen, - int flags, void *addr, socklen_t addrlen); - -typedef enum { - STREAM_SHUT_RD, - STREAM_SHUT_WR, - STREAM_SHUT_RDWR -} stream_shutdown_t; - -/* Similar to shutdown() system call; shut down part of a full-duplex - * connection */ -PHPAPI int php_stream_xport_shutdown(php_stream *stream, stream_shutdown_t how); -END_EXTERN_C() - - -/* Structure definition for the set_option interface that the above functions wrap */ - -typedef struct _php_stream_xport_param { - enum { - STREAM_XPORT_OP_BIND, STREAM_XPORT_OP_CONNECT, - STREAM_XPORT_OP_LISTEN, STREAM_XPORT_OP_ACCEPT, - STREAM_XPORT_OP_CONNECT_ASYNC, - STREAM_XPORT_OP_GET_NAME, - STREAM_XPORT_OP_GET_PEER_NAME, - STREAM_XPORT_OP_RECV, - STREAM_XPORT_OP_SEND, - STREAM_XPORT_OP_SHUTDOWN - } op; - unsigned int want_addr:1; - unsigned int want_textaddr:1; - unsigned int want_errortext:1; - unsigned int how:2; - - struct { - char *name; - size_t namelen; - struct timeval *timeout; - struct sockaddr *addr; - char *buf; - size_t buflen; - socklen_t addrlen; - int backlog; - int flags; - } inputs; - struct { - php_stream *client; - struct sockaddr *addr; - socklen_t addrlen; - zend_string *textaddr; - zend_string *error_text; - int returncode; - int error_code; - } outputs; -} php_stream_xport_param; - -/* Because both client and server streams use the same mechanisms - for encryption we use the LSB to denote clients. -*/ -typedef enum { - STREAM_CRYPTO_METHOD_SSLv2_CLIENT = (1 << 1 | 1), - STREAM_CRYPTO_METHOD_SSLv3_CLIENT = (1 << 2 | 1), - /* v23 no longer negotiates SSL2 or SSL3 */ - STREAM_CRYPTO_METHOD_SSLv23_CLIENT = ((1 << 3) | (1 << 4) | (1 << 5) | 1), - STREAM_CRYPTO_METHOD_TLSv1_0_CLIENT = (1 << 3 | 1), - STREAM_CRYPTO_METHOD_TLSv1_1_CLIENT = (1 << 4 | 1), - STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT = (1 << 5 | 1), - STREAM_CRYPTO_METHOD_TLSv1_3_CLIENT = (1 << 6 | 1), - /* TLS equates to TLS_ANY as of PHP 7.2 */ - STREAM_CRYPTO_METHOD_TLS_CLIENT = ((1 << 3) | (1 << 4) | (1 << 5) | (1 << 6) | 1), - STREAM_CRYPTO_METHOD_TLS_ANY_CLIENT = ((1 << 3) | (1 << 4) | (1 << 5) | (1 << 6) | 1), - STREAM_CRYPTO_METHOD_ANY_CLIENT = ((1 << 1) | (1 << 2) | (1 << 3) | (1 << 4) | (1 << 5) | (1 << 6) | 1), - STREAM_CRYPTO_METHOD_SSLv2_SERVER = (1 << 1), - STREAM_CRYPTO_METHOD_SSLv3_SERVER = (1 << 2), - /* v23 no longer negotiates SSL2 or SSL3 */ - STREAM_CRYPTO_METHOD_SSLv23_SERVER = ((1 << 3) | (1 << 4) | (1 << 5) | (1 << 6)), - STREAM_CRYPTO_METHOD_TLSv1_0_SERVER = (1 << 3), - STREAM_CRYPTO_METHOD_TLSv1_1_SERVER = (1 << 4), - STREAM_CRYPTO_METHOD_TLSv1_2_SERVER = (1 << 5), - STREAM_CRYPTO_METHOD_TLSv1_3_SERVER = (1 << 6), - /* TLS equates to TLS_ANY as of PHP 7.2 */ - STREAM_CRYPTO_METHOD_TLS_SERVER = ((1 << 3) | (1 << 4) | (1 << 5) | (1 << 6)), - STREAM_CRYPTO_METHOD_TLS_ANY_SERVER = ((1 << 3) | (1 << 4) | (1 << 5) | (1 << 6)), - STREAM_CRYPTO_METHOD_ANY_SERVER = ((1 << 1) | (1 << 2) | (1 << 3) | (1 << 4) | (1 << 5) | (1 << 6)) -} php_stream_xport_crypt_method_t; - -/* These functions provide crypto support on the underlying transport */ - -BEGIN_EXTERN_C() -PHPAPI int php_stream_xport_crypto_setup(php_stream *stream, php_stream_xport_crypt_method_t crypto_method, php_stream *session_stream); -PHPAPI int php_stream_xport_crypto_enable(php_stream *stream, int activate); -END_EXTERN_C() - -typedef struct _php_stream_xport_crypto_param { - struct { - php_stream *session; - int activate; - php_stream_xport_crypt_method_t method; - } inputs; - struct { - int returncode; - } outputs; - enum { - STREAM_XPORT_CRYPTO_OP_SETUP, - STREAM_XPORT_CRYPTO_OP_ENABLE - } op; -} php_stream_xport_crypto_param; - -BEGIN_EXTERN_C() -PHPAPI HashTable *php_stream_xport_get_hash(void); -PHPAPI php_stream_transport_factory_func php_stream_generic_socket_factory; -END_EXTERN_C() diff --git a/7.4.27/mac/include/php/main/streams/php_stream_userspace.h b/7.4.27/mac/include/php/main/streams/php_stream_userspace.h deleted file mode 100644 index 389d591..0000000 --- a/7.4.27/mac/include/php/main/streams/php_stream_userspace.h +++ /dev/null @@ -1,23 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Wez Furlong | - +----------------------------------------------------------------------+ - */ - -/* for user-space streams */ -PHPAPI extern const php_stream_ops php_stream_userspace_ops; -PHPAPI extern const php_stream_ops php_stream_userspace_dir_ops; -#define PHP_STREAM_IS_USERSPACE &php_stream_userspace_ops -#define PHP_STREAM_IS_USERSPACE_DIR &php_stream_userspace_dir_ops diff --git a/7.4.27/mac/include/php/main/streams/php_streams_int.h b/7.4.27/mac/include/php/main/streams/php_streams_int.h deleted file mode 100644 index 1bc6fdc..0000000 --- a/7.4.27/mac/include/php/main/streams/php_streams_int.h +++ /dev/null @@ -1,67 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Wez Furlong | - +----------------------------------------------------------------------+ -*/ - -#if ZEND_DEBUG - -#define emalloc_rel_orig(size) \ - ( __php_stream_call_depth == 0 \ - ? _emalloc((size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_RELAY_CC) \ - : _emalloc((size) ZEND_FILE_LINE_CC ZEND_FILE_LINE_ORIG_RELAY_CC) ) - -#define erealloc_rel_orig(ptr, size) \ - ( __php_stream_call_depth == 0 \ - ? _erealloc((ptr), (size), 0 ZEND_FILE_LINE_CC ZEND_FILE_LINE_RELAY_CC) \ - : _erealloc((ptr), (size), 0 ZEND_FILE_LINE_CC ZEND_FILE_LINE_ORIG_RELAY_CC) ) - -#define pemalloc_rel_orig(size, persistent) ((persistent) ? malloc((size)) : emalloc_rel_orig((size))) -#define perealloc_rel_orig(ptr, size, persistent) ((persistent) ? realloc((ptr), (size)) : erealloc_rel_orig((ptr), (size))) -#else -# define pemalloc_rel_orig(size, persistent) pemalloc((size), (persistent)) -# define perealloc_rel_orig(ptr, size, persistent) perealloc((ptr), (size), (persistent)) -# define emalloc_rel_orig(size) emalloc((size)) -#endif - -#define STREAM_DEBUG 0 -#define STREAM_WRAPPER_PLAIN_FILES ((php_stream_wrapper*)-1) - -#ifndef MAP_FAILED -#define MAP_FAILED ((void *) -1) -#endif - -#define CHUNK_SIZE 8192 - -#ifdef PHP_WIN32 -# ifdef EWOULDBLOCK -# undef EWOULDBLOCK -# endif -# define EWOULDBLOCK WSAEWOULDBLOCK -# ifdef EMSGSIZE -# undef EMSGSIZE -# endif -# define EMSGSIZE WSAEMSGSIZE -#endif - -/* This functions transforms the first char to 'w' if it's not 'r', 'a' or 'w' - * and strips any subsequent chars except '+' and 'b'. - * Use this to sanitize stream->mode if you call e.g. fdopen, fopencookie or - * any other function that expects standard modes and you allow non-standard - * ones. result should be a char[5]. */ -void php_stream_mode_sanitize_fdopen_fopencookie(php_stream *stream, char *result); - -void php_stream_tidy_wrapper_error_log(php_stream_wrapper *wrapper); -void php_stream_display_wrapper_errors(php_stream_wrapper *wrapper, const char *path, const char *caption); diff --git a/7.4.27/mac/include/php/sapi/cli/cli.h b/7.4.27/mac/include/php/sapi/cli/cli.h deleted file mode 100644 index b4c2851..0000000 --- a/7.4.27/mac/include/php/sapi/cli/cli.h +++ /dev/null @@ -1,41 +0,0 @@ -/* - +----------------------------------------------------------------------+ - | PHP Version 7 | - +----------------------------------------------------------------------+ - | Copyright (c) The PHP Group | - +----------------------------------------------------------------------+ - | This source file is subject to version 3.01 of the PHP license, | - | that is bundled with this package in the file LICENSE, and is | - | available through the world-wide-web at the following url: | - | http://www.php.net/license/3_01.txt | - | If you did not receive a copy of the PHP license and are unable to | - | obtain it through the world-wide-web, please send a note to | - | license@php.net so we can mail you a copy immediately. | - +----------------------------------------------------------------------+ - | Author: Johannes Schlueter | - +----------------------------------------------------------------------+ -*/ - -#ifndef CLI_H -#define CLI_H - -#ifdef PHP_WIN32 -# define PHP_CLI_API __declspec(dllexport) -#elif defined(__GNUC__) && __GNUC__ >= 4 -# define PHP_CLI_API __attribute__ ((visibility("default"))) -#else -# define PHP_CLI_API -#endif - - -extern PHP_CLI_API ssize_t sapi_cli_single_write(const char *str, size_t str_length); - -typedef struct { - size_t (*cli_shell_write)(const char *str, size_t str_length); - size_t (*cli_shell_ub_write)(const char *str, size_t str_length); - int (*cli_shell_run)(void); -} cli_shell_callbacks_t; - -extern PHP_CLI_API cli_shell_callbacks_t *php_cli_get_shell_callbacks(); - -#endif /* CLI_H */

  • rr|6ns^*(7^&K)%EbnY{y@ki<_6BAijwEgXG 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 z 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%0AJwHFmkL)e{%3C8Kf=h00b1xuF-e zdv-;2%V@R~ab_UoX=$v#08^kSJ?mC8yUK<(=(rI6P#o`f<<(^4K=0N=zQY&xU+tjo0JVZQSb{F0Mu?X977ysl4 zCzSOB-shg*Ba|LBW|Zl-l=(i0P4ZLrMOsSm|L~~I5m#&OmP&qiwMlE?^o(+2N=g4f z_1@6E#+>T+{QAH~h;(Pz_ks3m?txW&fAid(Z53LTkSeU*=kct}yJonOd7;F2y;VXQ z{_>FTsRdT);tg!G<-!6|2k+|Ors*4PNQpNUt&(W4cB3-i@fgp{wF{V`dT9@GZn&-{_Ci)G5 zEgG4qL4)A**^X(Ub%@#(X@;SK&(d}cQqB)ia>P~4Xno24pR#5eAxUbL$tWUN=4RALqRe|eM*ja_Z5lTq+S z$}?tJiP*(yG+f))d9%Edm`r&tDLEMt{iJ|?GaFg$8-H=gW3=^qh^+6#&90h1c$MJ4 z>l6qj`4yp-_39<lnJ25cgy5?WL$yy z{N0$7#q?ZzmHluPw-1)vjc*Q?+X4wc!trTUA0kmQ97ngh9MLQJ92-s{>A>)%OhgpU z;Ws%SzUF+m-1#uy`7qP@5OO}$IUmM5AF7-WmXUywE1WCp$S?1b1DtG<0)AJF=@!PM z#!04Vu(H=FjlSd!Cy77eId zy|lQlkq(*t>JD$ITeY+prN4Of1GGdtX}YBDChbByI>#^g$0`x43zO!ittN-3c# zcb=ls{fpky)u%lWylvlKjkb z|9%jMm|gZutW-1x>ysgkzlqFYJxHI?j6#>;fJ$rt52Mk{jXJ4&3u;k*+4xqUCm z@t&Xh@KUVw1#7Z01QIH96#p_u@h@`}|1wAMFLMrP*597?vzdC(ZDirJLA^f@k3%mRJA==A}Y7yYcw-+x|7XyMkdaTz-Pcl1kKVEi&~ zKri_Y>Serz{y{?!E)C)4IC~jO@EzaQm-z>^YJ^{Ft*;0BQujiFB zy1jNeug$89=EnuRH0>X~q6D*0Vk~h8w^%Q&xuDE5=_#JCgml*LXYv%Knn!vI)g5Hn zYvz?}%VmY7<`DQ!OmrDw+AbS3uJK^8M!n5)mn`PVq0C}NSj^*OF+=)`F;5PC8bi{3 zLdFp4j8T4~uinrXWBVMJH$*KWG}S;~OAuOXqurf+1^Qw?pb~pve3=5HGa2HVB0dSr z$ss<0?@07Fnzj1Z(;rh|7EmJRflK-lvvG+_IS}0{V6IO(|ELI3_&2$x``ns@9`YRC zLcA&7N*$ZUt+hS_`w9+(=PqLid(LMF&yBEo?u4#9SK{!TTg6MjZ~p|Qnj>@gD*$&} zpDzRd-~T!A|8o{a;-b@A{Q7|)tj7P#lXbE}iJ2TH+hXsA60yD&;ZZGAvE51Q)cA6D zDV87&RQ9D0FPf`nbIfVNF%==h8=v6P5GNP88*dZo7xA4PD{8z=7-oB{kl%$(ywpVu z=>v%BlOv}HHowTV7JvUK*e@iK%ow;*pM_MLCsJ*tzh-%*RseLB{xl|xR%H{Qp&~$e zn!hGXaxVY02def8Ev1%XpPExG(7hK*lvmpjp3d1rfTRl3z-pl6t2UBo?hK&k#Eua_ zwc}EQ*YINsir?X!KVa=Ff6u8h^@ggwEI_qzMb-XLdx50`asCaXi`-$geR6ht8=Ib{ zdlAB4gi#9fGKc>&tg1La-4C}SV=?YXK%`p|o+w1w=O04yTtV_noai%iQ61`gQU}e! zY|_x&soRx9WbgmkWc~>xvQVHuAs6~%B>uV==yBv*gst^Yu4Wzn858*DuLf0fNNyni zA)`Mi`-+N(ow_cgl$QS1OOB;cG}ZW~Ta?m(q#Nv$V+hKXkJ@Jh56wUiJFOE9 zjR!>G+`MW=F{Tyy4;A;*-`S&0VhlOhq&Ej>mvb6LSH<)N!QDXo`*yF}^!NMn=$L z$qP};x7Dj*eH$v;^i;R6Rd4f5dd~NOr@k$mxD8t#PWsfmi2kCS!)HWYZMhprUc@(C zIv8E%)kdd|XFuSuuRrH&ThvEy^?m56Z&g2eQ4qRZ6`Nng_o7C;XzpkMJDxxtP+tCR z2H&;kdSpK5F&}09V=l495yFq1d4v;nSR}Ws#WWiB6=}tO-_6P#ISX^-t(ZnzVu7d& z0Y@BgVv1#s9PGPguQmW{WG(>cE549dEB2kE_0@-{{Sin-^NVoW*kH$#T9N4!vhWT1 z@iFQEMO#oox0qtD%Gz!z519~qa+|-i#S0r_yUlmqq>Q#QkqIFeabj&{se$r7*CH&n z*sX`S#z;*;NaZ$V%8k7(mt#rGa0^TnUVOubM{>Nq@dNJI04Pp7c0p238uY(I=U$L} zg~-d$zhe1^$fQu0{d%P3f4*U}VaFyG9}-$YlG zWO7FJH2<6%>4M>JyxP4d9AAM)q*)4Ti(9B4Z%)Rofvh)5_MEh9sF~u{PNz61k~bYg zKcQT5%@nV8yo3zxI^fE)?j}KnxWi`g+{(!bcw+;*!unux1{1M*akw2QD3gf(8mw3Z z2KERB&bwOX@Uq`nP?nhH^6ODr+yzn9qwG%NZDR73v|DU&q5j^&#v5~iDOPx4r!n#O zTrSbee@_WL2^7&My7(EV*G}uSno09AZ|j1Ur2p-P@iXEM2YEJ24y?^ml2t9(Rh1b!Udc6?*?B;eTB>N0z+sDeDN?dbQSa~!^$rs19kI`*UZLEt zGk2&lmvSAjA4&$~N42m;nHOURsf2a|m8>U#n$1@V>2r-JBEL?P7=JoY3FYE=v0SE* z?&$+q)&UOb4ghU2&}P%_fD*mn_hHJ8OWQ4dEKy;R0d5^)H@nmCBUxN55y*sib8vAb z*8~@56JuwQZYH-Aul^wZ4nHtnUYJxhP_JLuP%MU$f2dB9J=l6%HpZDa?!d z8Vbv_8whCgH2sMm#7Zp6^$FRvhU{gn?fQ38+&I}MyUbD)$o$=oqgv+q0A??9$f&oM z8DB+j%RCYPuObLp=4-%>fm;LlgmraiVGigICF=y4U$D$SzWj@p89n_dmKh|_ZcQ&3 zpvMOAcYF6Wej$s9TLr9cYwSp<8E@KIqS-xF=}+Wx$7ouzpB6a$tG1|tEXso9`)Z3? z3$7O=A7qQ_#_y63MDgLx6fPpNAnJJ*#_!WQ^k5-2i5_xg>3 zJLwXxc~T45KOvG~CDJr}CPB}wZ(uaKVVGA-k|s1vEzgdK?^>_+l2Q$%@CfM=t+z|) zsrF>p^?Gb55wIyhg@O@e{mdV|hJ$a2x$$+7fM?lXGet36+8lV9tOWKRx{M|2;5mLw zi&^I~uYWbgYn=RzRlyfkg`n?#bWkEFmJx-7S5$jIwiCBjPWVBfQW zJQ*NqIdv-Oebh@8jYNDli2^z<#QK*-^=}{sZs_l&Op1FC&rrc+uv+4Q{rMdW)I5;& zt}=Dq;x)#8kBb}%XL$9AceC~*#bUhRi}U4j)`xv3XML9JmaU3zY4xm+l{A&R+q|=Y z-KJh})d8-o9VcR3?+vWJJ&UPeQ<_MV8$MKcnoHP~!V_1&44Mwz>Y$0diw-L63!1`- zKq*Zd)0DZL%<~b zox>JEm1E=ZMUd(#RzpIPNJx2NN2PYLOs1I0z!#?oUr2j3Ih6@t)W8lk@P(*9u^NXj z$WV2Po7d=bYT%0*@WltAg_|u~$!abtV~IX?bvM4qiJ#8wUq@WeYj)(wD=S{7SD7_D z`NJ;Dd5x^6l3$*tMt*VDRAks&85#D9l3{~}46}AXv>khS zB@INDSLA)}@)A(eMdtl-yIS0>FLhtsii^J7;@$bKr zSz9IZzF=*WN3*s${3QDq%jzY(S_CtJ)O$^_`a=y}>#<0FYL0SRpk0l&*xbymqH@5x zkxEGG0IxSnR>cpbwPRAJ%6U2BF5z2jsB*et)oXBjwRc1D1~=6lc86S>v~wW=TetJ9 zd>SA`zxx?}#H5r#mvPG?z5`3HRj;9sv`Dzd2De0*-NOxRU?uFbe)3{D#HKxWy5*_H zhDwQTJ;Y}f5?jD6=H3?$rp3)L2Q@HJf}a6xkuqhKDlT@7GWDm96KEJ{zvs@)YHr*k zz2cR_p(AHJpF38`AO35U!PM+6pDW|XA3LIxO*Uq zgH+XXRCZ$*>Pnkg%ub)Azi6JXbx}W83;sl@1OAS=@&(~1R*yrMT*PC>(1D`;p@pcW zw7$mAXbZ1%jq>m5mz>LcxvZCb5AC*cohCKC8$*PT1+CIh7 zBraJwNYt4|f~eh8Q_J{+)$kH)+<5>PU1CIaB5Xf?mn(ZP=9w=ageo@sM?=3*#VSP= z$s%QN9k+jZ&kz$r#pmriOn^zFpuac%S-OW8^Z!o% zpJneHeX|Gup0w6Y;qe^a+X5BH!i|~>@3jd@d>-%pfE(aFZx`N^!=pncX+A67a|`dq zwtXqydxn{+(_F8-_kF>G1grGQd*$^0&gdgHfBiqme^a;qYx!?AT|Ro_zdqak_we76 zPGI~@Oy>^&#opmcO8D=heZBBsp~ZhoZ|{}=Ui_#F|0(@M=vykMMvN6B<=9l9T_qb- zlOm*EH>lFoDfoN-vHhv={M`MC7B`EJW`7E^KgEx{Kh5koS{|V-jVFG@{VD9*=ehI$ zHT%b zYyc-Av1J1oIRoMzD56|803q&$y(nK|Heds|Qr(C01#vIF(h>f19pQf|AIw{x`C`H* zMGD0M!e0CpTk!7}lMzZrPnBlhU;nivbB-tny{I(5d**)+$&B~_7=Mwg(wwxLEBA24 z?1xdIhf4F`mPkEiNv|Z+^uCacX$iPyw3M-ie_muCd>)$x2N z-P^>0fak>0_wy}%e}m@F)j7m_BP9372qgEcA|+ejzg?NS#UIWvjScyt@BfS&Laq&t zjnmUqh-#tioJrC2vuA(;`DUL14)R&)A^D<*y!X@>lVZ*p;7K)Kbq27=F;VXF8*}6g zaL^MM2aGxyxSqp@#u=bPZ)<(GP~zEl_roQ#@8vaJ^p7^;No#lV(4zTHe84|d|9@Ka z|0$NXoz?$0e<8CB5_BE4{x72Gd@fy4@j1kp83y*qD zyncjZ5HbGu!qCD^Mu8FVnWW7m3XIfAS@oauw`CDD0{u(mjt>YM>rY(Xj1rpf7%K?7 zmeTG6X)EhhR@)zg60Ei(78YSYq}~$ChwX5R4LQf7xW(iaD02|P(SYHD>B1A}&2L^4h;N!4aYyJn3O2~lVSCX{g79=T16*iWtv$6~=>n{V&pfvkmBMgA5hCb=3L zhEp=@ZEn{3NerZ4@9;O?+DGgiJW6cE{r{eg94Oec%8DHLrX4x3Ikt!h2s?6M7v^R^ zkpnMEp%!i5$31MGn+QT~9fY0}l>h)0`O|zojhwEa|YP(KwkL3kjtcQ+whjJQ^R0c(iJO?IJ|c@0o;wUHF+0VvAIiS&$!rA28VxH6V3#P{*6($f}+R z>Yw29A$C+wCUCp{1Sw~Q;_g3ZsxNZ3SE~{}2-QsXN_#r-*hJTxZ@=WSp2m>bVnG#M zPg8Qj0JI5{jo8^GKoL7tfa?{CsQ!+;*SAmmR?4fOPU6!eC-Hqc@&@%ze`h^ha5}Zx zMX-yskkV{@Y4uqm7O~kS{pa+DHxAMZv`;kub}Z!m{OM`X^lXyqKJ+w;C5qe1{E5k~ zuK3nB`Z|QZZ}(bbb3Xn90{~*&FfASJ`{# zK=vSBdmEMAzqHo}TqywHF{gA^Tj;X-(! z7YL&I$MQ~i;X4j5i~`!AzK5bXLH$rv-ysl8YHX;%qcAyaRFT4DRX6c8iBT&Yzm?Sr zkjkNg{G#hAWtSCG>nTCfk)BB-h$vz^?5;>|R(rW02J=la0yVJKo3SBegqEaEu^+SU z`-$9V%qp4GpJ_)H?v`}DX#N#28~cAcT<$k+t_=8ICw&6k1xeoWC+b~#Tfo{tNU~%< z+huJa!eDQ4FWoN5d!bnJcq}c$!WHmfp7!o4JZ5C-$PQ zTZyM>kG#OzPGtTTb6L5umpOY1@n@vQ4)4CHY>Vo<)xIJL-@~9xHN*6?L1r;p@>2Di z%cQ+FofX600Go>x`Oj=FulqK7Ceabo4|`1z;yK0IS%#t745i+;;+U4dDUJzVBpefk zWA<80c`}R#)71#mtw%P)bTtmst@o#A(c&<3sTY2dk#;8~w37Y2J3oc|j~0?lBc%#e zzj+P{2i=P&NF!8F{A19?CyH!N0N2*UexgI;s_ZST{8h$>S<>URlD`ERfZq>pHEsY-CtJKyJ6*@)2Ke z2FM%?@RsZH$z%@4TR+8~Tc9u(--wznk(=j=dsnt!mzf&P3)HBB#Oq$SMieaEOz?Kj zh>X&QQAaVTI7W4o9iD&&bo8-tCClO{`AzqNRz3P_#Nno}oO9&A#%R&|B#zLwHg~%V zfPZ}pWF?#Wn}t&oB_pQ$Vk5j-c&gDbLiwl93;E`GHJ|OvgeKU}(fo)MFh@a`tR&L) zWmTP$t)7^z({o=?2c5=7lmM3YJp~|chER@hM`(>eXrV$JPec$@u5D7c#a<-35T`dG zVCuL`VHBB#zj3-7pHJ#xxse1dMAUF&?yrfQVEYdzrj$$qY)Kd**XBEvKW)>;`_t3e z_DRl>ZC^}4LF3XgHg!jS`}OvKZ~J1nbU7ge%5Nq|(#D1%h@{;-rS+qacV$pNNXD7$ z`BGaCf%MmSRv=Zq*>kr)QwgNrB4SSv=dSGb$H=zt_k|HkLH*Y3j{gyF$n5xp*r*-< z7E>#g`$gBKe!vQL{hPd!HOnQBln^*CcjtdP`Jh6VK-?^qAY|546M+!~!94BveWaZc z&|eSgmm;BF5eanx66#VU)DE$CH#SUQ?yoaIkxuve(-%}>g!_b3Z00)O-{QNhsf=RL zlGc%wsKc)DhUmZlzkK@tntb}J$ftHuaga|n$R~6xkxw;8kWa`XkxwnAuEABWTUhNO|CdZ-cs{K}2qg5O2pv^WCiimbp9XmbS)p*tC&QzT*e z2%Kvzfzyvje1y$ca)r${5kkVXq7EsE}+H$O5$`|uZ(`=^d~s13@{go`J`wswk&$MV_Y8iEo=X! zCS22%IJ?7%l5bUueuc7Q8A_sw%Hd&OY&aPQl>Mc3f~QGp@?e}DUV=qAelV?VOMZn% zB^}h-E6Mq|bC3*%9Zk%1j+W1(hvfudOh(V1Uhenp^)&y9vDntuV4vBv*sH%Nf?U~V zz(nj_ZjrOA=VCwN3AJ)KE!vL`KR4@}zAkeT$j#jnbw&+Rg4ITrMOn!qTf zCVjq|^i;smYZY5$LhDWp~=+Y5FzeDW>o={gIDTje;8Iq|l*9w`VvY z)nLE%H@sC)ic}kJvFbKa4qob}99)QU@Vb}{Rb>lN4mP122%L^`kYgVRTWm=Ji)yPw zK>*Z6-tMP7f};s^h$fI4j~Y>LZr>!yN2QVv(@#vDM@eQwNovOGY8^zTyVtHrV zKu?p(jPY&pG|Q<+r6l;{X{wP6Ifmm;RtRHadfF-WI)0X!smol__9Rc{F40xVRTw7Z z7nkA)8SApVpgAq8#vs+NtnoKCoXA3xmC#@Xhz_$>cL++?aZ2g>RXZZkZJrg8qOT0M z0Vm`Rtv&e&gGBXDMUnUWwrG8$uJ=-N8E+ZG`5drp+w~}G(32T-m>P7h40@dT^0cCy z;8mHAHIXNFY7eC@QQyIkot0sk!F#}0Y{B;}h5|l$KI(f*YfqghGqmC9=fES_6EvBM z95rHHms5?`KN{P#70$(V%GA*^A{T4PpKqkdW!Fo?d7l&$PF0f_yFL?7lUZ+xw>W$U zCG$9}N>0W;bJlGxa_}dM?+vN4T&Td)v_h6b&K@;|KRJCl6e(5?I%9fe2?xd&Tg#N) zBv`L41Jjfv%0g{wepe1EZ4+Bs!FA5n!@xVdtQv~Z$%lQ!7AVF|ejIr;SFfB%G{ zp!Om@n3QO9i&&Zm@G;pbu+=Ot*A`{z<4e8oQ?1+kYIq;SRj#zB0V*e?0{##zw8i`nyoT7R3_Jx!;uf2wUY zhvBDY7+(Aq@Q|l@6lBe2}&CG|Sc|&ya_g zIar@+vEXoUe}ZDcts7uLuQ@N2%YtjHN^I}I--iGym%qcVSK)6tHj}bwLt*E*oMw$Z zg0Y9Iv6sl$1IrKdX#p<$twNpGDB71y94B9<2Y;U?W4X=WF_tZVBEC1^?@MKd z7CikNcm!91m1L^Up1(TrBi}N3=rR6NZEE}(*7%wETgUyI!V3`%%1PKKoIl+uGMTOS zNC}DoZc4C>0EK@rwk}_t~m8m2FSj_Qw0Om-*{VH2>oFlO(-pgZTsYr zEPx1%O8M)MUvK%cnRo1cj&$x{yoVew4o5%U`1%9tt?)D^V>lPElXeQPj@AaUH~GV z-jXL@`?B(+Qs5GKa{cGRv#dqI)2AmqM7}=nB=%!G^y6vgRhAhv&q@)=(+twjc2{8vBBqG8%hn zYe)CfZ|t_-PrhjDC&>}zLZz)|oNBRYImzebYRK_Knft|;cDcBa#oFJ+mG-yP5R0B| zxSCHxN~l?-p91VN#GOWz4gNH&X@uW&cc|^iIMf1_nEdG(h01xH#XTjWH#qBMtz>L` z*yu;tgJ{m1bgYE!Qkgm8&0`ScLcvO^US$^$lB%VNMROF$O4?%r@FtL=4yP?u#x!>lx^6g%P z|61~f<%lgwoX}{%mzI(U4VCYud|7(SrBAuzeTzW3ODL4$3l@bI+x`aV6Gw2sxEM$9 zAy2c!1{sT~BiiEp-YV`XDQsz-yVP+~Y{B?{4^f0*8pQdu<^BD!MVf8@mLbhSr#>sB zIU(mT8N2-m2gxu69&kzB*7YD6i{zY~L$;rHg>{My*?wNB(%R)1xh*v~gAdEuI|}NQ zY56vaFDj{T(x=IJa*(8vt23p_B)86T7`ZoamfN6Qy$zN7g))z~DDzk-^PF6PPzO(?i8W2b~$ni&cWuz>sriHh4-5vW8(n+G2eU7e@2rxbnK_p!0>^rxQ*qI5U!gE(1r zHwCCbyj5D%QvdBTsShy*R9SOg531}=k0T`_g1k?uu5l6M2zgpvu4q@H&S#`G;!%}T zQhj5?DIyy`gyyCt8cyNfWi9Es9BMcCJ2!B?>u`wi0*JA`f8Z36m^LwneTTK<>Wzj| zN>byp7(%|~(xcp@=uzD$^jPH3W4=R(vn!(nWHdi7gg6^Q+@Bpy;I-lr6g{d~2W&ic zJOYnFk18CY3q6jxK0}YC-+Q`;sDvJS^GXa3`;OO2{Uj7hrT79r#UGtg9pM~lsYtTF zF@u`H&#K@9MU+K`N4|HHnOivLpbv@*;$)#mi9I0fLmR1g*r5lKx7l4%LXIl*0CJoL zdX=CYYLVk{kmJR<=wW}d=#lCkK^zBp^+x0rk(uiVLaA>Lu)O?7EY7;1{wh=%)Zbub z`)C1@UBl^(M9ENF$@i>h<=YTo>db(?;CZFROyNiYx&3uwQC`4U@VrI6_hkl@F=Br~ zJm%)*=H%BX{m+(<5zQI`W72V@uoR;C7*Se78 zGY(14wn*~yE+mP3gwjqgNsYr_C}BGLXR5>2I)bM zfBK`M$B7fV)1x(Dh8}a{W_qQ^JKigUfQU*#O5TrXY-)*(_l#;L{66g&mB@ojJ)`cC z6Om`skL0N28TB(cLwQF1MyelpM*VT7`lC8lMf8Npa}m9HCx1eEV!QmI?^l_0rb3to zJ76=B!#{=Q{SLu*<6lWLw^as59*^O6OCBehTh!3-c7jfZL_37m%V|t%knwF@y~m4C zW&$?>7VL7bp{*q&bX_PxyaoTwy+0$%pLZDNqG<`9F{YLDca!^>k>+V_kP_0VZu{L4 z`R5d+0rxJ?|Ec_Q<<(jK+4$uDD*h2vDxoe+^g^yszkuaXK8VH!AIg(B(#4s~c4hmL zhgc%ri%6fJB?+-ViGCsS{N5aSzDkd-$%tR%`KmAApPxJO{MSmJ-}0d1pHIK4_~+M0 zkmp9>IfE_ItqFF}jqi>pgjsTIwdPxA_pqPzs(%EGYw@hV>1mQi2BLxB;Y;hm=TrUG zq@&LV3Fu11DiQs(O3**CMgLhM`YEFU=}$bXyCx#%I;9pzEU|x9j@Sh_> z-A(_HpB(+;tRvE^iiphUA3L+F@%j3P#6$L`e>`|)mR<*MI9ht8PT29H4_kG@vdRbg za88}DE^&{JKHM|zv4=iv>mLE%ZtV;s_`KfsB~*~Jl*rGa*Ju_)4!zFH>K|w2=pU@9 zCGXKcb}0ShkkUWSAu!C-{DBZD{S{tSG`j6~ibm&;Eh4n<4U0s73C&w$C=tK8hsu$Y z|DyaE@#SJESi?(I^83d`k5|7Etp0myq;tLu8L=|r4AbTYa*`+zrp-vr&Yh1k2zVZf zl(`!Zl*R@$ZH|p4n5HZ>z}`=&DOuKd8!UaIj09>rW51T+-u$B)j?T$?yFdLxn1d%r z1l2Af?0a(2+OF1mX+~_>CwlM?DG9Uy3G4eQUfV>(5tL^nuF|4X!+)5!$0??v~u>~Zs6qLoz#`tSh zOL`XTyCVB1Lxx?_?axva>zH3#6GdnP+yw>Djx4N1kj9wn7->RLEU09XuTS_PGWAV%XOOexRH$j~a$3!CIj;Cs@u zaw;lE@<$@LjbnwY&>bb|u(~P2!u94+1<7!C znQcFWuoTkux$7-V2i@9e2h$vV1=B&VRu<9UHy`+wgfGt}Xg;WF=QY{O=&WCCunHbj z#r|%f*xzrH7jg&o)J|a0$icCJ$RP7rMI_tILn^xSWecVAtvY(SDBW(4OKGtiq>dh4 zi>*3(S(NrtM^6x_7WM?emBf9TV|rjmbg~R!G%gnGT*5WM&I3P?3PlPm)l$uo4;KH} z)szN0{Bs3sq}HbCEifK2ZV>+YyQk^5f`6NbW^fN_J1VV-$*Tf_=Vsp`oD`;Mbe9At z{P?19s;mepqX=d_%@HoCQi^!4FjPrpU}md*15%f7dD>MD#d{#Cu>LoQUVm2*95VV) z!81$uu?fO1~l{ zXw52Wb1sol%QndtL02dJBMzVVqeTBk@vcRp*Uw1AYV$;=u0^K~-cK$EvCl>t_D7&6Xvi^7R$5C5} zWEKkAS(#_lXZpU#mxbQ`6k$^mE<^4MyND_c(Xcn;f&p`~)VAyz?r;?S-fh{%-G|Nd zf8oj_=X@Qz8?D=@= zzXa4Di~P;Nr}lp~&p+GY+bs46VM6S4!nZ$xJFM{S8W_~mJehw(*KJeb#@)iVJ0yI2 z7QaUmkxD0iTMbQ7Ckgt^@aJ`}*b&&r5OHmVM!!Vl@}-1EzhVV4Kh4+4ghs1cUsMT^ zxNWWwzrBf=ZTsoz#BbY=tAK6dx9#w63Fp2Pwc;hUhw>~VaHXF_g4^-iOtMS-c1KS9 zc7HG*x^9F0ngOBfwpu{8F^I%(+i&UM>nwn@+8DWBz&OH{3jy+@uJPMXDrrFcwv=gt zf(Ug_jphY*{I4Yy5VH#BX!;cp}&%ln*0^ujv0`?#<()s?Nv%30WAHFhND5 zqDDal*F=pbLNp;6xPb}cf>Jf2BDilbBT)zhlW2z9v9#4{t+ssXQnXuIt&JN7K@!v| z?o<@wQn}+OqE;3y%DFF?EFNmJPr8*t!2Wy`lNUOaiV% z15r~d0nYeuWQ)3q2$NoZ6D#YozN?FVmG~?}U!WdtAuiBW2)Do?_ghrbDIRJEB~H$4 zp7mj$H*_#>!UyB%#$F8V4>j@ALrwfN*{r(jS4twj@-4TZSI6q4UPRnHf^T=$mim=) zHF3I8q31pIOmZi+7kK?``LF%;ZjbwVP<|gHag-&U=~vnwk`uOAb$N~qH23u+`jvD> z^W6Rfo*KX>Rh_YC($WD|62-v<1<`IHfTsEV7|SM{%xdJTKJCl*_K+Gts48D`%TaQ* zQ)Ue=8 zqfIbAgf%2kIzHVY=M_v;!2hx~r~x>dn@Zqc3;cU-Z-BIi%a_1^)?VPx^59ubn}kB}?21@^QvI^Znaqioq+S!zZ5bs$^u)8l7$Kht05?iVb%@xe{= z2WoenHRYYNzj#Jk<7rNrP>vA_X?iH#bu!p!-ZNw!@@=g|Fxo%qdnS+S3HI=sq4b^i z4Ce=5^n7mA(fKv=MSkq^mv14SvG;62@5af{yE$h?`5Uvp)X|o|F^63-HCV|PmZhU? zUdzbRGobC~K@MCWMf<(4kCOIxzds6x&cSZja`pt)fzFY~f2F;U-5*n7pn$bSR!PYZ zdjR*J1PUe>1csi);UEvGJ1}&7DnFX3pIO(`0Z#Ro;XMS)UPs(9S>g#cjrQl76!t$5 zHbEM!p+zftJ}pZBDSh{ps^~um@2QoY=Re%fH@vEOSJvEpf-Q(f(SM3;Js>0C(2=GG#40=D_wNMH{y z=9&&aMPmtnrdf2TR`NyRbF0b9{o?FD3gg?VHqT&m8?b~2gkrh>hK(l*jY*s&R)6Cs zrMu)$pr-SgB8UQ^AryV1D)~kbn{*+rha*Q)>XQ~`)kLpGyYT7>P1zNo`loq0*`xLhzQUEB`9;TwRoO zVm0>lZ@U)z66tb`wv6rn*o#U0wc?Y0nmxkHPbBtJ?6*bEtG}l4L-`;wTk=%=G0HHn zlBep$JYC{E@JG2Gx{HejYe#RaY6_7|PDW-f9Bl4FSj9H1hHX7saaXK$)By1sk>>Tb z*kc5I9O#nHA4cGLAoE35v+W|_s8?pDcVk9AFV7wlty@JbV|bFB@QLOx3bdXkC->;L z1oroD?k=i|R_55%I5k(|IJF+eP}STZN{v_a{55qcGOMZpg546$r0F)9-nhO-A|SzV zt3}oLtNcSO@-pl%Yc-n9t|m%(oL{cRFqwdrIZ;#);i~z_TBn4QKM(C3yEwJh5u+LG zmaM=cCZTroMA1OY6ahuH{@Cz5tNgsY!pLvqqAJw$Fy~UDm&NmD!s7GF{lS(uO%!HR z<0?iGW2)sylakl5&I)~Fs5gB0tEyNX2N0tzV7o7e;KRx|11*}!PL|LXI@8rT=KO*{ z>r?VeQt3CZCh6j9HEmPZIx&c=X7SXub_S? z8i<3?-qMud&KdY)J&AfvN#0cz&q?cRl=^AJi05}N!~|O9-b~H#GlvQT*_+( zNh<&5`GbU3zD2WUhXzR^$H<0~_4FS(P4nZBQr*BT8j$8T9q~m-B(jTVv#s7Lv4xVO z`Yv8+`*m46s+zthS9P5|U~#p7YUG@8rq$@6z3`E@d97yR_%&yrIjIu-p|q+70S4p+ja*@`5& zERLKoE+je;Ij zKcBUvwR3@!h^L#>{g1qhq^3Rd_)sADdf@KPn#DQ&g%$1UH#@JYX?t<_8Y>I4{MVt; zXi#_TyYQmA!17M+)In_SSDReH9hqT{<1I`%=bgavp;fVoYnyfqn0xZ1*x;tRSj|MY zVh9`eM!Jcx1+G8_Y}luE+dA4vqnY2HkO4buN)~RTM?q{+RU&eja zCiet6`^g0FBj1YL3ydG4gZpDnWuR5HdC9zZfOUh<@^I(61(LjVRbW)^?B6u_0$e{7 z%WdbWmb5bkwQzRzUQBIXQZh=$Nwu>ha_e2q$YPvZ2h8cOm!~BT5r>R6iDszcwxq!G zuQz{vSku>ssf6}ck0#4Z`AXkOEp?)W*?IU=f7B~s5{z)GFxGhm&V4u^kvvBQut0K1 zCW2tB?A-4^=EDU(JZkK~2(H7~&1HnWz8~4IsX>M_#ozn>v3^PT`X*=2Z$$Or`jqGPr|3S<}W(>55->*r|FKj-mI}Ng~`k~wr zOvPl_zxaZ}rtixa4AFdz+!xam-waYjN^bi8#D)BGeB{%`(+_M~xwh$t0dxNuigA*N zU2tH@dfo)?URg(sYR%&F4nt$Y-82yE_r>8SC&w-haNbxS8oknL{$byR4?&Y}5~{qm zHa0CQRK7kuVsb1LIG{GLydf(#T^nwi6dV3Ck`_!y0YhS$6_Jmn=Rvi}mji8=38xsq z<*R|V^LY#+BMo;-=L^}ahHS<>=#kB>Jk>_gqPQ-vo~tXrJ(4+ej*tv75<)Sj7>b!# z*|IgvirD1oW8!Uh8DBHx?Hox4#3dWvyOl~_qFC57d5td;_>3$52%Q9Scgbd2o3#X$Y9i{UiYa@sjwRkB{SFm1Npg*uHEY|t!~mhk zHnA4~EQ`n)^n{`NkhrhK*hD&o)%b_L2aauZqc`E@ z!-djW+)+5TE!w?pT@+28++i(xdW6Xz4$i!7d82%-qU2=<;@OpPW%4}>lgTW?xJ!?c zA&J~w)ltO1FF+Gy@pD?y#iqvN-v2W`Wp^C*>qo`zxDU7In)`p4_b2$!%DBHh6dS*# zCfc>)s~oP9z)E&S5=?#Z?3rjU5|!So z@`(kJGpw$01zNFuVo~H&ei?W3@`=Tf6Zlmu?-C=^&9fiUe)w7LhA#-e$iGG5m-)9i z{3czg|9KBr3ibM52ESrAC)bAL5XC`uY|tG&cL*Bh6w4BR8(qP5a^D8c{;S4qmiDaJbN*rxeP?`& zPI#?z_A)`qs&o_<)AjeG($dIBzuuKxf_*=`q*ITHW}1HPwP?kLZF^X!iG~YI!#Dfu zqe$_g*4k3aMhEyYSp1Ysc67kwYHJ``tmJw#C>t&i~5Yvz21yiSHd!O&i9tC2C-Dk>IjZ9DZX5h~x?+pF47eBjI_RXQFKFimJb4VG6 zI6b`}ai$nX$|P%+bAQuL_Lwegg6o`179lyrO6Su>$$CW-`ISS_k7}cxoNPeYmvBDx zb?ZeLn+aF1`Om;#`2~aB9>Vn&a$vOY3QendV!Am;f3i@Uu6Jzeng`$Q6p6@(khEGssv4y=cLNvY200s zQRN6zrIIRp#@%0jxfk4JTnLmtKlGZvBXm4xG9Fn37uq)sCY@If;_;q_wq`+kXfXf; zw;vzTduWelRJq1f`ADi{46Qk%$^=toCRO%4w0F6Ha*t$T;=we#UXf)V=DO84&l~J( zxK0I$XwX3d#W59rP}c)LSl3nU@`GyS2Q_x&)7lwW#VQ8e3PX6+F${rYx-tYr5&e6p zOc@M;4C$qHz^TMr6a5C7EeAOEI_G9CzJ_Rv$O0#e-JCy!zn?n=(5xAA21B0>XVTMe z8tCcr-FxD4QP6(~jY&_WJ)^Up!`;s4>GgZHCpz)Nadr+J;M4KbV*Z&a9+iLdZ-fiu z$>y^6*s%8yCsZX@vc@@fw&-;Pz$Rgb0w3T1@@hNey@9sOQZoae%~((^A@D^Dye=^Qg8Qs(0NvWhgWUwSY#SBmTA7l+ece>7;$?Xgz(!$Z-VJdt3CLXD!V z>><=E!%m_?@@0|=ahueEYX-c5B_opqXV8oCU$sxx*cFLL8%`rh(LL-6*+;(3Pd7}> zonMVFJ+RI`4j+#Q86UTXkxRBYUHhqdD__ri1R}jl9-ti3Y;r`-3=PguwWsAn;)m!4 z!W32O@=E?Ogn8DDpua2k3SJty(&)3vflwcReTc?4x^r*{RqEp}tjH8i((TWf%gU?R z5oVP>$L)baUL^NX@)~H_m9EZSmOyGgR3?eOWioueAcu6PtALqMz@q#_D(kBBizE`A z1_E>z)^!DYT)`|fCQTIWzv@jCv8iY!b~$G+0TiH68r4LTE`6rv1B&3*@z-jj@6{3# zL6W)Hf+7Ur?anRtik5h#rSx=%LX%DET6Jd&MQ0FIGY^W{EM~{iKs|0XnT3326j^&2 zg^@400fUI9uHagC7_FzLhY`QO?=V=(8=S>I5yyyPy@7jha*+6=Y;;QUCE8nbWP4bD zY)iH^Sk@5Apgsb$@>gro7u_n~K3FWAPM>M?-2qHMEO!Uu6w~?S@J639F*PqG0lc+L zj# zN(!=^uYM5zyn@ok@)RD1ee_Gg!#-B@#|7&|HO_US2Qmz!?-ck`^T$4crKUlB$IcO< zLROMEb;OPz3^L)HKl-7emqVIdyvHdS=hX1vnw5pO*IgPK90d2kpfIOuNaSy## zR*K$J{X;)jRgpk!>I0lZ;3&?ouLB{`Y&7#tP>Zl7#`ZsDsj=nf>evQw5c4}S1EOqc z#X1KYXB!~n#n!AW5~RpgQrT-{&lSY z9$eZLT&7Tii`(zkJHJ@JwBH%tf2%JmGL*wM6Gm6zOElJY2|>Mp_i6YvQ5Pv7#|t3j zZ`g0-;&X<_W-qL4+Lb*UEm3WF-=^=!Mh@w{znBIU4{tCXd~1TzEc-8_p02fXMm9AJ zzb6#EzCCg@$UN_~6f%c(+-nGhQ|(QHYC+~grI=0(0spdQaHAUu)flHww1=3N^E$-% zNogCWJe+uzLhc{m4hO~z4yUk-L$R6o{Cw<`+JcXIS*baEE>($0wCtNWt$*wsz}vd$ z7a{xlcJfP%!XNHGR4Q2?-@%{V##h4SU1%8Wd3Cq!vnWg z<>drgG+Q|udnwPAa++hvS)RM5nh?~b!d$C;($OpkHbBEeMV0MEl5 zCSHL|u3<>tFu}-LueKTOXsWuS?Vv9qnl>m>av;dqTXW#i&}2~^$u(qW8!Oq7IpqXe zUXa?&FDwP;SS3`#A>Ue#C`E-q7hePnOj_&1^4`c-HFo1FT$z;Qs)gi8iIE2d)J96} z%Kehv&D#U4?h}A8aHl#c#`34il+VanWMy?Hd+>N;%~?|t`x$=0aI)Ot#4L+Edn7&T zK=y#O>g)<}C?VK46*y<2fRFcwEu`ni^+FA_$kpP4s;8Bl#FpMa>3dqpiTG5Plc$E()=RhH{|I zFTFbnLFE2tfeWxzyazmJ{VLOTKe9`)&&hDalx_!`BxEBNS?XN+fK2DbBa3z61=~b! zZ~guE(9DZ6IP|dbk$mZr;Iss((u2Nu3)U{T=&Hm%?$f0S^0_Oe-lPO+ABY>_5-@Wa zwVeyNh!vN^C00};d%9X1AU?yF>$Q1)ynYkAEpM)x7Ge3_I46Cn=MojN~1j=>C;w`R}|w zzrAwr?_b;0a@Al*U&ei{?3&(=iPQ6}tE8kJ@81!6$3PWW zhf!$;Cj0{!t}s;z-@^@n^J82iC;4F168c%DQcP zvOh^{?Qz@Hvvq-A67;3b2DSKIB#GI0u>cRC*)L?hk~kQ6!ut|q4YhZMV&RjDO5W7e z)O60g6x!A)c4b+tCQI%H!1kRJ$`Xj?T!Fo&X7r23%&@-(kP+FKp`GA-WuKCTOz_FJ z)e0Tbb~tN$GLKTro}UGP^T%%?rNH>@(G9iHQ^sTdGWpq)m{vLqk}pSIsEUGG`Db`^ zomj(0rEF!8eh1uyQ<0o8GGjdj{W46^8^>};zs};ct1eYn1N#(ii)$=%R=$%=sxU8n ztf;AhG^fNq30K3%pgVkV;HfG87Bb;ZU5k`M&S<<8C{N%9Zk}w*ziowwa(^<5-+T_D zF~UuD6y;m6%m|BOeUHns#soV9w_gs~B~YnNU7J`}Luu^deY4`|8=%D&sp)H8c$_a% zr&90~NYVM=QcpFgd@<^OI+t3rtiTN`W(DSK_kSB$Sjj=8@Z=LtIbl{;GJ;~jQu#yjT@q}Hx%hMr^%<V2 zBp4%)o7)vsH-`yiAz+o-u?AY5>Tt$C=;dAHYGU`^DGk{ug8C0zcIWH7&|abmdGr23Oh?ez)hqESVXyxa*9%8i?#fb zb%~6WP<{M+reONVv9(xO5pryk^ojg`TnbzHxiOjYl>Dz#K0jzj;D^{~tp` zpld`1E}w4^^h{7(#;42H5i32mL(y54QSBF*)ylM5?(7@yVEGxKXgGd2#o~-q{_nu; ztx_PyNIftounL?k&T^!dRs=^5O^kHqJM7)?gLUw7aK6rT)4Ce-|*a@3Ut$=4&xm1EvyIA$J1gctHBaLfdN%$WoBYDRD3gTlm-29|Ms zVL2i(D!n9@7=(sHk&~}Vn0*`R_m5dIkfTt=-_z0RJa(qWC;hvQv zr4FYBPW-zmXEOA!1+b#5$gwb?riIh;Lb171A}1p2!b}~}nV7xGUCf3IbzjnL!1)f_ zQsOhD5=V7IWHAJ*@V%guc+pf7NJ+WwT#KbJ@!W3q0M)+$LBB}7=;)(AgklS)2q2M5 z@7EuktG zUBr6QcB%yCPk|ZjOw!p`VUGOLY_dyiEDR z8&7tmvCnuGnDMNY@yJ+YOab>ITpeiBys{i#6dT!r#YMBW7pvMm&|# zyQ6;b^gg4Gi`wc1)~j#1{NtQWW~xL316wNt8=(UWv_|04=^08~0w_T*xu>k z+s9U0kFKo8#iBBNMMMnt%Xh7l3k*^#%ca7Bcb zx;0e1aAazSJ7mNivcnB(dd}|`i7Il8>_7sOuSh)?#sCwW;*V3G*n?KLXkA3s#`eV% z{A2y$8DslLZVuT;i)QKSy4d`Y_|R+;mBI6Ga4=vQlycHl`COc0BA2*g z(tWh$3(>H2M&9zIi1;9Z8#agfBRQo3|1mm>+zX`t7@Wr5PaAh7;~z1GQ0!X2vvQj3 z$;#r)Nvz8$x>(}j8hrx;Eo-ROG!F+HcyM;JuV1ZwhB9h79FOL3%x}~db8iwuwH(CS z^*GGSS2^0T#5=)kheEu=i2^(}1#tx<@dL88I*uKY^rcRFa;8misFuh!)g}wmO`ZPe zOHS-1aP{|{KX9m}!0mM@^`!KCdUf%05vCf}XQp@$Her^28Bd_~IQUWgc>Xc^6nnyP z`2EbO7wI-r4+@=p$Gn^^_jScCn8FM{J|aaF`9oSn$MzbMkNtpu8OSFs+q68=%|yn9 z>?6d@8-0ppe5JlkTv(D+oihnS2bwQ4N0vHDTK3GtsdNYgSoO`yr?w?;`V&{9iF zDBx-Ay(7FK*@Hq+(-IOgmwR+o5(+uq7e0aDyHT~}3yK3R8)-z+iw0WX;fdtLnrut@ zbT-|@O?ILRR0v`f3)AgB=PwgzT9c7;oh4Jn3L)z8OSA&Ypib1e3L}TE9~VefGqca> zv#RS$-o$DdnJUvB1n%oQS&bH>)OKUJ-(H_NN|e9tUBM1x+M3$#Tu-iGSzm`+&1GO> zYIpeHT6;W`i_hEQ@ikR#;jAU0@~`HSJ@^}I^!Lk87qU2ht6x=fBay~&hH7fa zIz93}oMXK|%{eZ>>pOl5T>?r`ur;vwO;t}-iDogp7W$V52JO^4NRL*>?(LG6W`x`}SVsLcDt~E_N^5$Gy z%hgD!JbIED-aS#{LW;Gw-8pOGuB6~1%uR%)whX{mq)hr34ZD&x(U}hmf|UEn7o_pw ztNWbtaXZU}(A}7F?tPF*ekp`td=ewV?m-Yzb6xpha1Go&o9|wIS zJAr$o-|wC4xnDKW(X^vq1dr(W_bAsy(&IZwA?f^?-A}%g>o=6+sPvXt-FH7!e+eV6 z*Rmf9@3Lakr$p+6Q%36@=ltp7;kyz4#Akd%0q@cA{AL*qlpRMAf3%E7 zrFj~0c5rCtTXvFqC-HDvRusnl;N8@GZqM+E+}jm&7`e~v*k^)b_fQ{vMt5v7R&qoT z$O@E;R2C$LJ}a0`R5(Ao#K6o!xYEx~_iReheR$IMtmr$~a_}q8YxLq4-#XXLHoZX9q5;oV>MCJxtM+Rb$2$WJ9CABm>EG$h z>!%<6P)nihFVz8?KJn~W8NXwRx-{1qt;-(t8-a&z^H6d6(*_kcG|xNE7e*%)bQW8F z9TJNsJhEwrKQh_Hj;y+(M5S{}{m!J;kb*$sL^Q(A&u%s&L1V>f4U`_Z8{)7KDB|{t z9#^ckAL-oM7#tamndJHbjw-)## z`&-XUpMLcXx7>K`Ozh6(XBVbn0SSIh?md9Gvs@=~HCt({V*i7^4Jnp?+dP#dtQgWK z+99iaWf=GBjm|`>#wBIG1s4KjU;Ijb7~Uhq=iK@exVv~H!$$OIXK|2`cth|<|J=Wk~CLfsZBG|lR(Nv3}`?{w6MWxe8J2%w5oG4^jVoy7GX~KO0Ewr z3}422=#kmmqg7@desBKBp|0r6_`9DGl$5MVPMM}Hu{;h_V3k)Kot<93)w6dc)fLxW z3~c(UAjsqv?)rU3(EhXlRv#aGbfz`V=-ZwdpncZI59{?ZWuJFps*fj+%KSL>UgXwu zr?AknA~Q4DIUaChNDi zQ?bw%=~BkVmlZjPt6z&*JY(`7e-+CdYk5m{B3BoiENNx1t|mv|*WFb%qW$h-U>~{q zPvcJrDpv=;$})S;k}TbOl%hki;M!2E?kgz!`6pb;UM46&nN;#-Q{z|k`{Ig^`!nbV zuQW_`0wZrK>lc9>8$l>c1pnYQ&hqbdYn&;A>vsmjw((JnmG1w<{ER&bs{}p0bt3>) zA*G_odQmp63IEKjM2){ljl*~o_x0J*?v*#WO3*H~dQOVEp9NYaRxl;0O61H|=OHX) zndie;#bf)Yr!5~hKBlb(IlKuxssmWae%Rk2d>*G2Nrv7;qY`N<_X{vBVY#A!$P#s3 z=$FhBMc)mtLKEVjf&q##`B)Sqv*8D!z;hLShAkk%Q< zqC~jjx56Ps+gOK*ObN*EE`FKE3;(Wj`eb5LCVbw0ScbF4T3M=r)>C0Mh+cjR(TfyO z{8IT?JQy}|ir1}fyWmrtIq<;|qf})6YQY}JdXiP&x0$y`oNpjW2 zFS?=q)_rIa8jQcJgayfEaof8b_T!{|B4&HxaA&90_g#?dlsQcXTH0h@;TdwBYy2Lj zlA{od9GQ7)Cw#r#$s)rU-J(q_gQ7bj&2~(W&gnSe#f$kk{SHmQ=gvv&K^j)8A%kO2 zTv#~v_&}?8m{buzI8wuN0(ZvwU5kPQ3ZL5PZ0<_RPSo-irP_y_ES=U685VuhBWm+o#=1Z1PcB>T zHgvd5#f!W^%P;wjoWaRbUqDo3j1qTcoWp$1pUKmvQ@crTkkai=(Ne3k$S<#;=rp15)!LKR-elvYBFA^?MOILe^qO#jK$ey!)l9Phk%#LY?&?5K6? z*t5kLoR3vPR`yj4+_4rVlW@a@`|%(S!+75F0MiWbM+zVwX^9NqJXE6iMa0Bj6f2$H z&>#_O)mI_^iA<-G;U_!#Y{nyb-Dj_DqO#d#&H0<-Bk=Yl7kcpC@|HQ&xl;3GSP;~3 zy@l@tUWC=G@KBr|-*oO70Kb8$Y>-#6iXj1aYsN)%_Kl*H-M{I%f_8@D3nSg4s^Sr| zyp&kcLD6d0P~49o%2>tPA^J5~$05NUB7p6np!8bFenT(xV(*RCMe>bbL~F z<(i8LO?-UT5*Qsj<6+FUC-11GP551`qANdz#)@Ono)RR7-ru0H+_LZ1G1yOP398O@ z(MV6mU^y4Ab6!0SNb&#mT5{v;1ZmC^kfnOW>F(RI+UzrNh8)~=X9{5vYf+aV-#OW< ze3Gf`&dvcIeu%NtdOw`vPL9U&X+IrWG)PRGcCo4@o*b&!ZyBltAXAyH{S39egDY6) zxT@!vct4D9nes3@>$ir{_FtNEu6TZ#OQY)l-J3?g&NDRnkfG6Q2B(l)`r36Kjdn6t zmqtZMheoAjcN#s;e4R<7+od8jD&IL*oV-Uu)aHc{ISYA&DD@#kdF2w~S;@S_Bw1lj z{&quXf18*|Xmgwtp&hZc7ok;L;SyTPlYRY5=db;T-*QE zNQvsH^WkETf5qICTgBl+y_1osjuV5tUvf?w|ANLTv03hnJXmMvjD+PaoGGiYu3fbY zl38^H7Icyn$-DjT61>!PYBDTm880BoOtVC4zn1w^O(vu7_NPaG+|{YkJB(f(dqy}n zT*b0LN+6h_%ei^7;5g;xXjGSU{`;DMWYx-CkBt?_8k8x z7GV{+@1o{$`EZ)#s490{`m8QgwqnT0ef;bBB3g}m*Y8VqTK6%59KASZrO^dCB&I{{ zd$`Y%%G6nmAzNq?J+Y_&11$)a$&@_`;*&BwatS&Tb7Q?vV+pFFWRmSIP=b*kwm`EI zVF(o8Oi%59qR&20t1(cJ|I(Wc}Kue9(CApRJggM&Z zC9VrB8|UOQA;GjiLad@ZC(Vu?yh7Pg4Jsy!wV`M3dD`s*{z?ku{vXeO!bfVz=6R&6 z9DzhyQ{FH*a*!msl4U`X&-b0HIcul*pK70)SM@|z$B(5w=MOlD_Xgvy*=aEL_rQ40 z1%m^jIlOsbY|8Du9yC4+_XB~4beY&cGa%V0e(|FIYVPXc@?b+hDFxr-n^O$bdFLXt z4J%)`9TYp+y8${N1JLVdxcEu|8YYxG14wVa6}}97NfhqF-uNm9%0Bo4T+&8~g#N$N z&+6btmv%mG*4=s|w9|@-LC#?}J7Z4mh47}vjbw|0i(DilAXUKr!YICRS|U4>iE5Mx zgDCf6bAJ;sm8}IWK;Q zOP0WSrbvezr0e$)K}wX^&6fjTbhY!tqcVrvvs4A$ybf9(@9!PkxaKU@tS1qs)|VGA zEg@ZorF4wfZae9AmgzRoa)Hu#eW&W;W2K*bG2i!0u1x>(fBGc}$V?;rSf)yMk}iy)RM9aPO8z zW2J{*$Tr2X*yo)4J7v3pmdE%-540C~GX4NR_>6z4T`|{}UOKN_N(164T;nfuWvTGB zX*r6^yqe@I-hhey5*{PA$V2&sisR9bSgMIaA)8#;GSQZx$^|$(t+jepBw3C-PBGDI@7)w)07dqFDZ87a`R} z{iNN|B!27Vdy?fzz8&=bJ(|#XbFP(KT@~F@)!ai4BvSo7M=ceitu%<@ln-Qi0jSTW=I-(BL)a*Mwc+Hn_ZpyeZeq!%kPb9?-DiWJVoK>b5kk$WVY zbdx%(j(!bt_+Des=qIBpn7BYut3E- zz*U+>yYhOV#(YfpK^!Lu8i0mTe zxzW#qh;k)5mcWMaI1RKzZxucs<*O|2@W`$G)G0E1apmyXO(w3mU~Fx8@Yu1DeZBq6 zd@dogGo|{JkbQd_Ln7N@A<~3|5^ET7{tu}&SbFnCvIaGRB^5?2b~&s=!gDgi1!gVL z5q8UUFfD>AGh&P&pAgH1?s=3SkGi#y0k!tjq689_ujI`-J0b=m*3~i`%bUX0xCo*{ zM-po1dn*+l`&;?NFj*nD5gyA2Z#hFqpoIvAOf1_^>yN3Tan>X~3cSbe*Gdk!gOG6q zZ?TI1yn8FUx`F(5!=`H~+@yta->4Tq8@Tf!e!(-;@6iO#qE>lr!hGgp1E0LWQ?iGm zl|00MLgn-#sIwPvg9*TkheWLed9-qxo7%<^mnlAs4GQ~Q?!14^_a)Ag5{w{Pa=`hw z`4YrpjAI(SSkO^_YQ!1t$k7+J`NAQ*I3*l(Wn!Xz``wH)jyjEGoV^p4R|=2AmVD%Q zKWf8NdPYw8#I3>m`b9=-lqy>C7*cWq4<>>~Out`$I$yt$%8|FoH!O)_V-+7tF{TA3 zExF%FwFZ1nr}*f;May;eOg^e#V#O|k1U5SJ-hcW~^9bWs5Tt7Eux3?90|2VK>TaBgw8YsREQN;<~+^(Wp~Y5BQn zAWnuHtLUMeBa=aaI30#BWeDvxL=Q_wrHMw^_)Ip2^!)4IcBGubhZ$dhSjBfw3!})r zpO%va+$brCc|@ESR8n8v6M02GM0s+oSVl#62 zRqN$HKq^IUo&m`n%#JLL$0}a=SdP_#rNlq_@aQG&P-PqciLK>x;$!8n_g^IA*(=NZ zi|2b%^y!hKQ(7eF$J0cz!TvWy{)%!4_6S!nerf$Z`z^yrVEg>^2)Q_Rew2*h@s1J2It;RK^3!K&Jb=ESc1g5q&fJiwsR>DJ;c z6qjZe|3!=cP4OrxmSd1C&HE_^ogx@GlYuYsO&X&a@_~4@B%994DU!?lO!8&bB1nv4 zEh+0ngODH*EVSB*q%#2ZLE;>_?^cqOu9GCC*@34lvXq9$l9M$2u2cz^NRfD1jv~LX zIIs05K7`YjxMUpTG_j??Kdnr73==`$@Tj`#JiOkp!P3J%m{0WKR?j)~Uz0fRH(i;t z5jXMFAzN}xf1Ykk`H9fCo>$P<$Te%bB*TBhaA)Mvy^hsDpOVG@M-b;Gmq`TbY%VZ| z8s$p48jdZDw>J7gghS&9d>6onL1@Wzz1X2?Frt}HCLBW?Z5~>rhv8rX=Bg$z)j))*^8M z=wa2P4$UJji;Zw)Zotd%sJqAq$qwWI-w$tZ`8rln`E^Q|%YXQ6_dtb72+-szvFI;Y zR!jiG2^Sv7^0X& z(%D+K%JVRt;1`D`6G*G8DSa|F{uoGMK4O5)D48vAS7 zP5lqNm)YgJ_hiNTZ%_{@|Ki|#aXiIcA5%sL!ahvAkU8TiE3IcQAT;&8nzqLGYU~>c zp>Vtq3RPr?j7i+*m6sa-ViACZv}C$vlB=3`W(R&eoPHLk;wUy#hv~*8Sn`&$l5sQ? zcjML?@dH~WXkHL(Nk&dj>?6LwvsnaqC0|+~Wk<;!6n>dc^#hPw5TFS%-i_fZr~%Gj z$Lgg|*o|=)-ug@vJvn!snfAL5A4VhLTr$Xqhly(yx}@ZHJCkFxw6*5-Q1B%>DJD|9 z@1)3ln7GWRXQU@(lVi^|lQNKXW?~1VrYy@6nY>i&KpyWyu^GiODPpUb!_LlVbyB{R zNr7b>AEQJ@0^L-6r8ggCID0IMPJI!q?fk6Z*+?OOiKbA98va)jr zfM+of!GMeoBDLFoHJI0RaPBkF(}SCCl@s^`@RiIGh{Go*DpUMxSwSR3gk0yk=AJET znaZvj1=U2_6Qx~2QGuWc>Kqio+}_y1BLDJ4i8YBF1xU;E2)&uJe24Q3(u~j~{MWd| zd=_Z^Ru@e#kC&9cR>paERJ86@La>a0Ge!^|{npu}$1KrCb-3CnxXR~Wq`AuEI+v@o zC|7YsH<}Wj#v6Q}PDFOaIY~Cv zCRE;m7CGXbWsf{jvi=Wm4R(hYL|2Tcdo?nbt5f_{%{cmHg(sVZRK77>BkRi&ucb4s zST%xia4kr4{v$k?*g^4L!gC24SnJGN!5PMG?9}6ipK!DmR1t#PTsdhQ6>PsGQ{31g z$A=uvX;BG&UqT zopqgZs9Iq~bGMHKyRnK}69(aI5~Uwb5`>>hklRUmO0`J_&~lQ5u*v^~4!c^4C6G^l z#)cg!rP0@yH}O|ROJ~lZCh2A-cZ6Pyd@K1y?JEP)(ai)fO6)&cqN8grR@wXA=UM!LtcEw}zT%he_+)sqO zL;QmW1b$Dq0fe|HVOSNsszzcl=p#E1=f7llQpmp2H5O!y$JKugLA5qq!wsEl1of^; z>m&O3Yup`ZM&nK^POiNBg?Wd3U_7VXzMapGWfwLcQ#c5D(_GS-mTEkCDN}x1^u1X&BX2V>!Q){!`RnWTIe*Wgrh>Alc{jDz+3S{Z#ne6W`a7l=JyDFhyU zPJgn9hOu7sW*3$S3WYhvW+hE3NeMCB))QArVMISDZ29cKv!ug3| z+JyXw3>109Cs(%wmD0w{E8d;d{(-#`Qak5aAxDzEMXN_Gt`4?U*Q~A{56xE>(}Ztz zbx>%;&cE}18TSBdOx-#%g)UmPl$R-#Ij500D7F764IZF?s(&=9j?xB8aBwI~snA2Y zgi!L+TUlnMo&YV02UN7>Kv|4Z$9}HRtjpXnhoh<|(M4?7|8N{OYi}EQA*tmOfT>uz z4;86(Ffcmf?~ui*q`WtKs>rKTL_V?4e8G}$KIT{@M)GL(GxA%-<6X|<&k1aYiO6=I zo*^MytijDI3&ktCNNvZ<^h;OHyn}Bu<;=S1Oe1Ha`eM_+koKxq*Bn`h2te+{Lpkce z6xN5Q?yd1j{}+w#WLh&Czl1D_(_ts;!xw1lb#f!R0ezu?eDgTH-6WldR5ayshlz^F za!(epi}SYt|Go2|X@9H$|4D81l467544aMeKbAuNXK8M9^LUpVd6Ceir(r~7s^oAk zZbpSaPv=jP^(Tq!VG>B?>|WxIfieb%dM`(Y$&XPV&)U8-*}+E~x~l?zkK`CFL@am6S*jL_W>*CYf@=dqxz>n>9v%w4#m3)J z-~l45+ipcCm2pt3%WIodGpmbLNVc9im52@9gyxHng~mOsMnvg$MqqD7u;IQp%1t!& zm_Um-;X9+m-w@gHSXF(ag5h~Wt$oVKJ}jn6SCd5chM|+2^9weN&PkiMWtratPT5 zh^izvur&I)4)yxVK*$nS{$`4ZH$X0RqA+q30FO=~MMn1yP#L$Ci zAJXTgOo$A9y7{8*iVefHiB!JmU(*CMoslnE=~43CR;KdZ?$(}r-mi-8f{gb4Bu)8q zt6j=(QQGm$kvPw$ndOZJm>E`FQGxuXFf))iu;$~bTg`?+Fy zRM|ySB~08;LQzZ*Nv%yD+X?tgPACqx%_Y^rgz@6=y|Kqdjpte=Ergjin zQ+=%L4IG{~*i+x;f=Nizxq2t+r|4=q7*<9OzyX{9-Hj^vo_T_HxazO6rnmIjOw9Q! zC66imH6-s0M!R$j?|M14y)ksj7>+Yz7?vJG*MA)YdNdsaQ9s`}&p)YSI9bNPedcBi zJ8C#=IS(Uz?0FEknI4mW+0!6W@)6QTmEc@h#Fh=|m2lpf?n-d?7rDfz4DUa^b6Xhq zrIL9c`@=Nuger*SZLO-w;#eH3_`TPNWJ0!@O@a;|w|PciuOX4mDc|Yg>j-KtO4l@w zdxpBUIzBAcCF`T>G8l??eu=(ial@xw@%#Z~ssBcFA>RTNr0;IHYvhE_-AQN*t>}-+ zTv^M_zkco%`JAt0u-RVk?4?(p(VN@+M%rYIYzv$Zh}=e0DQs#W&k1=18ss1p*(cRB zB}hui@MdvWlb{Qwm-_gR*%8t#S?Hx#|IHt!x!tCU-u)l8hyD-L{t2uy{qGyNpwo23 znZf|@r2)Y0e$xC*^QD<@;z^>fRB_j}hlE`pq=C4+4-oe^8zda=BH=(0*s@n=XGt>d z6gI5lM1lJP**psMw#b+$lNZlD_F zLDl+uKl^6>Z}r0gAV+M6YwB+`YDT&FB=-)}DCK{Wa?vcBNlAW`=|4q0Va5PB6C}_L zm~%%+dyD0sLQ73$K9tz8-0i0;sI)qDwXvbf_ zN79p(g7@5UP$z-H?hFF1QFKu0A_ETH|Mn%iSKF4pOlAO(wojc){4&b%Z|!o<>T_3r zCr86NZn+eF*xsn_Z#5ZI_tngd`Mr5A^ZO%qh)k+`PnRFCF@?%M znsXSf(N9(Kor$r*V_G{GZb}SRdC~o*w)}(HT;E7eysgxc_o4DnX8)G2(yd2(LZeZ{ zJ}6+&L1^?x-1@tK)HaHa+E`9bsC>&Uu*Z93@Yal%Non>EK}+&QD{9K3E&mYw)MfpL z3q}P2wtKuHhR&6}`fHo8->1QtkJ}g&1 z!I9}Fmq`nD?qBaT^ExKDmYXaWtr7~zI4wGtKGIj7$UILq;A7Q|jiu9yHgY7}m5Xyy z$J`MxnDH3Etr>&cN&gGqAsr5C@eaKh_uF`oK9IVh9;Bj36DE&+fc#QWVZ{blsy!se zE{m59O)s^|-w50#4v_L)wemhHkAFmfTkb(kO-u^bMd_sAi8fsEfN7s^%>wSp#>TmVb)z; z)@NKpIyV839fD0OYqgcdz_WsUCP;oaaQh(oi9gNGZ%B@u_OVkAW3Fg{NyW?PZ6uq! z9Ko=#29~oHh!dxLK?!$4v#yCAGV?6euckf9;uBNt0zhnd|4?k~1lq3_7L{&XPSvWJ z5;Bp`hq{eZjmEX#UG6KNGPsTLZv-G+BobLRmX=3OsEZvp0YuAO39^pvZu_;78_% z`;CX21^5`Uw4)mmr)KuwYEU5Xczr0$3vP7bP0Z*6xHl2Iyf0-Qye<{EPkG}NDBOxp zeYHkj893sisxWPvzJncgu~TZ4cN>x}b)PdawxGy`zBjbw_cydIb-xnYkTr3M`z(b_ z#%9B7EboUm5z2v1+O1tJ=7gsWL&>71Xh<{MWKZwkD`zeF3X+!pR&w>lsq7bb@t?zg zo;;q(kF7e1=c?-@Lno1oFyx_g$Oy74{*r1?dUSgZwzG?f+rfRJQ%NsIX^#vkwShms zYGv&Z|M52x{P=(kzIM@0pD-?A@)*=-Usb!}%YJo%KYuYfHul8YtPi0Q7B8#oUDkNC zu{&_r-Kp8q!oXcSQ}Y7dbqHFF>C=7vg?Y`CZ-{@$v$sFvA;}73V`GI~PX}zi3nHoA zT8P%fSt$`#C6QMk*$8uBHtM?QuE1Sa8d8pn^9&u+mH`w17R&_I?X8PH*jRy~#n_agIR?gspOSSdQrqe3# zhx++=;4V1kzk^EfhyfKWD1~le@O-jVRys=U1v9ji<&3Nel3cp2^Ewmo1^tGcPfd5` zj!YQ_BU_-v>kc`A-b1-2ozmSBhP8Hb?6@MjGH_3dU3?_#(F|5*vNyf)=05mcHXDqQ zxAZ#$!oH!bPuP`_gCb7iNACWe9ciZ^Ji(<8mB8GQ>>J`GAB4)kjcju76VbuJN;;%1 z^d~<_6l4N`6oN-=u)Q`moP((|hC-viw#r{=49fj)qqmC$ijUt-@Y;_N z9;v|9u-lz5`Y`rBeXGG2+iIJ44h=N_f%3$pbeH(jnijCMiO4A~YF-<~+Q!D((HNIh z(&di4muizp;k!&@)2Uzvoc;=KVWqi8{Nk<2WXkyO$@ijv`GJ$(%U9m&OP=euqPcae z@9Hy&_dQ%q_i|(iKy^Ui!PG zVhXo&I7D+V&`Wptp4P)=boIB^Bkm(CYXiTimi24(GhB|#C%*hn#b!b4O7U%&^^kYA zcEmoRj)x@ZNu#!xe%HiwxS^p0TJ-RVvAMU&1Cg=BS@cw?O)NR=7eMu_U_&FO#ApN= z^uW>9sqg)h`bmZLa!PA;$OFeP9MT=2rW7w4QN-=%40;d{V--cIdM0hLR^a|tuQ-I& zyPJ;^7g71!HR(nt?5WYG9?(W#N!6oQjP}x~{EsHuQ?DqOhUI@H>*c2NZO&Xim+;zD z;*3m$8Gl}yn7NAij+K7aug%O3lOcD6dhc_C^4`urL;e^Io4l?u{vGwnBai1r=I z{5~Y}w`J!J<99up20efBJHOBG+|1v!zjI|q`@s8rcM5CyZ;XzWTPWI&Ame%9K7p^z(94XO$*?cEW!Wl}2@?bFF#6>LFf5B9PTcim>l7 zZg_h0_?4u?$rzujpIm4;ziyXSHaee$Sl0GD%XwZ3?0J>WDdxd~P$d<^k^D^2lYZYd z!SrX-%mr>UKbc~haX-3=Vh?^#A0tyPpNur0h@669V{4(PH%I^g2&ePLT7jGoyP7=8Vc!05=*!05*IP&8J? zTXbc`{IQ}jaK%t_XWZhc$$G3M|KR&d=Qb+Z z)nzd&3-1rK{4jP_=@rtd5R#p4z6dpgAv}POCEOb&(+s*HZi)?1(nX-RNTGS1ztOk@Ic(6 z>r8~;#vKr8U%P;Ga3Hb3rSVHmH? zAxYThHbY01&TG6+_rArgozeS;6s3Fj_Al`dmi^_`4E-`NG*NkX7_M2=Z7qL5SP5W;a3GoL@UC#c@0 zRO#^t9&nwooELfUQ1m%*({<4;&W0;wzIgeLSN#DV(r_(ziw(v+zp?o5D9+eF^?dK* zD{~K;LN&pI;T$qC8?H+)xXXE~3oe}k!`=Tg+e^{p!b-;{?b+jH>2c?uu06%KvrG|R z=>({tgMOEi-Dj$kQhmLNhu#x3lWTP(`H-yOU-CAMf@i&t{>lU0RXVrI*U8DOW$pcb zul%Px)I_&?bBHvQF`jd$q&PYIJ@N#VcZcv$N)?8nJjkjRhU-kYIlZud_+2J+hj<_C z$3vf8J>9=KUrD#m^Y!lC{*F@Z_B9@A>^XQgfrp>=>gfru&f`+YWmzfy>@nARsf7Ub zFVeGmob}d>5B4G-R5~N6v^!u!q&b15)U@l0GY1ISD&Mbk5|3u$Bj5WVhljo5!>n&) zRMxk-I7DTzr8K2T7kN?g6n~W=hCRVc<(w|L?oR)^wKt`2doK+0;I^C@ecE#m#VUV$ zvSil;i;WaN-wBoOU-kFpcai&Bc58Vru9@=JFMs)54p~<8G%I?+sNK&S)GL#E{QZB` zzSSielcXDM1#hO_=LeBqaM^QrlUQzpcqJ8g-@+L-r}edFF`FSEQj(CEkznMc#m-R-^h!u@ntC7ea_q%XV@<1 zxu5uv*GQ5c%YTH|wb98qE9F099*cN<-8>d1N(q}6x6Dfp_ArBAC{4kik%N+J^_V|a zx}b0R4Y%>&7uDs=?m&y&RV%S6&-y^X3-XWi-L@U9h%N!0i``<^zneJH=%Y0Ey|Vpp z$(O!ie{mJ#>Q^`&X*Z%}wOQM$nit>?e)sWVcF0T|*g2pZNW(*$w+{>tu5QaYx;D8=ERio$5b;;9&N+G@C1~P02^C#3N)W4Pd0Z^+hY{Qr;7l}`F@y;krbV`SaAtfqenU_L{-&6Vs3(frY zq!<~&rN-YqBMmT8=PCRKJzO@Tth~NGG1%bK%0eH9v;4^7+R@(`)Lo|yNj_mgU1qWi z#}xQSD}g2 z>5j8?f(^l7nX@qWd$;r=DUEg|zA*ZZEx532niR_F;~Sz9OVc6{=y^<(XE?a!mR-%! zsk|(lS0BHODk*)3oYn55uGO`YX3&b;TM>bhNBXw- zd=U-S}$Kx&-hpY@PHUg9bGD4FU;wd`9)IfvY(elvG>*5j(RvP7KyA=v)b zm^_?S(?wuMEsfvh#o3=YwWeLCNoe}~n)1}H@tRA~CFxLJz&OjCdZpXOn;tnv4PP^2tLJ}%+9g!7# zUO>fP=v|Be@s62 zOev5wwWrSUYPt|!Dy#4uv?gtU7HDmwE@1ubuW7IjbiqQG>j-7v++RcE1)BZDHENd1 zo|~QWr+1Q@JbVG$(tU}kybiQHL~8`US9)07A0AJCftDAf8$>JdwUFO`m*2ES>}s~a z(IPXfLELh!U9|4LL>{}@ebBL(^bEFfT$NBqe^4ho{wW^B=IVUijXlhVAAq1^&4ce7-9$v)a?jmAG z#^+85Q}B-mQ+4a4?(e9ZA#c}4Ner~zvhSTH)7t!n2wa zbCZ54*+Z@ht9gts(b&NRCRctFD98?6ux3`^gcXq^ZYz>Z7FP<*nac{Z<_?kicz2)E z)KFL)4w?KM3BrN1dC}Z3+?T*-nCkch+fB>p$kgDflixF|ICO)9MbAqD-qm6;HD4jk z2JRtxiK|~q-{&1(o*AO_tR?pY8H&IpYNzBv{`)Qe{fYn9@n0rCh5yE;OHu(}gsfV9 z@mJvD@6$sXm_a#Nq;a#E2$L zz@3dByDcsbIxU@%vst41{5icuZwd6~9FfD=Uuk-ZvI;2kPrpj%6kXJxgcF9fOHSAv zI!Wxqt>J{W1$#JtAf2G5;LB7del91ntNeB?M+|*s^3;XpGDSi1+I8gUT$`zmGWIRm zA9N23#paeN0q@7Hg_j~qIS=xQq@AE|NGlTyux7==g(C&60vt!LV96R64=pr9R4B+k>vtiCmYlzBjnTcz(Mf zkfz2Szuf9mx6ZO}#qmBFhSKi5O85h8`53luVirjgzLxOzF@f-b+_|~VC|8h|qALZJ z=e!5@$3qZVe@qj^%=|tCfxtD1DP4hY_plYeBrg=36&z|Nq5yNa&KXQAMwZ)?MKi-b zAmhcWR+Re^KTFQV*w3vrKbsQv#%zqy-hf}-W(K^tu7}hwhXd|8e@KBl?5V*5?miM; zqB~!>nhGW93i$(nsv+s|q+1W4B&j_n!r#HKiR*MOA1G%e zKo3$@DI~2381(MWq_8K+*s#vo`404{c6?Mutb{_B-t=V;FXJMKr%8Ud^Eo)ezd%ya z;AP;vcD_l@A#amVjS$VkF6_cC zD1u@YFO6WWH-ue4Nl0+B%H#5AYSr3$<87^_)mGH12ovApP}WjmqDs7WBu+*E>@O!| zP(>=db!+rWUaaG0x`Khq^c(qIIGwxoxwjn$`cps$?A`QoDes^j1J=ly_fv?2J2>V6#{%`{B_;Fmi6oXv=T5 zWu)4=lr7R4MfCAj*FAD ztmK>EQrUI0{2fc=lqc~Zq9hELk@XM*ZN=gmNxqTny4>rn)?|F2^;Ntkc)kqhuZ%56TGqQc*cSSr^Pdbhw zm{8zUGr*LnSEAof&!sRoNsmeyB4Cyy*}QTG!T5xhg%`df_78f5V*$v&|C4-y)!itmavB$*Ful3@>^nWdBW?_} zF)UiYA8QlCjT$%CV_WIfr_l0k1taxZ)g5t>72}#rqG7`kR`kv-+_=# z_BmYc6**g7pzfv|Mb=)6oaxMOpGx90n_nl9XXL8ssgZjGP^$%pZ>} z1Cyk@N`PxVOeq0Cy3~u6k(8mWGyT!P zpNQ-;ncF^3VUb95_-O5)1w*`WY4mwOC3Q>=IfFfNNKox3@AEkWT)|m|w=Kbxy4?7O z{GdmrZCdR_^*bPMF3FqmYQl`1O9eWC;+UJLrW)014OMcYg#49~-2Y&cUUtyN!ZHT+ z{N_>qOq$Q(s5wrz#rA%MoRSD`5dHX-pSW>4X!bn+U25>Cl^{1(<4h{(h)-{c z-X0<1+)Unkp1^D*c|N)VUR@*}gu4HbXQhEUqaD=SkAbRxkph|rP{0XX|63}!qy^*B zb};%V7^i0ROj(Ghz^tfOeY2r8ljn^}d7-i=WG70Js%G@LKU-9Q8s_W~*}($^fw9rn z7of~hM3+6oOdqDwuax!qnPd%!)}G%XD{hyBhvZk^jFywOP`jh|^HeS8pXLNRce_Y) zkn*`kTH@G6ixe|oB{(Wm;@_AgJiFK6klQI~Wg+%29f zFA)l4dbIh4`DS8)w)*}LJr0oByYBKQDIfxpT4%msR1-0Hkm6_;~kRq1}R`Jtn z!@IyJ>ys*M=aU0Bp30pm zY2jM4MZF;2PZ%ZPdALIvE1Ul;!R_Fa{b*AMjWB-)x}1w)m)h?M*{#Un2bwALAgsvff(I9ZR(M`f)N8SSpWRu?dKdDXnBb7AR zYh1K{r!?deU?S(R<;nAD3%D(x@=vv?(6?vkB`);o7&jTfpR|BKoCbcs1)PXs3NTY* z0#*A}w8(JRY_N~0W1Av zyB6MAqI#aKg%S#@=oS=0>O6z9`zdAMvU0|%IS+UYUL!Du7r}A&UBZDu#l!6+@o@d4 z)Nr-X-=T07qDPDxSU|BF{(8dW`kC@75uG5_aMcHZxNkrEL^mxIltsbbdDS@`vSRXq z?@H7bJ(#dS-b7OT)l3+_dkk_16C!5!2MQEb6J54k=~t%wE`xMfYUVBgIjVOHa1(2E z%~!;449fXY@Pw=1uIT=kWU_@4c)yBx4u^yW6g6*BIp&)s;P_c#2tU{9*&;&HFzZCjjIi@p`N`t@;~9vh=qjFDiw zD`R(pd?6c>&QVD#Vq7J`UK^u1qrjxz5c@v)t@0aVV?{P2|0{W~Q*TfnNEYx`a}?#o z>rEb~z5T57bbf)Jp02w}IQrIdiDe=n-$9^E&RU6R!A=A>2+#Ck;s#zxOusm2F2=Dh zrWWJXDoGaOq%V`$POa=T##?xY3PFMO=z*%e;bKRtvmYqWb|kXl9dgI7TFA0m*!x1N zh0hO2qZZDOT8?@OYzGCl{X`~#zN#Qx8htJebZ#b4HIZuPFv;Um6Dmtk!c{Su!~l@_ z>~Yk5BL27f45vKUo`3k! z2NF~v|7R@0+A5MWgd4vGXP%I8R+it_S5|$t zD)Arcni42vn>R%vkshwe|?@QS*&1Qp6Zh+GbN=0dRA*PbG<`KJgQ}yEPD@Q z(69GBD60MS6Jw$hIqE!>$$$G>I()ijR}s2$o>YS$5S{v*qP{-x@@GS=7C9KRxsCc( z_OzUvDFp?y&EaagGy22Tyv`vfff`E5^cLMKIvS#x&*Wgp9eeh6^ANNM63sFX>K)T} z>`5gz&IMmb|9sc+l-x#6mll~7{+Hx)i$v=U=@1Me`toZchi{E~m;OXYTKyM_lPW@m zI<^`)A8$?8t*3pqEb8*iC}elHRFr_!J>}3Rj_>WGnx%1ftiD9fKN8Hb(X|k$auY0v z4*An z%(qY#cfl8kIk?l#Ll~F|)r!M9eO@Ss|I1KA*O#nnEzd63o{B`aNI z;7tL+SI-Q|J@@^uD*1nrR43|!OO9$5!k$mnsh2i5Ggx&7t2&%f(5zhp@M)=nGIp!b z$rOrTqTUY@E8|WQQ##&N&L9$^z;z&{uQCRm!Z6i=`4S@F z2DVux!2@JON^Z>PhqGNjmRhy{p052|W^I|%cKvW=^dmbHAASqc9cf6{9t|lIAOHMo zCO$5+YM+~~eNskkeO-9XYa@%#FJk^1#hh+N!jv7G`#r+nTThm~??Z9OAVDVovF)+}o+Am$TM@H4U zmZN8439l(6DYJ9tOni-jm~05V`WG3%A5`A4jpb(S2SV96drpkZ5DcP#I zD<6plRar5KOSM2?)TgN-L3I&b|4J3>94Xu@*~Td9VL6kn&3j8y!@l{LVKpfOiB^Xi zw@p2$%pIrzN*x$ei;tv{DoIZBQ$DqNs`fK9Kb*b4N31~B??=GhG z=93Z~61EI#k3P#yNPM>t2~Q8j*Jk!GrEg95?}6j>?_-pt(!ckAo$B9TRg(0td1DHb zvfr5?CK9s3`$mPjv>u-8dWdkAd) zVMjr1I-xa_rCzn_tFFB)dNT{~lbIPaI94QUJeZkrAS2_p%#8V5ZYFDt$jorUa+mbV z=%+n1_Zk_67}zK4cFW8aJ*dJGle%~vtHwgs&IcLl(j>AJrivKK68@hm(;#KQp*K9G zAhuC*#R??};bkjVpYM1*+X70(1tX=LeGjp5BO>=;{#~issI{QmSdEJN5-0twT z1xiriRKDI1JFF*0PW0W+5h2>ml)gE(J0C!GZruiVjT-_HfM^ zJaK^*Tt&i4XVEEVt0MY@g0Sm(J(8%`UC*y{t!0Q4*QV|tiLc{nYjH=u?nq2QBfCal zV_#Wbvt~f~+-WLaW$+;8{p)6ILeN_4vHwdT5^7Pk`!m(9yI{02@J#RE01fw%6r(b? z2vU~ED*kq3u8CrOikJlu%AEq9#7eU?D!v4!_XAETR?|Qkb4{WXO+@>h4=5z4f#zjg zr$D8dDOMASXeTpQt6k5OvE`uEdYfOU#AC~45|gNT+3KR(xUrXs8xAfB_u>lwUH9KN z@ycSiJ}&nh_u_ksCkO5$O+Jg=i*LH?KL4bt@-*bQ+@jbjR$+3A<^*JlqNgYWbPN5r zq}%9ewjrZ*FScObp9C7X@9z8VpK+f8I=RuA+yB0av3oOMUuVKzg5@{%iagin3*W=@ z8A#D4dg2O$<58mtO%mkKZnic|QUvLy6IS$!2`19rOuVY{nG`T-gJtrYH7t|V(tudV z6=FfIVL;SD+cNW#B%RcW&uZJwG<^`Z#2%?xHDK;2ArGuuFvZz8V>377ZC_ZG)}+aO z@`>wr%c#C(Wygz-Ltqd8XpS{aU{fR|gTTBu97SMa-0m@M>1d*+2VX*Arxi~g+UOim zWWO>wNQ;=jSt8nnrxg{VO6MmjTygriOR#w6OPA*v#G4ijbTQhxShx&?@Tp$ zq2hKQ2}356?X;>c$q%2hN+@pmIVF-Av&fJ*q<9b)#6rR-mKyQeyR-tmiqH3>`E4i$%| zoT#4zWk}MGBr4XOuxK9BX4zvn9&_?UEUa3j8aVxsu3GI1_}P)BA-US4HWE$epl^f( zlFmWaLepw_`&6w>mQ5#fAN!8F!tHurSj@jgqsM!_G4X#%RXLDmpSWPk))yy*vZqg* zWY(E{`#sZQwV8GHr0ZDCY;WI;e`;V->{_bG3~t@ zpOv~+%HQ;voYT5sry*pwpQo9`7omZ zV^3y|PcqtVCER|gtweMrib->{u^yd;w;a+IA;9A=I1E)))%<8K6D?Z1;LHMasjm6j z!yTaowRzU3JE1Vwj>NSfHcpwdb@9a)pBL*Yb){Ju#3qp?%zfUPtq)0&*}DBfbG95) zr`{gh2tLGUCOo1jQTMF$P5FeIFqT;`yvBo_y@RWm@wY4(lPdiEg-XW!;#ZT@o}yzD zn2hPns|UJ@iX5Fc*1U_-mm{lawNqi01Yh+Mrd-jFJe)qtsJsff>Fp^ZD{}{R_L!rD zq8n)vr=^b40Tyc23Z^o1xobfuCD^`^9U7fQMRsm}ga@G~4ZklQsdBk48>ANchQZ34 zKRfsveXa3eBK9%AQYbsi8ZK)h-|S#7Nm)F#Vp8#4cNCv30%0Hb;<1ya-5(%L$%m>k zvY5qHzDVn6P-ue)mH*z6(^Fdf+_;3s-azEi3SLa zrREvq^rT>*P9%q-r~8f)7*C=A0;5`yYC3~mNioI63yYKU&<;n)COkQMSPL~PA;C9a z&d}~sR}FsZ!FqJTj*O70ijRvO{sVhuhyZYXTpRZ_z zGIYSvb7N?eK9$W+IBoQ<44yv$e758HtF7Ev6U<8SeCeIk6$Q*|R<7J|#>P-LTIV8O zTwNci;u`)heu^T261gF92me39|1V+5l(43g{!nrspVm(vSHJr$DpJw!em*Oyo+?|d zlCBp0U%l`Z{-3g}aab{*f{P9L7sr^y_cs zpEf!5M7@8Oz%3tSzIl#?7OJbP$!_gF{9vXX$oJ*-#_*Cib?WWjJdGV@|&t>{Yc3w z@Ham?=xL>z#8hVnVA`3^SuHAeg z^o|$pLtV=AhzvRBTa}rq5lSFtO6eo{kE(mp*c8jNC#0TFN+pM;zzy2UfE#P*w z8W4`oBL~UeST4^VUYITb*u=U1fXDFmEAsNJw2Xs0!EQ7YIF-!bYFL!V{CNmd`?m9_VHh) z^<}&?W44$79EIDpm#=5E7fH5PZMJtos=e!rR9p9}wxYB(_PS`mYzb+{)vT}s-K<*w zXjVW2Ndbvc6&<_mAn_+nI>3r;Zoo9eDpb_hAJZ!$)NhSmNU8W~a&$h6Uy|qFkzQc% zSDEd$-!l#2&Ovu}vBIylqOO@?ttj4Rs1w(L{LAQqtSF<;&Ht2NTojvoQi^#0^=mdH z+3sJ33t>Rb=`|Og*Bo#GnTyn7qL68|=dwG-FBQYC-shRNfscp`#CIOw2#2wH>-(Ft zB!5Nh0N>)7#r3OYch+6(&V*QYMMo@!Sd5Dnpz-D6?$_$iIg6LbS71K4S(qMi&8%E( z?`xrJ>+(;n^U2ebdk4X}4!Xl7VqlHavAPJ4y2&Nr#aO<>?(Eh`v42Ex+g9D3oeARX zqd?%LfSHfwrXW{_63=jH9oRwi1wo;yEI=rHVfsEj+AKJ|G`cBZG6B%MLM07m49#x+ z1(5|x>SYqs3*S{^HMB{_WT=oSa)h7usBi|~vu^#=qpLV_j~5!l*BpBh4jBD<8_eR1 zr2Lk$kC*t4X&>DJN~U~tM_-i-rq6jm?xcB9?3VTpoV+Hehl=DNXym-OBE(`Pa4VGg z(Sfp+W(O$FruW2Xp%)Iv$ z#J;JF$;nD)MyFK9{SzxqKe6{zGvCg(K=rxd%NbdVb7>kW#>`tso|-ek)$fNWTwO-> zrQACty=^lm>(>^pkV~Y-FMMjg28+H}c|UIxZkP0{9yIGkh9&JO!35MYCp5p zraz`Fb&z%0VCn;ksM>flj5 z>tO=>;^zR9d%b_tvww|LRA_vtsPO2XeNd`U_p$&J708KzSv`9~0qf&dz}WfQ<7|cr z>`no8(*FU>!r4%>XWiQMjE%O5dB`}Mq*+mWd7Rx>7PqPJp3LaMX=kXVZ1O1FTUrNulWwU0C&nBkDSIt8@-jNZkz}HZcfubEx`;BQ2cj|+~t2&&=rj%a0Qu90{?Q`2JDD0*08zTN&cy;i(`pnyaPJ6*V`DoUWqt zRi<$8|kQ#KYr~DSe>hdFm~ab4~vpGIzW){IUh)mh@SrNWtrG9?S=l|`+JMk*nimH z`&WvnXLaFK)X$U(RM2ZA@{oN@EbeP~) znXg|fze@t&2X6 z3(4|hrM!{z8(^Bsl@`H;5df@jkzC1@P{0h)d_~6oEijL+|_7|HV&9%Kv8hGo<{z zX8E2O`qE&M(n{54WO-z?vdQU1*nlz&Cae?Cz4|MwZ?A3H($ z*;4**X8EZZ<$rO4^4ClGDzp5^jPh5Wp!~&B-e;CSE2Df*t2}64{sKk1kCJ%dWy|FE zdL~ld-In=im4tk={@46A@f9w6M$$LSjEBn}mft@4-Iz0#-|`>H(nz(X3Leazar!XB z`L`^WanI1^c<)T|cB0EXSTG~k$bQFR_=h%Y?>M{JlHlBlNX?nXxC%>4G4S(gFMgOIA^1$i;45@!!Cu zE^X=cHY}Kk9%kR9E8ctoyD3|&tK>7Rwl8<+)L`+x&>uXgup^{cpXzZ{*8;PeSbC{i zF`fOKa9#j#)EuHSnIpu}b$PN)NAS=9{~m`ibZziJ?u@gYc4B6@78%(^CO|;2don^c zvA3o5c;95Z`c{C)&ZHe`6U-Yd+tkMmHb=0bS*sPTu*0^&!Hc*Ku4uI9m%A`Jcw8sh zg#&PK2gwPW{}!jd-Dy9R?%?FQ*5x*TH<#_(5ym}#%ZlgM8NDwH9_VTGeopg#XH2ls zR#jdqyI^vi)5yLo_+!suMqZ8P-50Fy5d2Y^3pR8J{KI8C=pu~j)wQ4b?WsB!IQ1rn z{%L#|9m}14F~bWU=uv%%QOJ}J92>VAg{r~ACpGVW8QJs89f=5aq+{!c8RLX-E*wiW zCNhOdJrdi`Dj-18A_)WL)Z9(3&}aPF zAgkb_zbcp|g%N2Z?TqWxzac@;Gx_ZzX(PUJg>8P^iAcD&9WJ{HrM>vWk#_{|K-}!gpsEk-Z8A6 zhp5`1^1Duj$A0RyH@bs~++}@7;|KAfHfHObgYuIf4x**EZ3)#oHRlHPuohcI7ly$A zMNkdZJBUf_Hly`2aXl9cnjM;Vol}qQcWdX@@7H=T^g~@Mi`^9s$ewq+F(YfgcB3=0 zNZ%_3n)YiGBC3!#{Jv1L(|mo`r8m3m%+f)v`oYcbi)0&C@~s|;#JU8xb%;c}1zT)} zGuIYu=}7$Hz;!OsP6omH?9&{<11DFPcq-~?@VkYo!R$!vH)qkc;DN6z`#ah;nVB0^ z<}GASCv(v`blz!ia+LCV=FUQO6*3#qZLd2LEq3aw?CYGii1v6jrS#Ro?V7(g?|K`( zer>hTpoYQq$?STmAVv0SwU4m?=NuZuznU?Yf7x-hhr9D563a%aECe4V>senBo4+TB z>C_$w^Q5m`x5tekPw-$z{ossGW1rA`$$ELo7#h?|fTXW(+oFFO+@<;ZVlHe9%Cbha zG6gF+2>sJYB3r9H42U@g2}hRD<~8+|KJBf(5L~@W#q!oho4*%5u^m%e`Vq-Rr1-3@ zAxj2S`ztEzjgdWtb9N;v}9kJEN znrV%FP^?CkRaZH+z`Y2H;lDlA?7q$MT!3HG5#VY!u7RxV?3r?*!jY<2{R!pr$Ei4syn9i;E^r#xCf+2{TzXL&wm$w+*>`fPTc!HLGvoP{Z5hTc>@qjWy$&>-eXr9~^d!4i(#RmTsf|M~>j( zTv$`}1m^egzZFPdb~+9BH{J?jwyA=pYaIG&r#5<{hfm(J?WhIcq@3)1-#S|BI}(J3 zbr>7XKTahr&voe^Sxc6Kh*$s6f#)|@A#CB57a_XdRbTq}msb!T${mSa?T#Ec)7Dgy zPzt{!f48klG?q41ABZkLQ;z>I#$OgSmKQ<=Swz?l9^vX@QoS~BH{U+v{w|JXqCj%| zQ}W}TkzZZm$%P(m=|p^GmN%Ew*Ez!8M~Zl|Tj#mxQ4alPJ|gjAw?v?8soXBHzH1+$ zu50k*yvhe0;n}%~#;BX7na+hcCli@qdV!~6IKi6=L!xqv+Akt(Fi%S4R;pW+XV1qn zumm~k?5B{Uu5$2(PKA0QL%xZ{P4v46zCB)jU;~AY{Dwjv3Q4qZ(cM>kfSjPZ<!o{C!vGx6awhKzCPm5&s8B6|cMrJE|{fmW@S_&`~X!MEg9 z6>@VHpPeQ>#Siqr0t-uL70Uz>NaZ+4%D%82lBU@$BprE@@t<0rLXvzRgQU$;s2_zu zk}=FiC!Z&BuCpKg*(tAlgCzte1{~@Ok~{`67~L%x)A0VI?hHnz#kwsMS2sHaApFx%eea(M{6&^sA+dBXZdxA z+t?kw6-JDT0TEpSnuz!u`nGyI*Tjp^_stDSgph@^b7?HPqL`qbpUv*dZ;U$5qnzhI;>?)Qa9;WKvxYV_}$w zv8g^xD8?DzaHN_5HT?PssNuCCLdjxXVdU45kRs(gO`D+_0z5~{C0DOmL^%voYp#fk{#D)@z{=FTU9m~Rl~i14`A z*>xOq4hc1CPu4s2b&+iae2W=@LmRPrjNyE}DAJN`T$8J>iR{dsgDp%VOB=CI8_}$P z7x^-K4t>EIZp0VH)NF0Uehl$mFJ$L0GKP0B@?@{d5@Ywo)!K*;wGk^}Wpj6MfF$yG zR#rLJo(r_l7QU5+veEUCl#gX+BZ^4ZL$7s{U(L+RCtB$Du#&Lr6RXr;Xq6IwA(0u~ zTU}<$TG&Z@_;-9ef%3`dLlyG$}-+7MG6_qDv&QMmO(N<4tRaSmxUWUt{a^4gCeeeH7V`*Duw;53GEL~0?(-jTd%r$~4l3{T`` z2k7E48N)*UL1^>Z8;H-HC|Q-{pN_Ee-6C6kmnPl$R+0LE1HRi^dpTm$y>IoF6#ntP zTWqBiOA7yZ-|c6m^iv;^SYMt2Af)xmY0KR(6;A!`LfDP0HNV@ZBaEO*6_%Qa zy3V$^Me{r;GhUk7isd^+zsarmRVma;A)mf2Jd8(v#xHPJj4ZS_`SXb-5uUWLdQvP0 znbB=H!w3T2#|kAe#UI1h91fQ-z$>uoUz|>9u!*85dnn`Olr9SQN5e5 zS^5mY_)m$wLqh3(?cqOB+QSBKZVADvnymMPWc)ZveR5_~83Jb~?UA!h@;Xx-xb`OU z1uTLhvMSWe#_y^xb-k=TekGo3@?-~;>(?B?Dv(kpH);dU$|Ze=|9*3etGrL_7EUKo zi7-OfL9tAjC!2<7F|){ui4PMid~O&N{qYLHqf7Py`A*@{huC+a>;u1$Qh%cq%>;gz zq$j`!{uIBT{GpORQ9&`c6GtYP)OK>Z6q`&j=~(Da#-_xhY)S4b$rZ3FBVWF)KDhO6 zZoRj3Ve4ZQI$w1GHaQVR!V3prNkSUhyxaIGFe}$jtwzfpGx;k&vt~T9LVmaM;sfr>+3e`c6Qkq_nBGUB#Us$2fXa< z4Z(&V{3TLxyW_nJfa?J8Ue072q9~*kBxiWUVMmt+pzI{wu_5a0vXaIeb5=30S96Hd zL&CO(hn>%?~Z)Tyn z^98!99S=24yp*%S5w3rsDYAO4wMhu0K<;ETBX_(pT}mhm zx6R6kEv$^>jy?A;;Fz-j^Z`nhMv;)yO0&t@u`rqKo8XBIC4k9LA%_Vv4Bb^1zk^ts z@`ll+I1!b$xjvCSATU725i-Z&s?#315WbnL-a>U(UF-sqf>ocuR6BFjN@fadS6%9B znblI*_le$QvaGDEmg>M1q>tt~@Iy|$zE7+pEuU<6U|H}ghu`GTG7iC<9aqDPiuF(D z>=Hq{c3nXKkqVKpmGSFA>>{kuvRiMrAw?B+ExV!tDit$JXHt$NHQDV`$V$MTf! zQtC!Z2~YV)Y@%8BKrN{!sk$a7X(J(3ImJoVNwMA(ixFiJCC;;u5r32n7e8H;qeKZT z{X~2GsXd@#v&vLuWHXR~g>b}7#J1Yd9j$5G=qTOi(0u#!wzf~*64Z(Ejz^jeC(Wnjh>A%{R@f)c#mEO^5yf%8_&sg2TM#Q8a0};`R z_#Kw|#A>y=qeI{4wGq5-olAQsB4S<1XG#95+M~I?PUD`@&1hOZrJDj@d&5dwq(=A7 zZsB{A>JgHB6^hfeZH6m33=fx0`nwrweCP02SF{K0@9 zBjDYMHAp)#kA1Jhz90Qm$7wkTPVwtT8RI&4LRw9GSl~Cvwt+tgs6b`xZWD}63iMWBl!i#YQ(%%BqJPby(0K|9 z&%sTEfaCAcg%y(Aa&bx&mhV*Eq$oUJ3dJd;hEV%Gha1^Un%N4>m$mE<;qX=VpcH$G zVrUye0taowEK}PsozIwxbZu0j9)0^7+DBhe#GmMP_L{JvQo?~6eSg~)Z;QBGN!>NsFb!eXNk-&j6 zac+2Au&`uR@@O8>nd11y@_|Tejww_#q)&! z{}{b-FuEGf$=iVHt*Af<2WLE6tMr#)@1rSouzoYY)7s!2a$->-6P<(a%&W@b1};8> zgFPDI%UDWcU4yPuPHJw0_!IKCqCBk_E;xnxCNYS`dZj3eqLqalWCt;=oo6$xXI&r^ z6QGh>{T)fOR2b!#cD#U zc+HX9q_3b{cLf)>N`KE4?t5~)6p1M$mtI4)rM+`)A8Mf=(1~~w5m)$^g^nsI%xC$3PwFfd2ff|qle><1h;hz9_l#tCgWP0 z)Bd%I-vQy7+&2w;$72kft`Bfi*KG`0M#^k`O16B4XL9~arsSF_+^q~*MtifJ`jk9r zkJETTupv9JQ0~A{8XZ}sy|aqu5Lr8Ljg_)+s|yb-kk)*(=F|t`#x8XmvP;(mzG5Ht z>OM3y^Xay0@GtYKa=my41cfa0rwc%bgT5phefkH{@f^-&IVokfpD-Dy%+gaksF$d- zl^}$MVpsH!J(<``nb?afnJ*qnPN~=~A|bUerzDxqQfw^6WX8NwV<-Dn4hfxgDu-=o8d(Fz5Pj$Diw4%(+g<7vbc5GYixHyZNTg z+4_V$wF0f_e#4yZ%_o}f$;tVq?lir3fmv5gH!);BGpAd&PIJ0>Wi}>HetY#7ZezNc z^(pOU{Z{ls*0S~($ISZGC*hW$w^64aO3GvB;(0$KA$WnL-aLJ#^c8t509y)i*>9^zR;hi%*XVImnEg zM9@Qs02Om!?h@c}KVE&lBRI1tE0B-XM{s5#i&e}sR3_i(PYii0Jbr;x@yYHev7qDE zmwe_#%FFM>B!B>l|rbZJY9) zYCS15{aFg_r;yb^;M(~AWSq#g&_aL-(ChijkY(XKuZC<6cU}*f6y|qzcO@%op zds{0(#6yS)O5v|PQ6W9E?wA!sQ4}^rzAofg2SHshzGk-8>T0&3!3W1NiJPFVIPL4W zFVUWm7(LZbu5~_82ZQr*a*l2PE|I8-w7@*H zKQ?JW(c=hV_^%PouIek}&d`Lk@2hEN5TUQz3Ppn=eKl1kXrZL96D)N}eC+=}@ECh) z%xq(OtIu|Q!T|_X@+dg;x$P(Bl!tmT5lKpvQ-?Da|17D0*~TwbUQ`3S4LNFIAro6o zved$sq0xcxzPH+UpUH}3{id;mpS{S@h;pqLtfA4o946w1AnfLSkP z`cQ`5g+tvAf3*c_gn%jrl-gaYL^u74l#QI3+9l-M1a~qw?*gq>O01=X9L#*NUF6I8@iEe4cbc$!O1+B| zY;}<=-)5gq;TBo?w09aM22&z7kSb7>Vr~sa9gP8`RC{XVm%>hb(~g7 zBP1!YH<8#7-O$2iLTo5EvjG0B0N!4VylD*5&rf@6TupS%wCtqhHSy0QzCEVvyg&J) zx`gQ^chx~mJzx2lThHxh|Z7{vuXw9EPG<*zkZE_ z8>DdA;iCz>Kd5l#p3NE1UBTwT&F&h<5$@q1oF3i>0RS6b+>BzMDTu|dI6XcHB#b3DPatnYEPr3 zKS4c{`k0izqP*vmdabw2B~@>usyBSjwfq)(%vX++dX9td_&Me&_B#kb9r}pWA_7AC z6zjo)LGI{(d;mzpf#hj);(E+~;Y-8UW$VoZaMH3wGnlB>ugiv=IE@-ZPr|k#;k17i)Sy;G}n*3B5#c7pnn*N zcR=?C4ZyApepG|Yn{QE5i3=bnlLcfx7pHiO3CO0o!0I4d%4!o_r^!A+pX41 zTyw08n!hezR7{I{q;<1XZ``n}OPfQl>{ldLKT#Kx&>P!4n{u)XZboYGWr0J#{5?@{*dyu~F=wSjHzCno!QD;{SE;pyCF|L+ z<-(^yUm4k10Aq$>jo2I6o^1@x1=+iD)r~f3M>uBdM>7n~ zb(f_|a-iO*jc5$5pQ$Y^Ceb`h`?EpwO8Y*C*cP>9cyX2e{(cDTtKN#r=bf9T@}UNc zzkR%H)}%Z;tnWo7snyDEqZD)H`V0<{&N+vD75AYb;OLw_Z#lx_9xrlhuQ$7G7(j0j z0o;JebS$86Rk&rme-8xi(;2-tLW$$YL9K=}e_0)W_Z6KAK1@$JWC z%XJ?6ULcVb65$brgNJh{{=utx_wfHCm|_)rDtu_I(7E8j?=||_(AlGKIaI`jCpI^(dXM3J6gXp&a6F9-0>@`RB&IoX=jAi1i#)c~9;`Ne z##GGJ_Bn#vY(D#%_}TD34)u86Z^eCIEV<_hvYz6f)cM&F9*=q6ifo>`(`qZp@v+;i z7Vj{z=_tptWZ*KE+kR&_dx^)^6!tF3_Sm?P<_p_jN7%nCTe7`adfN8s4d+C7*N{l4ZJsPTj#b#bRN#(@`76OYk9V>^mFZDaU&8m zo(T$?MjGDvg-QMxEG347*hx4NA64&<6T-mN&uYD*mG~?57O1)hI4?;XN)NllJXh;M*+2?uYaU@L+-MF$*lJF zl&?Eg%XvdkhB_HL8bReT}^&lTcH;olL?o1^CiG4N!XF%N49 zeCx3vblZ6p^hj^*;b8#HL>Kmqc{V+-BQ`*`Y~9-ty8y2(mmiond2M<8!0yRwE8s_g z{3zrH8bq(Hh#%M+d2PM<(Hk2ln^2*Io0|Gs>~rXvf&1+Hm9bK${!W=FVFj?ErAxD( z{g(B)c|#ON^KNg+*p98mxVPvCmP=0E$|+9g&@(KUQaSz7Idpa0yL@ln@HK;1woD!l z%kzBtL2#hFne9Ky?m56h8T%3IZH_?L*=3_XFz5&u@+I|6{DJqt=O9l%$q`)9A++A5 zx#XIw*^y`x=>bJ;BKp_wWiMe9B^~v>5 z^PTr<1$mvR*kP~MBaa8B>aibQiN3XTi&iUcFk{4Ek$}R_#jg2@kYp+0LH4tD`vLEd z%VzJcxW3Td9GECODwOkE6!hbsDTIWXkMNbH4;~iltPJ}`_{!Up;VaE2i99~&J$|dx zYk|nz>~4C_DFGV{AL&jcGGk)xf8@>&y2*l>lDYP7Mldpt9?kV*lQAQ`)Y)x*7oCdgex`H#m)Ie zZaX`$$fDiRvhFDk?y|9aYZ&9*oZs6`bTs=B1m^C&MIj#C$@>oxd48}%V5!d-r}2d0 zJ^6y0?#k%yOh@=ita7qUka{VF*})Y|4>Rc2kMQE!qeZ^b1}!K$dpSCt!e6ibQ;#j- z(hoWq11ez;8g+@Oq%KElDIoM;_aD>O^N`Y(9^e0Q?sS+rDlOrX7Y(oLPo%)6> zv&i8z3hNS0a2&VcIqd(zya{0$w|__4xIr;%qI6KTh{xtcyZISp7;EF7WyK6Cdh<`6 zMO^a_5)mOKkl`UMC$hWlfR_HzBU4l(r+{#AMS_udm@+OYQzvDNL6@JNmSeu1)BZ$l z()ab(g~uFLhmj2}USq~#eN47K0>_%%$~;6j_3-j-hv<LS&H0i_)%wJb^i4_gp}p0C(OeygSxsY>cAi;A6Y+7N^mWT{^B+pNF6-tr+E9Hoy5>oWGWk#)*ut0Dfv0{! z2TZNDH5?f-1G$@w=p!2F5BIsB->P0WGR=B7lVlAnR!pi%PkBEodcs5|X^AiGDu|{f zelLM~n?Ow}BNWw*zI`;aPLP#~Y_((kOsWT$clPLK#Lnh-_zR-I~X5v!PSWhEmh~rj(MS&rxGPRoc7bxb01D9F{%6 zY-6C=2Dhwd#QO7_vAwZdM!8epm$U{$D?Ga)InM=0*nAUfnPb7TWw$mV=ky1a6^ZrN z{D!!hMz&IimeGVj5?yR66C~H)u~U&)rb`q4v&)_BFvHC(k(3 zU9kp-yJA(hAbYhKtu;+AY&4(oORR|(@Kbt`@;T=2dA|N*+lG!W$kgdu#0H1cruz%c zvk_C4`Jq)a(XTx{lT6!(jmoD{u%@qx_pqv75i09NP0A zxC|eTvp?myw9y|EenDDysP%vmPtJ^?BIO&su0laJvLf#>FjcbNv5eMWkoV3{Y_mfC zgv{sdv@vV+wYYXU#1(dJFwuM3!1xW0MakllaCUsSRmY`&?a|v@wnGlXJIF>AeeKNi zDKhmOT+isJ3QLrhHxnyutK1dq#6BFu@#%Y<`XLtD`fGBqB!v2WUYTwOb0zGi+YmGy*4RM{cAiJn}aRD$R7#}6y$j*U2jyzc}-YA z9KdT)wop}c`9t73g%S9}~`rETm}^Iw^+^zFW; zrE`UVKxg#aA~-KvFI{;R~n1UvJBUbp;AnY*r= zegVYwcyEBC^+0ocV}9kk%1YALlvt^6j`!q_oUTaiK!a012(Gjn*0UxyQg$7h=3aU9 zP?pz5_cD6Oe_Vpt+GJJj5}D>a(CMx?2)8?34W;1bBL{+2_1JZaBdB!cyNkuz@RkkS zS9}7JAG~hPp-aiC9Hl%&Dbf1~ZS{FAFe8g=9!M*4DBIr;fR9PbDVeaf!RF7V;2G;U z?ySrWtq*+5YTGhBoBjj)!gbmWpV99vH1natNln85&Tai{j=6>XXk{Y!F32BFXQ;4^ zQeRU26YWtsnknN_vd_8oo#{BI)W|T&-Jm_Xj@;7Knz2O<=EhIxz`tnhJMD&VX>2!O zKBuvXP31K!2RPsXLtlZL z{D&t?83mug$RzOpo6QN%91PwO{-3i&F>@EM4s@6`I@$gF`EN`2P5CT=_iw=@27M!g zz3}^Vhrgo3li;iuZ`VK7TnDvLYtx-CT^(qonon@m>q;CL>GK9@MtkHHMnFGN-k9<> z0+RMld16Ru;8z}Fc*0ZqLEszisU0h``wduF;+UJw`|t3Y>k%i_-DxHF9*xl__jS&S z4J8eRdfH8JOw1TA$yFka82g_>Qu~X7AASyxD5pd$k6K4ivy4v6wE;Ttm)Ic?1|H6d z1jTyw;%(C}R}5YHJ{!M6kSBd#H@%o?sdLoKJ_12ZPl$ZDLdkx2Ky0zM71n#Wn!+Jr zsqCEHtFH^y&m7~a;L+K9*EF^Gvm?Q(=heQU>0-t$Q3{@T*!nT|E|WTP4osaP(@CSQ zrX^%%X%DyJ`4PJen>KS%*k!`?pB(zuoJ-lUmT+s25uC7sVAZ@VjW^Z8WgTS5eLAZn zOLu-F0C>ZH5{`hYJN3i`FPla+Hz3$1*h-LL}+<>!t3|K^X> zlA{&J-0liKC-M5ngKPn@u+Jqf6g|TFVUMKD$?F)$AUQ(vM(*+UO7Lu6cM! z+asY?ePS(Pa%Ey1`p2_NWrqFAgrPoa>KK)&PIJ@&`+~POi%uK8+I7JPG5qT7*4IXZ zyE|vahhaDoze-leTvhJ_429^R(G8IZ^&125fslcMy_~LAhZbWGX z5SJbeR@HT=?4)qeHCWXI0}v^=(Ire04l%4S>=Y})GV{(OA_jxWJCA0$;c?{Z8^x{f z5a{I2W4|^cqVE$ULe6G#=ds3^!kx!n@n<>4h;XIcdAwIlLm77-5iuJi9E7Ldu~e=D z9rl$D+ZuFoeO3<+Seme?*esc7FO4Jg+Illkpm2zrD(k1=t&8A8px zpkEz_aOHx2{CKEkN(Z?*kZVgLe;f(s#Y^g9yhO@WQbraRa){i%EI_|oE*^Hcx8FP8 zk@(o$A3vv`_`=S|J8zM<;#Y;%kev{o_uQ%KOt&Nm%%ZRmFIlnnOsyO^8thL9*s{$)l9FSRX%cGyE%>f26 zaiK&z!wFfed9~2f6pLL3Ghqeh_*sE<9Rq(2R@G){bGIY+c`IgtMTvr)v7K|@kiw^J zv)D|7OX2sNNp=sH+0qkSxT4?JK}~^v&Ukb%Q6?YR0X((qy3CS23l~Z6gkQKi#F@ zhI#5YJnwXb@~_gqX`VWo+raCS=BYO;lg0g(J~3&ph<&R6zq41QLF`j+!#?#J6s7I# zQ}><7U@>X0=rj8HojP`J;3;`koqT#@d?xyLF-eWC_##EnTw8GG zp$v|j+Zi0c1Q|m%&Eohe2FF{Y-J%e-1fzK7T8Q?IBi|=kjC@;Gb7^nO2c*zHDFlKY z#&FvR{f>7PVf*w0SQ}!fTD2%Pg#JO~CQ;VDqV|_YN4P3CdKO(2MxzKNpme9HAQ{u56U0GRR$=~LE&Px2Dw|`FkicwhEdc`sKIux$!P`Ix1=n?C(&TZf1 zwsCvbfa);ABl-YJG~c3WX#FD8n}%n!68q%xEcOEbWV%Jyg>i!xhhzdsyip_{VZ5Nl z)0vz9H+qxMn*`+yEeXXW6qBHQp(UZ8d>rKq{Tjq;`9fRQ2()iqyVQjXAF-|P!pXXD zPB`xoshPYvs1JNeapeR31tNDBM*_D<7ux{T%tkjtO(Ui+TcggMOylJW{TsTL0s z3{$o3aB4o~yS>QpvXt0E2_{eWlE#qIHGmHB9THga?rJ@%bSaUs63@$%R(P12-NzYz zfVJv(z`{tA4*So@8Ai{ec_D{6h%b>9|Nni1mMbgVhGr%u?Orb!&k0I$7 zrBIAQsx7c3`ABj!Gv18sU|Q`bOpI&rZJ4Bs zjq=-kSquLoEWt$DWmTPU;lBcXNT%{M7$J7aJ$HbmsqB3ssMOKE2rB0NiNuG{LbHYG zWXLFZGYfmwLQk^3VH+q{e^cK-Qq}eP^gXei zKr(q*m29Fln+2Cvgqovvs9!)=rjg?~F>+kD9RyYi40+uW$z8TMK$IyEmSAxdh`vb> z+Po`N!+WBS0VXz)53t$O3z9B6_AKJ#WUg~iO*y_qf;4y*hYx;&5`&6CPI`O%l(^D#6?I6wrsApl5vf$ zg@jB?Miqpiew(%KMo9-JACO@vGe-GN4I}A!cCHk9fI{XdGJRKkdRy#KQDj^D!yQ>> zWB}=9OkT|bRl7z~y@P5)8I{U+s*Mz?B2p@kQb@SMufSB2U;Py8Cx%#J0k74b0jPkKlpQq$r}*_CvOk4cI6ziM_#Z$&p2f6vD;vHHD?CWvTMUEmE4W zuUZHb# z8;q=6?heh+9w)htslveYb)x&Ij)~U=9K&m`H^X|=g>Qbd$o5&657|oIfp@)GL<0Ql zL-^Ot@4&m>>`emv%S?cGy;)2G{L4&$f4$kBf9(yxzcyO@%ct+lU}5G>V8(9dL_W`c z(PW?5zYFKRsQ8(68MrCQ&txasBpgjF@`#ibS}$9x-$!V(=HNr7Z1QRJ{;d#{I71zB z%j9l|_H0e<k#rivtm!_GH*H4dbZen6 z=t4}4Fdf;A3{WyL?tMb}C``nLHJgm+DhfhUu$B}_-509oO>0O1Trn3~=pUfkA}`0vPNf`9(2xp0 z1Lc-}^juF;KgtZvN6OP(^F>X{+b>MX#mrx92LBvEco=SOd8bKQ1^*mFtV3juGKrPm zphHvlM6rv=L|&1Joy~JqYR5_oC91W0x*HQEqGSi_OJWDr@3O~TjQ215W%E|vGxBYo zZ>Lg6JMihk^d|dW-e3tF5^TkEGJw}eDonu zuI^ksL^8sLl$b!_aTo@bj>{?x6d;b+Scj~|($zC|#XC$}!tmONrTDGjOg;bonSV5< zqL6P|^1JFYCRl7hS2^k8j(w@wmG5@DMcJRF#C}SM1fqh(;V_W!pCPUc6Gar6z#eXL z``*IszuW?7hn(Hj$>Gu%tVp(Z8oOCQ%>b0;-yq*6#!~(brBb9;iiq1Da0yQ%u*~R1 zj|yz*c26mGk%DB}|ED0O?Ei;RVz3EFb>y!|$&edr)fLvQyHoGaFLj&G8G|P#28e0V zF%Q-W@dm{cKHd==itqefLa#>D7O_TA$crN9?K0)Ong1VcX96Epbv^zWk|DzqXHcR+ zQKCczrH~-eL^3i1iM){sVilzd)&8hdTCEgj*pZ2oAkXJ(X{*-O>JMve?XMfwr2!Gc zVkTIth)Yph0k!(3v&Vs9E>T zPnYE`bEx{-XPGPB%BcVULNLGpzQ4}rv3zFtzoPgZjhuo_#v(+NP{ZrK+hP!1#JoxF z&?1g?=DmX><~J&vjLZIWuo1a;uw>EQQM>cthfNL7`);{k(5-XTfXVBS-c`%ty=%M4 zXh@8BA-~ARM}~dBC(sR7sl?w@H5&t~^_}67&xc38f>A+4pv0SmUJk70GDQhtT$l_c z&UZzR!O*fpAY}1$r^gaza#+5#G`z9!M0v&iR}_mKOZ=9+ty%9s>a3KDn?NGtrz!c+a5a(4?rimj0p0IElRI^ zsD`rql&4tu%LiXs=$)IhhCIQN_4;)4k|*PzdKUTPo42P6GMw@LKjry|_~u{f>HwE- z6Ukh}%O!5cExyMz2(i;n@J;XQB(@A>c5+o3MxegM+2@fr1pfF0SM*9CcHerjTYozK zMvtViz9I|Z(yu7jO@(|a|HWqCrtP+u@D;k;TF`B_a`Y8Dl#U^vls-)w5-^5n`USJL zLT}FRe(l@yP!-a9Z+!j-3BGN7N(V=PE_!UPnb_3ybcNI`ygO$UVif2)6}&kV@no}u zrd)G5c%y|tNn(G&4_7&q2VqNQ-7)H;T*Y>oo@uP94I}t7D^>Bq$NBi`ImyYG&blV| zcWX&b;IZ(MldGK1lblcdF6ue9LAjSBXOEWtI3FaDN)zOi&_L@KFO}s2*CiCIa0>17 z1%*!>c+Ec9t0#=|uS@{;1h+fj5JyZ>VLWgS*nu`M8SEzjXvv`1_Fc(fwS0UI9`0B( z0}c5$D?GG$>rB6Qb;R#&+a6uf_F8NSefV9m`3Qo2$anEoxjlkV%0M5d8fNZ_XDkY zy$nmeSEKosQv$WW?mWB1*#4^{WBV6k)43nT3*us5B~^Q2Oh9Jf#DWIj4&363 zFCW|A6`N@^jU6bVaMLxTajY>gxj9v$N5*1OD^0G?AU1}EYo+4F=}&f}XF)+#z~%C~ zd=vNgdsh8M#^)Tr8F<{4AJHu|pW#mKSzBq{KfY<~;05KT=B8an(>ON$Gc3NdQZmO1 zKKneF&=mJy=bNbrDkwQ(9UTx~?(c^xm!OIf@dNO7E|%o1zcG%}KqY$AKQLXv3;+0t zztYzxu{h>;+&rdGsh_k}`p_L6GMeF&O7*7;1|zwg?a_4EqtO@0VBXJ=v+V?RjYs*0 zMtd-JoS`~9mMPIp&mRbD%J>xtJ((|FVNl$N`UfXIneF?YSfKH2ZU4!5-z}nmw08L= zXzqyX>7R@bZIZuDzKI8#jOG5y=7u8+uMf$QURQ9wjCTOzeSlx2vY!w#|0qmN~(SMOS?lYdctd5yk+CIYptOnZNKR!#_#J$)ZE+T>kP%{IfUrN0} z&DJAAYkcQ_aiwVni4;5U4Df; z3jFd&4viHH=$_k%{r%kTt|mX%C^&=mtrEjz`sXqejJ!;ZJUZ7L*Uy9#^x-75{AGwX zYQP%B81g}9$p7TG%X;dn?2ylK`jjDO&Mz2p)L)qnw=OFcGVrZ>OuWw{MgB4Ce*9q` z@}FL=Ab;<(Jml+Xr5JLW5@KtTyOVF1hW7Bswy!Dvrhj5gF6Fq_`~6$rMpSa0E`92g zg|cohX!sf$Ze8x@(4W_};9MCGhMa>&6ZCDCK4r7O(t}jGI#=oJf#f)l73v?DiTGJy zxR+<)a$!ieJ}CX$>-{WMDI%P#;y{C3bkjJ9m{_CqId#0Cp)*EI_rT|fmLF8mpPTOX z9nKE^bKSLe39uwJGzXHOqLlRgdk)*rA~g6;`XTAR@O}`D(b42Rxh9SBxd3BCy+dWs ztz@s|4yrX|?20e<_H#umI3V}~Vl`@aCYzOGI<**oKg^_xOT+uQ&CA`!a<9MP)0i(} zRC{$!Ka_4u9b)_$;@0~3ZhoGx$md)NJaE6TJ<_Nows?tUD{*zEPa{)|q$_RMKmUZ( z8cIrtYniL{Pco?VH${Haj6TX1vxR7Dvimd8D|_Nc;^M~%{I$x!$R z@3~x5t*TBklJZkhmu4nNT1r=(%SKy_an%u1p}rtLSjd=Ks&`lW8aXn$mXeMAeQgpE z(CGEGSJ4RRBw6FW_Q8CY6Impy<$~vA^IESwFfPOdvf?iLDzfR@GU}FOu}X-kfA;ik zN?hNoVqM!sC2i-BlN_;%n9IHUxUpSnQ12JwI}~3D<8PP4{K(A&dvEr~(y2Rv!Cr4* zEc9s>*=EH9SAuNgSj}wn*U&EKGooa12Pz3tx`tXU#!alCJ)W>RvusajQfN*uz(qB;{0^J6p(B+T&|KgI}q6 z`~e-_a?+GjFWL_c=|Plcl6dH!aAdaqr$Cze34bKWw6r*&E zj4d`Wec=?-{vK_N7*%ouF8rXH)4i>GX{S?>Pdr-1S>((FysxgfSfWd{)+0v%CiT~4j0OyGNNiwuHOe6v7za?GQcfx344H{`~cU;xT1}k zQJEQFOkuB=3>1vxQ)wz%U9<$I%geWn_RqElSCtf(E*)kA829tW@%<2-IkhLn2Y zCU#c7bHzVoaUR2jwiwZUUb5?{7Jh+UJ6&Cf#S864VDh4{0f>B?H!}X(ZeROYv4xv~ z*$1=KZIq802S0!Ts8eo)7_ZYXR{Gkw@e-mhB`jm$4vx*O!L$PZJN?H*_^e?h9mp}l z5-wqzfF%^;#Mgd4j|=b;RQC`|CG_?ugfXKHrYm!>2MG+%L%c?iEZId}oydi*ps)Q+ z_&{R3xLwG&Y;WodE=m2Fr}%VB*C^i7A5$j};>%>|{6StBS9yzDiu>As%!?wxrj*jK zv=Uu!Ki8*}hK(z{>a1i6Yb_BN4{Avk5(cu`O!_zlbT4=(m8J`h6Ryb?(KpBU`r@DT zkBzpW`j}P(s!WM7sZ@zaO!X1A{(-HG}#T_xpb<4$4MfQ;R3Sm;>F=Xv!`Qy0)y%{+3 zpAPMWv5&wLy}}c1pQ8!T?kE@f|x)gXL?l z;A`qK{={!`_}g1ikNAwzC@#JaWt!nU&GvlGKT*wnNN+9;w`LSSyL+mB{iptLCOI*_{9K2hbyacS zUc~)j>;WL*6SGZQC!-!u91xc*8JLuY34QHN%52*TEDT~$j!LTuz zv}yHfH#>z1<6w1?a^2Z-X&i5RhEd76#@d^F!&(S~k+?s7Q4*f^3;9#ar{?Q8}4(THiK>F%vOL$~5 zYw!6S{eRP@|0MLEf&MwMs7$s01ZC+#4qNK49=*Y%7Gr|K=t~SD)FH$lHg8eH{|s+s zs#VcHO6?b9E$s8P51~{lDiv~zAtQ_7t@K#7*3^Fr9ynLJ#SWM177m!|1JCbRh#x_<4 zJN(|*-D=0*OX2|5#c-mC+B!jt?Dw)bR5SyNq1SfbK7uhL8iw7^7Hs#y!llu$FXm5w z+j`}g+_28K*8{FZa91BPI7e5s!^dh0H;fSH?82?~0M<{{moor8!x&_Nr2E>fx2D1&f=H0I%L1q#*^W>{kyz|?tcG4e$QSuO3Cnk z&R0vU36m%4i6|u~C(>N;{;wJ5lkKD=c7<_useO^fq6k_FTcLin=#Q5bG+iZ4FZW8a zM4>F^{(P8-c6K9YD?cdFd6S8Fi!L+_BFTzo)72BZQv?Z(+onXpK(QDm1GMH3#&gYE~oin$^jvJ1JSDSNTbbx(nQHTC@*f&(X>{W<;W z=6|7I9ha|KzWXd&zasb9fvk?jd6}r!uP!?4c2rO`b9KlU8JJjXojQj>$}G}EI0e$f zAf`4(%^YO7Z7%S;_j2%+FQpTa&LYM*A{{xDx}C%XTuPx26eo5ug&{vZ$y7TV(}ksy zn9CFy3^iYtwMU$krA_)4C9d!Ui6um`@sN9m5=7ny0wsuC%N#m_$XPTP5CU3s3dBx~ zW|O`(tbc56!L&>Ij*!UJWWKx*QEDpLHa>1FG+qIwo6fJMsR_q!?g1%_JYQiA z6X0tXGqIxx%FSc+;!Q2%3u8(B+J5IqHJKYuv8O8pbSyrzAL}w z&}tK@{H@&>zngG>!_*Olrigygi=R)(@$tt}QJq-c@Kay= z`)tda@x)!Sf^n7{C-$SOz1BPDiM4V!drj;ExJ5jb=N6GOZgC}+dxyHBHBE44za63| zVL&8EV*|N^Z^BKK18aj%D97|1V^L+K;X+n7-&oz7?A85*miSW%R`c%o#brdBYz{R%8+!y$ zU$XL`-go*fHc;&!i3VW~_Qsd?XR)3S1U9h074VEvUORIe!a?6KrqlxUCFq)B%>0b= zIFiaY@d*jZ{wm{3ym{F7*pyPGk)dAQ%`?T-o|Ko^?-EbDl}2Ny14=`R)atM9gce1lvB9{4Y( zp`rmZcja@d5|hDPY_`!8aT?1~++MJDW_%j&DRv#c~em#=1{3(mpJ$2Ytp2^v$P3 zOz&`C=B-wggnTg6TM$*{sA6L2jK5NyUkm$kN5 zE1BRGuC{g;3w89ix8A4emtb#|lsJJ4 z-p-L_pg-g2Wp7<2^1wvL-a0XBZ~ai&TTAj)%bz<96fkV$ft@*dfNV2fE^g`|%0i6U z1-^CGmY~wxY~EBL502M+6udnpk{Ib7(n`HME?r>-bsdd2qo#JeNN|0V{=JBSH*FJfNX5h3%xgdRQ25RgA)Zxh}b z5Djusf3?#b&P<3^a@v{OgnaGYEGxAa#$HTqZ4ILY~Db`6Whpyd%5pOFby1Ii%RID|(jLSHxb)Wr6jz2dsI*2;7AFU@UiZ z64}@OialDkp|+`1mBDB>@)u;0AD#OJ*gf;jJa#`CmdCCyA@&xfha4Th@4u0)*bBdO zZ%b2qA%}k_O{x98mpwgp9JttnDc{kbQ+Lr&p`!a0O|TRqmXNd3Oc82$WYpAlLfvg6X(qLUKSDko#5bjmg}^!cho5sq!IHQA z_sT*4^xiCvjEXx?Q9QUxuZ0s=lkG-4!1{N*`0|G8p@F^P6*@*R=2=^v{h44e-0$wK zvJzEf#gioY-X|YZRh!U1t66ONRF%gxMEj% z>Sh|uddp+qaZE~CpR*(g`X724zd_^TuTJMw)}0v|z_>eo(#}azl1qC1Zpcb>drJy6iLQocu0y9WjU*hK&-+{>&1buC?;_)Q~T~6DxpOD&Ql=51~j1ofH!p&tn*x+0|y&ts}riGjN!<)kumjc(0#Y{k7STs)i7B1~Q2BIhfZv!^G|w(-7vqCmA3# z^9dQRj8hWwa`n6XB+pnqT?+7FqnQz^Gf~8{uH*kW6S2Bp;b+B~Wb<9JL1?B}pPScq zHFw}IU$I&|*@U~z+4S9`l_9Zq`oMO>F8Gt8cft)Gti>((|zJk&Smi`Ke+_7PN1YOaS zZdEw1cE^~aCj@m?+u5{U63X}xTZG06cvzmhX8Fezq02)~eq-{lHR@Y8rz=DeiaqG} zwVU)rK3`v3Ctt7+gpEa-NC<8A{F3z3SnRi=ZywHw0xPn5*tj@|nV5;62G813iA-3j zawBusZNvzAxm*!PNZn^Umf@y(D;qO%THR+El|Vz12cIe93r44fZoLKF26~P*Q)BA$ z%j7t+S$8K@RUY97{jpK1D_H1ooTK$_j96yfi@Z;NlP~-E@}#Ru1*L2r_Zha@1JO|} z4U4qs8KL+E?pRgWxZH-(tQ$h>1@QcU;_153BW~b{en~pPI!ne9dXg@_EU=XEWpHt| ztEd+8J+@5{u7ZUM(cLTGorb){F;5M0-~v(H>52{1T|?Yc*f`hPu?l8poJ4NvnB0xZ z{hxS$T~SYqafV#@@s?&Ts}IFjxcbCqZ`cFAkov8ktYi7El;t}~E>0rf|D?u<`S2QE zYsTa1gO>F$nla@%>_h($t8>F^t>M5fC~!}di;Vz5uhzPZ~Pdd4TX znj$q6fxE#6NnERI^0k9cXsl%&<`f!g8>9v!HzS*#-w_y-ngq+u#Sey@e6r{-xhoKi z$)jqw$5)O(tzT57ku03N1*Obo#DHtd=~i)yR&@SJwpQ-eFJMv6K{|Dgo zuMxI|dsWPWBq8()Wu+&oPI(^t5B7g-ux#G1TBAv;0k1sW_94E4Zz)=)c0i4kireZD zO2jfp!I&7Pipk2_OE7}OUts?gxP5I+AUJgef7rMYZhpjW68nLO7-yc&=CWEn^|jBH z0;KLxrxN6CKi;M;<*CU3IsNjoOUXv4whSfhu&eH39FBPN_qk*kH>dAlxOdNYu&>G1 zjw%%Awwf4w2|qXkYkDS1Je5&n_4%9ZIMLCN$d33DFL6pYsv2%1>~*$FdmHt&iFYL9 zN*z$EVG0{ap!{Wr&?9ExJLd|!B^}#seoK{*QwYs#p@&@(Y)B|t?RIP27TEeDZV{}$ zstU!{qKUCfmAdc>QA$xPVX0#@;}XCO+C?PjF1K-Mqy9X>SMyN9aFUd|h_04wH$hjdZ+uz3JKC?6FpDOaMCq92Q^{3J1KR(`}b~w47BQC`;nRRNqySB41Jl$yzp7wATlSCfsS*c}TD$J0o__uI| zZfVxMr-n^rllqP!^}?T(@ys)qh-&8OCp58%SS34+TLy%+*Q;&FvukuaAT{s70%k=X z76q{UWFn;iC$0^x;+HHfO<#SD>Z5$gnS!*{i|t=`+rRA1CGgTQ(pO#AxOUeDi@vOj zeyL#as1`h%)N9Wz_OE)M6!!es{&k}L%Md1{dmgb%%2m4jy4U_C@k9JtXaD-p{uvkpnf9+~_OGwlzuvHaT_rfsJ%6=-y(ddn_q;5>TDJ)ziwp*i{&_if znH;gc?-dDX>!x}If71HPT81j=84g%4_r>RDdXnWdql;;Amr}N!`LyY~4_JjF`@q(a zL#>CyhcofV6;Z?{r7x$po5|7|62iS=ko~eCLD3HeV<)qV3~B2`XV`-Vl&#`V54UFC zk6>vx5v|Z#w<6P zQvUv%V8$HTS;lT#p^aYR+9W2H_43Dxydf%Fw33YsEs;B!|+%g-x*`KWHx#I z#jCf;K7Yl6cs7gQjduM%Kbx;#EA>m0LakBe4D-)9{8jAzlHfnD1(^{qz%^K*<5Zhs zl`fMdZ+gxfA|?56owS9(gsX8yw{_iV6l5oEGOi&VI7x(-$y-Fz@aDHX9YoKl?6@51 zThQa3<6GIhCj3O>>>Iz0RQhe~)7}BGCgGeD4<61~flN1dxYKBYfL>C5vb`r#9rYvWJ?frQGQiZ0~`*^(4CGh?xIdh7;dOKe?oX6V%TiWgl`Zu=lHILn}J)D|T> zTyf}dCS9rOn^U++gg2G;n*eVJVQ6Yd)1Z%MGwzm z7aWg}&+K;}1yz4s@SR9jh8q6rYY!Pa)e7u5j{TUSt`{T|46vv6QPh|CHb zEOFb2J)C-kW9?v}@mmk=mmi*=Ew%AAzIk7)KSGUQ5~0SLaaWlucm6d{ z(9wM(?2gQhUO!xng)8S_)gE8FeOBtqLxmfPS_DD{-qx>`u9Ov+q_A_uG`s)d5;X&_ zCi7#tpty@!sh0?uRqN4NRKG1KJg9f!#Vt}eFQ33}o_-=LA76D^A$U3a#--Q_D-$b6 zVOJLtiLabNi2tH#_QmvgD*&(|+b25hJ!gte3u~}(AlAgwa4(9kc9IYupT}jO0f}5x z99&c(CAFm$v^BCLOhXmN{zwj+9vaZ}1wHigLYIREQJKw+euZKPC)vD5b{bgTE^E;l z!muXwv}&bsd8Y0HQj1+(;kOAAEqIvn;>5FG2npFT7ncV~h1AACAv)~+88o~tkgr}KeN~S7wH#o-%$py`o&Y=H?LoCIFnyl{bI;TB9UkHi}Cg^N57a=B7N1(8Ijd5{_&GCSJE?)$6jf~ z^c+%cc^XwgPXJUQ&tGW&T510Z+P@@xo_GIY|9aT|HPikjrw4gAT7D%xhx*(?t2}AV zsRV`eXY+HY<^zI{!~i*aag`Aqy4f0VkkAXaHZrMgeuqsn8MJOVR_P4rnL}DN2uJEcq+ogvD2eH+ zZTaQ*Bq1-tN*wC8uDB3-OKgRdcia0!>RP(Vtw;6~GjNhqA7kLjD^-2sDK@&Vf$m)x zY0SEf8ype&l~a_6{Ew}6hu9)Z_uD85v)?J*f+Q@5>r)_U#p8pl}f8TH$JIOY$3w2Qb73)J_qr9N} zcm7@Zd~bGtYJb+a=1fkFSSQjxQ)zE}N0rCddpN>L{Ihofd2x@F`VwiWqC$vjp;KRb zqfqPI?Q;LD=G%lNZigJvlhgI!J(EmL=6%Gxu%|_rD{6Y|_VgavU#Zqwd8}0PYjbyg z4I8Os1@Ubn&4kmS`}v4()3iPjeJ2+Sdm`?gP5~zM`F!nZrNz}f#no|?^r~Ja)e{nw z1PkTvQr|7#VfSbm$@OT{Nqhn7&OH;{<7L`{SJHFWK!>#?J$Gck znkRoXvx=e>6W9@0lbbMO*_T&YfBT5F#n$rogR;gvQ(^e5n3WQ*q+^Kld};i zHD`_8#VWd>VNrHEm9n#X2HMRKTH}s)WC*0Y*X7nD&hOG}?CB?kom5cz;z0i2PpwyO zFLO=oY8uZF!PA#SfHBH1po@$2(vcFp7jFGbdXL>uvyvm7}($M1^f4@*yz@r}~Z zfo(xw`(+4!XtQ4N8*sDLO}J$j`mGs=?8@+eq1W*I{p1tl4^o{?8(VA3XG(-8v(@ueRT^U^}VMoJjwuM7ck#n0y+sCcQtA&> zWU|`$;Aztd_ITv*ERhGoA{v&TV2|g7qVZfRQ$*@M#xpj24za5Cc;r0A|9w2sVJL^b z_Q!w%tYPK$t(H&_YvTZ%DQo!_GWsTZ`po}EhSarvTZ}n4bh^myxxCt@s~5%Ej2}sn zJwyZblyKLOLt#Y1V(n5C_J+0S2a3XmSJKlmw!?ty2?vFOyC!3HDWTs}*jrbFwUBM# z2qm5gHtTariS_U1f^gM=IUTpt0jvL@Bdi_L8SUytkk)PABMRf4{A$bULxuD?A_QaA z_lKTTdjtufG%n+lQxZoYhz*P*VqOH_=Y0E~o@}8Vs3AL?_`dMmjKf<`(dNEp^VUN! zxtrjv8JiRC=I2y+D`}zLgkSzib4!7#@YYxI{QoBSf5xukLxF;^Dhj~O*#P9YI6_RJ#^7zD9`-& z@$)+Xc+l?Qpyp1}!;%tuAPbaaEG(t1K27@cZS#l4Ml)n*r>s>eBxMuWr@4Cw(@x`5 z-p-LWG9R!vaD`<0Z2EWh2Kql@V5AReP(#> z{lsAi5u@%-zK4v`RV*aVuyjW+SOdv{)s}|qPw~gjXfeKiN@cj=vTA?qL?KOR|$xl}D7W7am(E|*zLkH>%Hu@Yrs z>xw>1ew6Mp3>S`KV zN&3L+C3Ak@2kV^?XB!H|Bh{rrIV|U_InMR3<7APu$OuAu+j^i}7TF$FSYb4xM24hN zk0BD|_}S<7?;`%c5WtVZ{|^-M|APhmpYJ*T|7*rv!2cD$Ead+Y-~xWR zike@{FDILY{Lf81p=6H>HGfvb^^x7zZtOn6>ChCj9le{?(iF%RIs~z*Pv_X993fF+_NyW~Z*|z?AZ_k` zn>{-0*_H;RrW-HNW)Yo-XzmyC>@nQ$Zv#$V`7skcduzl9Ea4lBN=X^VrZ2SR!AVBb zdBW_X=aSSg4Ez^2Tz{TFW^wN2JPzK>_H%!%IHF*b5&aG8B?y90knKvs(V61h4&P+N zo+0TV4C<9Zib1{6M^Ug`ea<^4gVJr<4j2b3j{s z4K~{e-2IUvU<`n-TW9t|zgGKuA@|A2n=rK-C~d7hU(7y%@4HARx#kvFZPL@qcljp@ zXk5N1{-pem5yBw}P$`f@cYG*(sFRy|kVDU;#io9pB8LWs@!dh}(3B)w$P>8HG|ZOY zmh#x%0wN7f!<76M9R^;f=H$_-@T2|QJ&OD`D0~ivG+Ta?lPCX2`AyD`vYRR&X&$sf z{M_?!ew+L7IJM1XxxLsY!M;+G#6G#cUiF)9M--*ep z?%RA6YIin&3ASaTq`UNJQphZKR{#&%m*JVfgS2RTj}f!Mn|B7=Z%og%5-((yzfLSQ zMQJiCKP&h~l7EcAR&HK}*N@e*vax;E_>ehjrH#e&@rS287Hv^f6oY_H#7{Cza z&=s+W1M%Jc1hSIcguXU8cb{zXmdY~YD42JIT*biU>|fW6`FO}5Q4jPJBl=Rb|M`9` zIng$WnSr(0<}o;VE2-v+5|RIiw@S5eAPV!myfV#==eMi30QBu#4W3CcE7;0_P#Trr zBn$u6?69ntXf*vQFcXf{em_6>>UANjlU7gw&K3L(Kj@%5+kp&KGk$7!jKxTSCuNX@ znvL;Tc(8w6N_?+8GcJWV0?)5=uw~b^2aa{P(!NJjBU(q{Mt=eH#2%-{e`ae4I5gx+ zjY5kPWXcZ(s;})59;F8Jr*H)o#g8Sp*d;r`HF0}_fBN%}Gqu}AQ6NY-CXu3Jvzd5sni{&sbTeZHMGdO)$3j_AGi(rv;&!F%~ z`}!+Kwk!4Og*}NwRa`RPr8obTR98}Qr}bwT9^7mJ5B_S0H1D)7zW?J4O8i}`NufNf zAGfI|)+Lx385#?#Kbl4 zkdZ1fijgTe!{|1_qPSl0oRE2O#vvN+-gBsi$nBUD_rB9Q>pm#B)0PaC6`ZNq^m9T$ zrA=;2#k>5Yvd?fB#rdt)gG{CkcZ^Fj0)(ydyWCq-yE{09fR8CHTBwgH*cl z87w2@G{0ikG#l3f^gHA&gMijU=B$Zt87(g!*c^=ZjWn$2j?N0tei0yy-{dI0?nlSV zg!UCO*CTzH3F3hH!mYY52Bk}#GZdbQzy;!I+@_zIs`15_<~vvRU~#BFg|YNdneS#f z0RLVn@W2<1H@&4QlydnPmzA^*on~wbAtf#JDJA(j? zJK08URQW*_v3o8~Fhadt=}=c8tyR$I)#%&s=+sMVgnFN+dYtke2~sun2uFJ}swJE02NkZs=KwGMf(-7BugbZUh= zH~Zs8XS2Hre&`4VxES65oA z5Du9TF(;q11apG2g+DG3%4x=8`ghjer&a)gfwjlU<-bnUo6hM`W+}at#0cAPmH9Dc z_dr51l7R{f&Yo4t^9#FwR?q%pSutkaN9v<|IlXSEVF(hn`{eB(XOf-=-dW|Eysw)S z?{&Z9YYx_17MHmcls3Q$)-^f!?qLHz8hiqr!1yoVQ~sw-0)#c3KDs6iLU=V~*MaSs zx0h6ctYn+|P>9xVE2-g;X5Lm(Z@-cc`_=6w)6}cmOJ>-wb8=__AB|Y zU)^4^MqVYXxE63R5ix=t+DZhWa@GStz^WY8bj}mX`6}mp0#vf1J7TQF&YeDo10>|h z+hLvXbHXjTIiMArb}93G9da~hfbowu>9a>D&8u^iN(-`vy{EI;_{NA9hBhy zjYs^lg~`1%4bS>+{yKa!)XFK?Lm4pw5Ew6|BKo(`pd6UYNu%VNZgbf*ZVs9jGOidU z+}k>7xngFWz+Tg0tgHccb#|ed7P(D=WK|aiHGKx&;F~mS&&NHPaPmS;;k1|o7wH#; z_G0jNNDk8Ba8dl&&_*RTd&sOtC_oLN0I~PE&_UeQ)|QXNNGS*PX6=X=v#F6uUxNJN z-^Eza5)fLDXz-(Lv`1&ijTnKCAF#1hAJN-RP&i@L>W`>Oa^7bYFq3~SJ=@ujn~iAo zs8FKI6VcNmNoXaru!@V>p;R0B0#;+O-g%alfxTrlVG4t@!1q)qp#x3TXO&7chFSie zMT!CQp?DHl06dx5TZ=%PDK)q&&XEBiIK={S-s^aMQ_sx& z<*~j(q!EL7`sX=%DnCVm-!Hz=Ye?I%8)(KGyQ#U2W2$f4odu(35E8pQ-{E2Gv_xbh%eZ zHnNHO=r&@C1>Yc(eYtp#X$yp2I0wMFo=~Om^`RY zlx#06y*xQxz?9(+wjTN!!!Hjdn==B9wg1lqe12m;zJ0$@N8{HCH2QG=w6 zTcl@UY-l+Hh;;2#KU=!P=6BcHUmuK^zmTuSol;aXKM_c#3g*>X6r`)=&vF=1egAjP$P=cdwNXG6~(0SkZ~#c^5z7v>hR1mGmqr8|C!z zsoc9J<83jX6nup2IpaM%CEsucbN=##9ZE0RdZo@wFzr~qXzk|@|4H07=@x*`k z^txX*6kmP{_!|^9E;~i=$M`y|^ANGv$E(5(e~Y~?z@$eD_dV9h10)an+TXJsD$Ik1 z>D|_+h;?KPUZ*0Ng?Vss)sEbL5H{PY1zOn$Ly3*m3cJ3W93I|8n7oXNVgnJ8I7RIQCrfAIf;A7?+*l$JX8{_R-0JOz1NN^LKl^0zX$^f^VmY z8d(*^z(Yi5VG$yUvdm?KVr<|D3X?jEL%=qfF`Gj&148ld`XMOHlSN^_p~NN`EgK5P z;IQ#nC*L(=mHJ35<}`SJawb#M05vdOT!Ob9A^uMQGlsW}u-8nf&)+2Ih2}C-6wqZc-e_Aya!f0(B@COEo-DZOR&Hd z5V(+iey`vfTezIj&%(x&xn)-4z%w9XjL7DD1gbnlQLec-BmlL=ga-p{xJ<%MSm-*Dl;Ee$!%C^fE4I!cR8M>Pku=al2~N(54yFW`y;YX(4_3497m$&NEm^hV^VMuiQ>N9E|!;R!^ByqhI-{GeR*I zI7jkWb1lB+cR~l+s)bhFv3lX(5&gkV8V)Dh*YY9%C>LGCDbeURl}Hg9Zp##3m-C`u zxtqzpvY>E56H@PVsaIK4kI3?jb*j|E)|#=BXSx}MRV*41W0SFd%Nto)LR93|1v$U& z# zg~&HaQ{$1gKb}mjVxzGFcrDS{6+G9{G$B``SLF zi|nWfqoO_WZ5zK)^AdktW)y@<#&Y|(=k3nqjl~7JN7K1!Bk+?SXBh<1N%jJ*kFOkh zNAxtA-+59M`){_8oWETxVC%FftyI~qT$U{m(e2Jd@m~my9du~Xp-^5v(6Q^k=agtoiNov(;B9M^dfCwB?U7#Ojrd1&f0n^^Q9Kg|2 znh5}r$lE+oEEUXfuH3kGN7!hp*4W9(riaJV*LI$~$~}W*x6#@U3tBtaQ`{Q;`PyOj zu#2~RZIU@tL&3Bj+#=kul&c9ML{R9Hrs-2=9L!}%iI}smp;PN-N@c-E8MM<>Eo9{2 zA+v*?hZOX@qF2wpwmM2CCtW8K2^gvS)#t%luGM_b`lX=G4D9+*ZhiX11Ef}nr2ff$8o7euv*s--aha|KC`3MHNB7gFKiY^#xfL4_aOnVa#WQ{l7O0;sC0bDYK2B133P$)CimqlHhv7YN8s>LkdN32BZcRc!Uu!(JyEo2jm zL6)$I>Vt|+JRo5g7`Dy8*;x=_XQ?kMl&bV6)|EDV%P5%#jtZaNk(=FqsdJ?Q1F}X@ zx~SL-*0P$`tj=!KiWG_!&$zlu_QmKKHrK*R_4R7ZW^zMl-H&Z#?o2Js9La1={TvsF!bJ3i z>>fds1iX4YnFHd6u)xxE$DB2){c{{Ez2pMP_EDXy)?~M{sDl-cQRG57h&F3$YGSU3 zmvTk_Bt5(WX*oS)Uqme@bFX;zt^861TrPnAaU=Un8$YmHe z@F*pJ@*=u3KmUXAUZ=);9pk;`zdhc?o-Y`$@BcX7CuJY_UyS#ZUi5w($Wy}Vtkm*< zf~2Ilgrwc*+qnrM>*H?gtGvxl(4Un40ll!N{GQoXG=pVXPBI>_4`Zs;CcwP zl~+@_Gu6qjRDE`Sd~MT(lCm;i`(*h==ii|7+=>&?Tcs{ZKlDE!Q3)iFrUnvIltO>W z{156@ICXdI%T2df^HQVbxyZR$3Kz?rGT-GXJUc74{nef=56mfIuACNM`4zHvsWeYn zw#3a*vRf;fYCA{1iaPEfB&>5PSd;{Ir^>4Ui6$|wlf&E!#;oo zPfq8+bu#WW#%yFs#em48rQ?Gyw#epbp!h}V4DtNgNZ2QPX^tY~4h`Uf!mTd@8a9t& zy7)8i8DFpFzA@sc^BpmM(FvJ`6U(bvYQ8Y$qqY1-Si9Tq#(JGI$B3yZgWq9uW3{Lm z*2oU_?_`^eV;+FJXU&|faEvPaKcKGPIepES^UZ3^?LXsDO49ZfQP+d=R7&Tm%ZU%Y z{8F`TTwA!meGRbA%Yub$ayL;Bg(73@6w%tEC!@8^Go~yq%8(>!%hV>wzB{>H2{Ak6 zck0N&BN_GObnd*cSN~nv$%%be2xcQ|#F-Ly>P#j}|CdgS7#Cnp6Acj)yMBOBpv$ad zHj7V&>jxy^V$!1ZCmri=%k zJ9(|nHt}6@^U3$_Ilk+=IlNR}t15Z^fY_z!o;T%J(lde&`A3B%43HN;;E77LBO`k4 zN@+JR0Q_yLJj(c;5GZQ@@Lk$7YNXQIZwVU8_eumT@q?}Q;nM8c_cqm^q6a(Q%&A+{ zON|0yJDFH3PxzNqMoIam>34UkkKOPBYc$`1>AXJ) z1o=EQc>+-WY$Q$n5Mc;=@MtO-`HDwS70qSWSX23;mIY@?m(8;#@Y7z&eHLKi+O5cJ zR;p5ZvF)7JMj!L)e6QNolR>U6aNh@WyK;fQ_Yj$6gYhR7i;jKC;S@1{#JFEZ5|-2t zukuCmN!QY2f$Fd|Vk(_QkbOUw6@-#RJKOFQNymXx}dh;n_do>SZ^ zZcWKV9UI^1w|#Oy*Jg*Jtj3$}ZZSqj&Yl|#Z+;K&6pqvH$7wUPQ6{1GK-2iM=AYCw z{+p%q`|@|-f|3xHrVOVUxA@5gwtP=0aTwM9GRopml8VjxJ7N5-6OGI2y_gb04KMi; za>Qz?xxC(+n!#i%S6_?xR>W)^GTM~Y9=J)sMJfjzIHj)u;}~|-Nq$cdM!=Kzfh*d6+KpNI6Af4_TPQD%C;AN zVEyPgw+)mazbzqrRL8#%MzQk7mfeSPJ-X`7~;h-ubm&VGG zpV`;Dz2pZCk9-D&Zu7fL@H6mj+>c99DVy}S*`Tc%Kf@?$2KwD%6ANzdiW>;r5Id7` zTdf$2rsxC7tH+c660xGpf1q?yvT5`{K>%L-$`IKFK!H}G1yMHaEr1w(Su+I`ocifM zgitUP;)##w3;4vI|GGRAAJ(K`>RQ^%FQI(=iNs4F*-AVw$rM|RYlF%t^tw##fp*dN zkc0ouFOheEW@hz>4mh6c;8w{18tZFJ9GB=Um0!4PyrGh&>QQG;tkPfEoT^Cdb#G1| zpLo;l{*!yF@<5$E5x}PJh)!-YCeGtFdXCp_wmfpF*_Rg=dJN~RL8CMq7dA9)C|z{o z_@)is1?9fS25yM&?Hm8Zop`~OAyrJ*{8vMXCmsYAB#RIE8)~?x3V0V>3`L74TYq(v zpT}esyx!b@Cw> z+nt&^0$t}P*zxCPw#v1CZ6e;;u3e6;jT86oZq4YBRWFHV=Y7du^&=rgRU!65YF$xl zbJo;$+HcmU?&MAO*RNBO*SSgGJo5Ps0$#p+&%wpQh9voAjl;+>pENP<5blHlGGrnwd~w694|ZvLQD?9%U)kmT^- zZt`L0!AHX$Yh1*Nl|`l; z@~c?&DSo20`Bi1iAED_}s`LdT_*G-fM=G0Aqc4CCt_s5OgIdFu*b`ZTsB($Q*i>Bw zvN&BL;+gcGeT_(cg1oLoSMM$^B5N#sb}$&d0?Yh7rut%gdDZS*6E@~8<^-tO_~nMC zO{I&@9pALcyWlKs_P9;K16_S%RT?R4x$6adMaN}_p*q#(sqtmDG(0_jLw3DIt5i^p zKUON2WeGI(wy2nklPMt0!ReiIz^95YkeP!bqn&xcb96aM=<+WGbh+y+n=Xe7i?l1o zlIeB@j|ASTriclVls5U_52!sxlp>;iXFc#)V%gWDiKZ*ad8K9;gBIF68 z3(AIhk+tX%VH@10%(YM|JL#%NM1EZ0*CfIQA(iB+DrkU|s$v>{hx^G%MC?x=2MhKS ziB#FaLUyHx6BotL6}`%fWc3JDj7i>1r=8iMAVjc0+-b6{5SaQvbF!Wj?e#S4nw2{6 zUx%IiRx%!C>8n?kK8V9sE^!p1`?!aIE)^+fD;Ilnum2(&#nlLGIepKr7w!Ics#f0p z&5d!ptpOzYPya9%KkzT$5w)Uo+P{M5Ij#%;KftqA;90f@c);~7XbtW2W-y)SDBMRg``H+MIM>*(r1$cpjNm8#4x>l0{5`rGObBG{k`>ja zruHK3Ri3Mqsd?rl{`_9}FOah5zkyUB`fxOzgL$vO{1sj}SWoZhRezXcIgU+WQO#Lo ztFHDGra~!}scMiLqa3QkR=(Tv<{NaXN4dAi4%k%fqbthM6wUCQUXx4KC8wr1Wf1to zlN@z>XqxCtPwc~Kp$=|Y@5=+i56imR8n&$cne z*{!5s$!@i@rHlkN4!-j6+~E|L}Pt>O}4{>&{gl zxfORD!zcaI{I@as<;1MWW^(B z1yhXWM@ES3eS+<8z|dA{m0T<+*ey{~A52L$9T_1#a3K;`=MryAJ`bW$?Ov6=%E?6( zmr^nwhVsM{t6*!7ldq(ZoU{DT3_P(ct9TjZslPKaIWra`=qq4QQ{yg9g@w`E1q+)& z{B2GJSaw~9R3M&1N!*P!Jeew$jEalpBeTVNirKX{2^$_W&{ELf5~*$=!!YU^%aAV2 zz^H-(Go(N=8`Ex-YwEWh+AhuJhvb~MQ}^5aW2rqPf$(_M1>q*5gb_B}I956%qR~Ao z^$)aQE$NmG#k%0vJ()R4*BA~R@<{M^wDwi}pxig1;!(N(&gqF!l>g=}8O%)3#R0T) zvcrm5ZS=yHC-*mu<5uEG!=Z(>vbFuRyC-7}zlbDSuG8o)-Dqw2FI7^3@wmVsiuE%s z`rGN@Xb_}7LtxD1LH`z%ACVs78%Rzr5fl-`7b&Ux z=*?9U+;vp?O9534;5Y>{b2<@#h2r%6n%JD(`#8YgJwlGwha%?JyGPjTCp>zhYJ8hT>Kg^d^?H>8pO)EdcZfE-S1(ck5|g-Qb82%dRLnBdcDk>(?D)oUFY z&}bG-wl+Mz*&jVk8a<1A6Cm=Y#m@2xA4Je1YSYa~v686VW$k%YOmBUTuBD!PlFM@+;f-1}HPfVTHK< zWxujZOKNct-7qf0kC{zElCr#SPokHgf=k8KgzZ>@&xm>|(8D~Yp9 zOSbgExt2!K47jx34wn%XIYx%lK9xWt z;yceD?!%htRp^tOl(v{f3%wl+_Rvr z?NzO<7vLqRb5AozZET0tmBEU)IgdM0`rH=d7i+l?kC6XP2L&jH<-i_DDy8Ko+hy z8^#v>Gq_Kap->khTTJv=S<2ksJU4R^|SgxEoxVSN%}&R6(03rqxDh5E3$(rvwu|A2J7 zf-*7tu%{{k;sHoFtk10GSV?2Gfn5BIYiv zmL0KiSj&af3yv#H>}pff3<{EAb2@QZuUpS(Wv+|O>jUl-sW>y%wE&c7ExGkoxPEp4 zZIj;eAm@tKVYOV#jsfSaOg3-h1rfgc7tSRu4OfMwiR4aSx+Y?d8&=zyZx+J8$T)DIBs-|TkhYB{_Y}k=J1Si zov=SI`Z=pOvqi?{VXNn+RlCh z+|SR;!~NN-4hwNbV}P+E+z_lbFV`v z5p()BwMnUCJ3`Aj>JNQ6HHa#{KX%q`54eJSyM43XvW+f@_u3ilLzgSoxS|8>ckM$c zD=Vr+?_p6byr}(vT2hJ`%3^BrVX+4>1#3*Lucg9OSzlysVTmm~78|5el$*OJc9puu zgfpG;#MdUc44b8u7n!#WSG3sB?Mra*QD~i{nT_&EnC7_3i2H4uhm3rK_;{=iS7D(C)2p{ zXmwfTs@guqDf;pl*#s|DhqF9=-<_gHNoa)rJm)EC{Vr|pK4+Qskv*(-pN1LpAE`4a z$PmN6=H037e1{cRwz&Te?-h(KSTe{8&SrgV*u;wLy(x=wl z)R_~~XW`yh;Z3Yq=Zf~_wLd*LLM}bNgw4x|kYicRrywLXr&(`4E3sm&%lDt1p<7!< z#rGcZZVs((;m*xK>RUFSqw$K0m*I0p>_M$0I;e`wuUxWSg{bXv*s8JoLlSjK!n5l? z90A{sxWDd4Zx+YoR_l}X!Wnj@4oRe9!{}I5e2IHBXZe=&850{kCmAXMZz0c^4mKoL z>SYSy-g%A>Kp1y;c&K^O7+3iea?4 zp7Jj1j*l~$gS&fF zC$OJOtwQrb@%eS7d1b5%Xp5B*y$V4Qdpm0V3=WMA6B4~D6Z=4nGUdo@wTO!o#&Ap9 zE@7!wX@}C{;ikfG^jEFT6C{yd=}=p8ds#<`f5*C)Qu?m+3AV&WF5>fZ5}UB=oF<>& zF~puD@{+`ZR3bLmK%!!dADUG$_S{<5I3_xtbTXG(H~d8APD!?1U?|zX3vS1#!R|eK z_^OP5Vw$R!`-!{$TjdDgjKR4siOGqq-}A}p1E1G#Yh3qo6$Ve-)LkmfbRu@<@h znCo0KxYxVld#dC(F8RD{P*(Q+)dkpwUeipaynw6Po%W31Pq-9QSfd%X+-oS%xjGs~ z^0?x^zKOfgAll7l;CcHAy-*Jk=-JXc^zUhs#AVk+*IWv=J0UcJ{5- z3-!ekXf)@UQ4U_(k*||8LU2cyB7>6A+6W z3S<1=C?5aw`SI_`kN;6Meh?xPey=LiYy6FB{LCG5jSqQ)L@9Fd8B46(GO3PSU&;SN z#f|g#1_}$IaWUF=q-oOhg9@JE><~x2n#Md%a{hM(f5;9jH3P5DDFVIhsGwhhSBj}~ zK!0(eQv`C>ev@C% z>g<*Zgf#=Bi{ZUO!J<~!^gOEXd$TO>yg8aQ_^N_QK9Y%JZ4LRbY5cPIdrWo=!g-%ToSKiMu zus7Zl1{RfVwA*@=7Hr5xZ0qJ6eUrYQuo==JPNZtuW1X5EOSiR}!r8H8jf6${2Oa)z zF+O_=ND()N8x(6GJ>N((s6OtPratbuMtwXW&RpNf8@O*V#=VOx)<$%bC{r}f_9{L! z-KBoZOQaD`6@W$9Zbl_Ts_*dAR1N?0 zt8=~lAVb=SMT69Ht)zK}8TRTeooU=(lr}YXs+Mlw9}C(ZLfeY;*IE5#7=|Z3IKOfD znT^(Mg6{0Taram;**4|rtC-(>`#*~C^`rmC-kX3&Rb_3X2??PXPf*aPsD*-n0}@3g zgg^=ss7OUnK(Q5p#vmvnkSYmaAXrsOQI=wVYTNDCt+o@k6HXXWArU0O0ixoFA~@hV zmh%v1>b~#VXQ~kUet$pzz4y7#-|(E&IeT1t?X}ikd+oLNrVpbUAzl2t^C>q!R7#q3 zd?n6v^Ml~)mZXaxCa<#arTC%q*)~6vAj+blmg_-cZ;|oMYYX?6r=~&t6+IG7h@HXh zOa*b1>fw4xlMeAVh&=Q#1~(<#KZW}g)ZHd9Li<3X0+KV8Tm*tDPp|HJt2(5?+;;*v z%_ORqpA;n3sVXmMrOFwq$~s6e8BeZ8m8ed(0_sJC7~TZvI<$xTp%5S>R)%Ac87fHf z+9NKMWR#TBcL4Q55Ka1Cg5WMgM?i9&qrWPB%q_oXPf5e(pI>*dxx;SS&L`6PU(%#w zGXa^19`i;=5-TP}Nr@{O6rq8 zq)CVO(}6B{F|=ccjw8IEL3S6gOOe(D_HM+a0o!sshqf!eB%CH3nGWg@7pS_8+M6C1 z)B@KO*mfrNS1*(b9MoE(n>gN!M0M*9lm%9W`h0hm|UBQ{FuebVrhkhS|Tg9gvzLV48 z3$zN~U05>(DoyzMwgTU9H+)KU^En{4*Si50D4kvP?!>te<_dfet8^L!$# zJYwsTek>T34o!)o;N^l&`kr>aZzFNp1Lnz~$AeRj7a!|OjD%O;&*9Ir!h5nRwS4RV z{16)pE=bPI-;}I~y%p_@VeEKSLw+;;FPM19fIeEu7C1o{{2cnBY}!Wuv`vA`9XKyBv!j0bqnxL{ z2E&IJ7LaLIq6tr5<}~5c*RWM5QH}EmA&+q{y>DY_Rv$Ly7+>?o%utUK?BO5Ez%y}7 zN|SLXB#gY=gqP)6L;8fePsf2n*?lfowvKj4n$u@_*0Ofoxt>~2eE7nLa3@`;DL4TE zE40<4Q#E`0gt|^|XxHcRjicK1fr%uGq02OFbw@_^nBFidlW|#$%SLFj6NIsnZzy+} z#=^tv+l1>5EqQ8VyFU0tY2HGV=4EMRsSOyPcwF`A1Gtj%1BItAU;3RZiXPxZO)%WY zF}0NU_WT>(ZO|89>SQZSGXJi^{QErpyX7pZmHBrd@rphF=6LhqXW*A;9W7_cOZ=`# zeYuJW_A#?C^|`Pcn8osw+6X>5`A#0IFZjJWQLI`*+HUEnL*Y&ZiH8ZfnlyJ=xd-c~ z&B;;pQ@~+R|MyexZ~B{4Z>xwm9>L()E?{MC`#?uWkLt?nveGBu7xlA`LblICmi-Rv zydWXH9DlHA(2y~lFNvb=ms+%$=sxpBveyyulH9&AAGU6dfHLUI<2ID|IB0km@)N&} zU|*hPm)?IC|L#YjbrV@AT=V@nKLmva;(f=&A3Sph1g>~~%C`OR`gZ>C7khZcQNLIH z1@F#33J1iO#d=_0E{b=21pX?Z5919`}To#7wnX-ZL*hCY@mV7bCPj~-3ij1I9 zAkk+c5eEe3*ENq|Q|jt>cyP@IZlOf|mpJuze{8jjdU1Akqx7X?zZfgd1BU{*?Wiog zB)4to1gs$E!4!1#%T*a`X=@e7b^Wp#a^dquSQhZ89z90E(~yyk2^8A`qcK+go6EG4 z4+2`rFF3yt%iphdn(hk^EiOxp%*Iuluf{XTLngB*tBOzEcb$jhYeLX3aSnM^JN?@S zz}{{3xqaJZtm8yWe~c#$kVCtHU054MhlVO~R?o<6sU!J!wEeOPHtxGW^}MtlP87L) zlhMQJm-O|EFLp@PfQz{Wzc{aPdP6bV!~+;5hIabW-&kvt9+{XE{O zXr!wmtA&bZ()!cfg-m}99NDa}_%4Jgd$lAs$f*_W%Wb{pv)Sw;O_Zv(+Yn80LG;{n zPSY)jTs&s?zmiV@ER|I~%H=@K(q@Qa8XQCuF5r+>H?H=beeYC15J|5EX zLTt5}i9@8jH$SUths^XsI_3sqQ}Y6`1zyaHoABKizm%E-@C#w(8-!n`E4B&4WsY#> z6XV80RCx&3-?^9qq{Z?~oF$5;xnO!hRc}dbM>N|DqE7qiU$?mo+Z@;@2h?aV%q+eH zSDo3E!28G0FIfF)jUq;49Z33R7)bpR&?GJbA*KAQ{#tdBgT`zVV<+ z|4yT}UFbCG%x8X&2!FqSX0N16b)S|hOK56smI#otos zOtVm%zi~(?=Q<*%(5Yv^zXOcUJJjlT;1K*Ql6ohn+HRU6fmJQfL( zW1aR6GvN|mpp@-z-%7FGB#RZMKpWf zxv~1)AN8y+sE3|@_=2^zmvX|mgpVSWVEfgc|KAm1LYRf2n zDB7X`#A1x*z32P%qY%sRchTbjt~8^lJ>InFI~;uyo#&4~kTTxFdt%u^yVCtkA(hS` zQ+4rzaPN?NtoTnYO%EmU-RM(@*GqK)fR3M3X zSmJsrc%h?vfDLt?h!*i9GL>QQ?jKq7u0RfGvakMy6b5?DGUg%#ZWKjr_!~_CP&X?2 znNaPMd@xqeIGHMi78!#8!3rEeq9gH9xq{;6BDoh|zyKNvf5z2C+X2P-Ylo(39>utJAVxpbECTZL$eb z59C6(RkzWv#U#sx+EkOl10mcco|abP0n{qMT&aMG@U|WRgNibYl|)>)n#beMgAnltS%HM};p81)tqx(|xsc}yB4#5>B7H5z zM=0MHuI9$UG6d@7OR%v^w%hRrb~EM%#NbrxRhVfS0jd9-zm_h_Fy=G$tTGd)PR}WaM)!PAFqo-54P~ll-=~)O@#FD$+Bo-h5J5s@bMAJ)b z;g|SBO=33WdUYG@++B(Q91lSf=W$b^t|^iU51S&zKaW^`;)kCPOX3g??L+gRSbat= zcm~Q$Y<(+zerfPPYWKF%W4=tzh3~}J5*!I}Dfs!B1P^fF&P8seMX^aa?v<_y*k@4e zG3G*ONptg1fZ5Bqltqz~EIa9kDi5TR$1(3wDEg`la}(bqII>MqZ;9N|H^?=g<-rw5 z`(|5o(64A7x9JTzb4m9hXJ}D+bS)ooOm@?d_S((YNKfJ_u*8Iwdhde=MTA_;K=_@& z*#U>7q~{K~bI)++{`!E*J-=neeX_8;6!_FJy@LRL{5 zz^X-goUYsfWQv|5=wc+PA%F!k3zz!!5UiCpmc*yzJ)0?ewAFEV6LDPdmu+hn!R*x^ z+pyr-7&W9cdSVTtck7Q&g19LtlL)U_)E=HCus&e#6ps!LZ`cuf_1R1X?pH`)a4WTJ za)gF}tpQ3F!b}T*f}MJ}~;i`%K=A{9U?JBt!I1@(y0vHW$1S!I#h#DznCorqrAVG`75MW>QeZz6s2bWrc&$KD5!`fpE=n_ASCuu!{T`Vs0HB*YFUW|! zj>5mbSI!*}@Hu=;o8vL|2qH>X1>#;1|8IZdV3xOhMBb1B?ba&DY)};XK**x+e;-U4 zZ=31SH_GXqXUP&LEFeCq(agFiJ?nS(m=q;~Uh#?+jY?L?xkGngw!6^8EbL;_)ob3* zS}r`swElJ4au%rdZPdnhe)=LhHTCc8!|z&@kWo1hpKS-@v+^Y5=sZXzXq?~eXTNs( zkJuk#b{QPHk{$KAn92KN8zCN~Ri8h7Fjbb?h!Y?<*q0S-)NVWxbs3jJ-~)N*b^`L@ zYNdZ8{dw5PapWA;&1m~7=@$$DGN{z*d#d65|Ja zv?8Bgw6hcbnkp8-4G&N@Sj3C+DzvEI%3@X`KuH%T{T*haC_eR9FO-j`-3`P zCLgWB^#UHf@pf8waR?;sgu8Xwq#zz*9hm}~5UG{R0#vcH9x;BL_CmW@eR$^~-^(-` zLK805BFpdw!x~ICBd}%N6G-%Wjp&{Zku#@6dtnbwKFM;Qh>rd2I1inh<2?HPkc?%S z8z9X*Wd)ywzDf=)g)!=aM6ZLKOmH+jqh)sZGb2AtB+NgxMSk4>>Yhwc8FJPm)%*o( zDQE>`oG*A5Ckvsgv3!tIOzIfb27Zwv+i=Xq*^s%sWYHJ9AlE!p@2pftvOm-M($bE> zL4p@}cc4AN< z#;pFsVO%F-guu?Rk`u6f10P^v{S-7k*_rdRvIc~+p$d(kgf=G=>BYm$hL)f;IPnrw z{LR1~4)o@+BB*8s%Kt1^mA^d~<$nhKf1|z;RK)bj_9%Zly90Xx*26Si@b0{~47&AO z@Y()FW6>#Eq$3&+dJqK#s!R$bLj4C9T`V}qhZ{toJO)qZkoGx>ovS&q+tELZ*aXpuCW@?EX1cpc9^dt)KT`h9tBp7R8XTmH`E>m#J2h~w_&9zj%$Wm zg#T5A_th^%9Y`=h_p6sd`Y^tPHx?(y*!V8hUKq-4uK-QEaWLY2_`ujWuP-jE@Cd|d z_C$j3(VKxUfR9}r^S(!cIAP{o%+o{9xGZnJn#El+g5Tq47!L&HE&zggG%fqIeH*V` z%~MGid!#*^(4N;^kssa)|8Up-Jz2l-Czg2h#jF?dTvi~ARY+&`hehuPv=>f{Y^&<$ zuTO%;wgpE*aqu`TSRwm--e;gc^+xEYu8Ne) zhq@sp!(l*{RWs$|u>gHfIn^Bnm2vk#DGI`|^mV~9mcVyhT3$G*v9iD{4ZE@S>8o6& zF>%L@C3$&LKCUCJ1In;+ZJVQ@E}`1(`WY_JcqxD*|IGFcl2h+L7(pI?Q~Vp?<+TKY zuk8_o7r`IBbKzLZ(CQ}ecaFb^vl8v*ThW3t=utRy1lCp>3aIXR%V8V zV+%)gClapA)*?JpoTW&;zrj^hb=;*Mf8mK**kHh#IrC;-KQ&n4^~c70@(h|~>>O>5 zuyeGN9L-&!ik5hen>BNq7r%LPLVuiPtV9;8{XgWtQxe;$*H8*+FN|!n5;N8$!z>D_8Q69KLhSTP8e6=8rV@IP2X_nNx1OXdMJjYgIBa$c2JJsmn zPX3q!W(P@rF9Xo9>w*>2f)&y*X7pa^l`24_K3tvHT%Q{pY}Z+YrkQoBw&t5{4VrDO z3{DNEXD<%o96%Gfy`AjX2M6RH!+(Ei5lO^9CBr_pzBl*5H^W{ySo$N134me2^bU!j+&GgXh zX~CJ-&29y{=8>JTky$eDVp?oHWUDaZpd<2*KE(nAz1#%~MM-cn{*DS>iap!dkPa`p zxqsH{Dfj@{=Rt@Z(qGP{1mV$WCe6pb0Kbsx!Ju=` zT?7hikRq0#=PhWe@J?v3Cj#AoZUuYxh5S)OxF33(whmMlez>gMv5JA|oa7~7pBMFLv39hQZKj%hKYEm`s5|)$!{JAlflg_ zr3-5Ct<&%q$>$+BSy?+oDlAeJRxoTb$bE5}&Y0~@!Y5Kr0zfZ?1WOh3)KN0%)mVlzcEOx*Vqz8x3(wGeemEBHVXzAeUv+Y@0A}(a zkBx?V&XQqwgCASjCcLaghM?mG!?Rh4DR8dBI~z=v@fxRchpr5@9EeS>`Q-}sm>Mo6 z{~VJm0*RU6Qq)&?ra1zIFGG~#)xn%{VpI;qX5^xOa`WGzOf3#|gt~`OJ@Qk3l!`&v zsE4hNi15{3hHe6Kn(jrHHG*W*LbK2s;~6WIW1r0iKi?feQA6rg2}Z)5$XDBlQeWDH zKPfmKV|hdd`J4ZOmZGlR`HMK>gPva*2c%3Ji1muik|nhZ(Vrk%zKr2!p|w1Q4KeS2 z0eS$9Ry0~69RT1Z?YZ+jW?^S%2ihq~!ROxCNU^L+m zdI6J?=HM7eXY|IJu?Um#pKC}YelpBXjQX~aLU#x~zKy_^f{ObS6P=$MDI#xi8=Q}B zm$6pLP~w|R@hra6#v!tpRBv>}ij9K%IzR(dloIaQc(3K3e{%tTI}9XBtJNaa=rzR^qS;!qVLF3t z1#h3er9HRk{U!$jPXzT{*(+D*G|~3vGda@jQi7uMqorhxmBvuW3I`P?=V1&|YMij* zTB;||RC?j2XAcguv&TbGSHa7sWm7cPv!L5jSCyLJMbcuF{sp28qx7*dO7Bu~O-5XrFDn#rnK$_coV8qDz`s=1-vP7PF#4swBAy-x0%w~R<>Wa3oej4(fek zIyPTDQChgid}1DrkfYS9Ta+bF6!AFsyo&`WG`;0e)YqdN+)g#xT#7;{)# zu5dPMm2S>1cb@GkrvTE_P3QgboyL7GbpUJFoXRSYUcjr->lBi6(G90sBX1*Y!@k;g zfE5IfL2$B%{aM1#&h}>kK3{qlDJ8kV>u`LvTo6Fco@P?>^Jper$D|A}rb*IURMKq5 zB^bv5W0b_*r{ccthd6doEdz|xB6bGl7+Dt1Ch9jge1C0i|9qD5V@H%6H!7T%vO#u zU95v<3q{X5?6VZI67Iu&h*VpO|Y@gLhw|=rP-_pC}2WsRB+f0uQEj z0lxuhT0*U3M`Md*e`_V#6WFr(5?I<*+V!m@dyUDUb-R*{X(icCCUbx%V*9p|?B~NP z&1@yv_e=)4?5gzR6Vh60WMPMFizF`~33@UEQx_Lbj3ak_j=iA;K{Rx@rlg z*P^HZ_(Wf>f_YURk9aqkzk_{#E($@jF&^vvkxEf*urLi4Den|ko7Ony*>}8^r#L;2 zaSOX0dbA77w~!buJt{q=l>Q)6`(9yBD44(3??Yl({4nbxMY^G1Li&c>HcN({q*o#_ z)SxulJ)LX@#mY>kk3pKW1dpflA%+OtAcQKLx?e`8!!;_RX-s!vnNM(242^a@n za)_Ov3JZ>9v_o3N$WORw1eFYKrIP<9B{=P3>h&shr&dx=w9wdWRGo~WjusEx z6M7nbCd%T$?U<08TGJKWt>-M8eQpdzB548@_u;48s*W-RpNjx$bv=S&z?pX4>`G%A ztlVXXO?!5Wo@<~qBI$y}5Ueo_)50GzfKyP>bAQ$Y`*Wl^`bZnEo(foLvS`ceflT9F zkDF<==v8l=35hMSy;Fxc58KlYhPcMtuLsI{Kln*i26hhYFgmz3wHXfh%G`W81J+EQ zJR;y5H*T_MYBYvVHi}U*%{xL9%`hEcb;spnWWd1^3mdf6XL1fPzmInE67GJI13y-fO_s}qWD{tG0Ozs)!sKQ?8IYLRz{nHT<-YLW&_ zu02Uu=x17DHo_!hXFl1L*)oE6vkEYtgSscS5mo!w5Hr}QfmQ3$m5|_#iQ>#yDNKT) zIvmG{^)-amT@b%=4-EXW?syEV;o5&6no6)zed`K<5ql#!UFtW(0$|M88wLhoWgNN? zwV0izEZC(8;PhqYbZ=i{F-q{QHI*ms#T#{Wx@b)vXRrUFKX8L0`ah7En;j@TukuZq z1$n(**3bPJsW+B_sZge@6^K z_hNgTjaKe&vD;wTe6kTp0Qz|sb&!N}>&B6#`fbDiJc~B9|C?mhPPh0@EU!j>O*=HZ9$IF+Zc1bfWlCV?eJn zr6=1D4xGcUAihNY5lMXZiAD1lrXaPo1Rt7NB!Q^3SENHa9xi+u7@0 zwFneZGqtjklsb6uv{}YXl;Tjqi+M0*;Y_nG&Coe$J*GIO8;BN}frNy}bOo`5=YUGl(liN_APY3zO+4(>zxsqz zOB^VMUJ#&)r3*}+KSsOpTu3it00Pb0m6h*FWV5sEg+_819T^DZpqY2Z&?HQc_VV2L z5iSz?#L0=x*yaNIn+T-cvX^8Ztb8&=6kN}dhL?e*YlTb86m+siWkdBhr);H4+>QVO zG`nKHS5m1mX)+$EMY&KW2)KxPPhwG9(UV8x0~qW9TF%Rx2Gxxj*}b^EEH}IW{#AdJ zOdYAXrWzzqTf7h7STaa4ze+5SE7VnPbD{3Leuwwkc7(Cl+4guFGNm@0bqYi!71p~96*#Jo`nFCM~^E-p;<7~QD{hOT!fs3nI4?< zC?JAmfCdh0Yet&V_lJ*Mtz0M|NGsL7uJp^e8i6DhZ<^0fgSIPNreK;e8;09(k(&-u9sSXdN4X zV~!ni!J-pb<_QE)Zg&v5?NCb#d{nYbkb~f3x(v6V#4IyOxbK$7uM$r+ z>WoC)6&Oj&69apQ@_ZqOT65Kshr?*!SjLk%wsWRhX^Os|V`8iv7@H~0a)#EgA$*NX z5y)E0=1ymGpvt znd2exny`pj7iJD?@J;bQ%)$bM0uL6&DghO{wXow#3>$llP`ar~n2Yuu5XSsA7EL<4 z3wjjjY%yR+qnyN67wcRF!FZU0a0vn}1!0hxm!O>O2Ic(Lat^j~wx%2Cl|ENf`iZ17 zn__B3$0DrdNSJ2?y5PX`eHAx2D7@8$22Q@hCJJl;B?F8a60XcpD%oA{rZG%oTeJJg zFrS@ZV?i;@y9gk|cooCgT|>lCTze z56YrhlVaRW41gtN+Ej{K+tO#FkW{Z6)wM`bH#HN+`V~0QScCx-SWqM2(06PUP+Qd^ zw@6JkFNK%lo1Hq?I3OyGIi_h&)76-kg#h4OP1dJhH_vW(8ue~@+pbQF=&q_PgnwjK zS7_l)_#G!9k$*mB7g72^D5^eo@r~KJs##ZA^{`xK{fnzEX1}$Sdh#;Ndg88nB0>S_ z^}v(XL|>}OY>!pX1yYZx^RS}f2xw&>^V(zlC$Mj`u_CrJyRx4lwts|q-lPC6a+Fi3 zDYhA~23W3`+G_8o;rucSM&dz-IoBj4XR!ScfrODu{5Ia>*JGndb8wj5)+62JEOq3E zQ_frjN;&De9eGZ5OVbut_b+S>l&eipT8#S+x}G@Cg|2tNGlH&;ZgiE~v^f`MN0`@q z2;hLTX6Ec*#k}d}Ku1RPR(OpiSuErt&IHy@fn?BMA8O-X@x<+r#nu#%4$U{=n>;ba z(A`?aUZjA?Z{3x+@E&_gE4>0x7#JMi~ z%$KHtoO~u-kr$#dXdALTY}^4+AnfsNOVD?ipjSZYW0%rm>mm)8{_C!9IOLY}$JZEE z?S?$=6rL%(dmjSOki0@;CE>CZpZlG3P@}**cPb$Ayu;F5zR7;J46l9*R?2XyLVD_! zDJaioo0Bkhy1MPgAEApFM<5XTp|qN^4mQ{vQ9h#h07>M@(hugOSo&c}w8fUk4yjQ& zdNr2$jQy~SnUzqWYLV9ka7QOthi@4Ou`>m>i7TLZh?jHd%N*FyUWJP7gA8G;=cmIUN2D1i-iw znw1S8jT}ncnCmvDA^@x?gQQwx!@iA~3RIlz6fdvy$1n8;;>x8Aa7ssQ1;*i7I8)k0%gg1sBtqPw1S%2ScYI2t{%ArrqA&>bs6ug`0iKlkMn&9 z-c6`kf)*)oz=4++nBois5Pf-t9gLaeH;VNEPAbR>=v2KB@H?_%kUjKFJxifThMxZh zVF~X(;3ywjgfhn*FVqz8R0gDPW>UQegSqI>kvc5=+KA7Qd6|rdN+#~Z#0k(J*V=X; zYTeQ0$WHCq&0@wE)XD!z$mDZaCe` zNM(&uE6;17Z;2goXQQ%XKxeV`Z9Z+h!leTMjU{CPx-9mIbYWY-2^v35fZl_aou9a& zFXRA@6#7_i3!otaR*571lw6|QqEKCujH}Ten=D^+{z$pz3wd%50>jp zxLxaYD>w}`O`Ra38{485qX+&7x@ic9;DldSKfAIV;|H|W^pvooJ2=q-%Ip@|zu9NO znq$O~9cEhbCsWQ-Z%Qnkr*a63u@xzt?U>V7;GQsSehQxIk7u%JVUs%5maO?O&6~Y~ zM5g06W#{?v5#W{AE92wZc+52b|WV`2fV5ydSZoh3L$Q;Wtn!5>h+a&b&jbJ9+)`uqG zgb`e;q}KijhUwW(_8$bD!qt=;xx?D%i$M1ZUFBXTnqWJfC6AW#ABjY`57{bfWs{pe zWFai|=8}&Lo(7dhawq?OdANepqPMfs%S&4yp1+$tAT>j;g>1{_h>ckd4R+>ENeD5w zSy=>yBifV_Ow7n4~N2t4_V)ae*@K!$~Ria$Gc#b zG<+N>g}PYK!LJJ+=e3Rxs2Dh85@zpfgf{;oBZy!|O|KFN04mhJqG?mplrd}ZWv4!8 zg9|0|oHCqMs6Qf57-VnA z90U_-16|G@WFC@ffMBbW(9vHQ06OAU&RNPQ9F=$%xO@amg^Ic)wS|jMb4|q`GF2EO zgcmp63~1S!ZoH4EE{F^C9R7LN-5!U39%xb4m%p`!nNQs%rD4V?>CzS@{q^52Nn=Tn z73?hv_OU35ST$b5AsT6G|L2-91TT52!!7DQrqfJ|D{%qmSmAwoHdNwFRtz@Q5Gk6p z<)3AXxR>hLvoMD_qvT_D*LFZZyChpU1&GPhlZ7yq3tG}x>!M1&Mb z*uh`hf^K+Ua>M)F@4!p5X6Pc3?tuVIE4)w?qc`p=2DZSvZ20Xg=z_#RYu*P(>KWC%876Q{jJKdgPhDMl(Q%S{%1r6B28ECr}83ru@Q>iRz`yhNE zr5LR9@|3}vg5TshXY#nCk7^4P(8V}z4HMOi%^52TjdJgi()9k!VAivkfSCs9`6fVx z##AOWr4H$M+0O*uHPngJ`5*9>)NvkEPT~;*fSRwqfTB5Htv2?wA<>x}L!X!vq$U^9 z4FyhDF(zALL}g=P$+_13m!Q9XE`EVdC;XC0etDGD+&~1I^G@{HCrY;%C)8JNpLu|* z=y>J<&pQzEyP4(KF2IB>8}KL;uc`R zpB_dRq7X&kYQDT)m{AZzbqi%+zWD+Ih0wgN4NNjjQ?91DTR!OIcZ^1NAdo^L-QqJp z&xecl0H6MHZ%XE7cBghLJ<14CvY)%V|MFvt?mpfTP$Hk!Ifx`XiyB(A%vkDx^VTjVO7h&$TG8Sg=0yNkT(-z`!& z;AWI&v;VP`J;?UeQW@CZpXMZh!#HH<=#C1dXWlgfvdsWu!T2*gD$MY2zjx%9aV^|t z+yl@SGg30R+p`)G{}zg*J#WEt-f52(o(A(&TAR2hxkQWfB-c>PV6?L=%{P9C?Ffe9 zs5Ga!8<4vd4ZxUWji6lwPDdUXPhyS1-NNs_Q_VNt!Q~e~3AY}6WQM_!CfDeR>P%GC z+u?NPgH&=C^q^JHcXT~>4dQVtV)|!xN%P$$<;#W@>9xu3@JVpda~Cw+D(L<6tsQzl zcdlDnG_VsQDLzOH23M=xMgH)u+4@y2BHp(mK4b)jb_=1eAi^q6Na-6a`?@LPzgs34 zh!t&jor|oZ|Jowrk5Qbx|{2`il_n+JGPp+s0%N+ZF`JxXTEWrCnq3fp1)`ewvZ4-u=uSX)qGADy!I6 z-H{K0nBB!b_4Gta{IHnfqfVfc&-+^mFIF{qyw5 zPVUGj8R-%aKR}My#PbfEo89%kgUB?fkNXk{Tr~2uncKLgMa11!#B^+TP&v3$O-bfO zu40WsoEV^*g2CHN@CP%u^ld(+iL3jH+>zrM=>o`W)f-~5u6}Lj&h-`B>B{wu&UPy8 z%+OjiFZNP*wPXM!K)Qb~@X5zC~oCJ90aT+g0pih_sQ=eP?>)t?tO-Eh6W-BcDM# z)%fF&y{li$8e<>Jf&~nd#(WTxNgjpnT)RnNu8uyz9eEiy?z#9R(;ayeBVB^$%U!N! zjKRh^-&(Vg)Sfrmu`mIy`o#qGkp83{jv?`*_mFFy2@S0cD-i2&5OV&7gM~wS6lk-M z#wE~M6xjr*k9YhqOxD~Ggt)=qj1U8`$*vJtTfy8_Gw@M(A_N(=wG?v zM1pVhG&uDJB#`QlVHY|L(4Vv-W-!9V8h4rz!o>3_c3hEF?#RV#unXGD+>xFZ>^RgN z>2JYQJ>8MxTCiibJMwXCwDhetnU(#!>q|EV&{GXqUG}ZbQAlKp4J}hlMg{6P03q8$ z`ah6Dkn}a^z>TDs710GQQIfb>51C<91C2j(2z6m~qLtw+valI}+b=km9D+EpC4(6H zSlHp5NwG%>HtXPa5WTx3+gTFFC+TJZl9~*(?+dooly_0=y|bE$I~ep&8QFrKPJSaj z&5Nz1d4ZtVbh%x>Qz~&0Wf|p|iy4DRK*)qZUSedHL$Q~*BR4S8C0GZyELwXV3Cyk{ zijHZSAfE|5PVsv_clS2veT^-A^iL3{;6lfYqf*R`)=Dw1GvfmB8M(%{h{JxUby!sS z6i=H?I2(7>|9MXV+8sjsTekhu|3mPx1B!D`(AOk9eD?qsui^bj{PJN~6PyBwpAq=x z(-UqMOjn5CmU#Qm_y50e@)G*+dps+jOQk-*^F5xn&!bWp;5>@=*YVr5I+eHAq*50?4w>*QZUDfu z56@B15qjf!1MfckPQtSQ&z)u%!=J|cTX?qNG4Slhb0qYGUU(S)pXWa~_}@hX=YXd6 zWBt7uW6{O09{#k!c+^_B6-K*;<=@xxegQc7J_y4?84o;b`^fD)Qw;`&(x&AjJwrO+ zo`|*?8QF)1v=8985$)!SVC&FU*Wuh-_!>JK^vjTi%V2wunDzp!gtsj#oaoWQNrcc3 zse+5B)2Gg=G%A=TQFL&71Xnn-u0-dl!+2Lv`}iH6Jt!X+?_}ZLn7L0a#C18VGWFBC z9KamEbR{-z2jWxU8~qv=vQcGu>}#ntVAhK5;62L=t5EA;sYC8Tz-spAxB@``Y_zI#tYj1*b3G5!cv^(eGnzkdojGh?_6qN+;=)}#87QL zohh&YhZ}#&3+JHHo(RBp;{iM`26^ee(6J;wm-kC*k+G;F5TA-0s&=(4&)j9&j6!!C zlVEbOifk4@)XK9$pMel!ZgyzaEaNnMSV@zICEac&4bBTy7#R}XF^~vt;pHUDw!yZt zv2;s@f9+dus()~z#1SneXgO~C+`Y?R|4mjR`-nt#O>9fQhT@tn1B#a|f``c){_x)R z{@B~|KQul?8CLbTp!~GPFGYYfzK`8_xYIP~{f{7StKsV1PWoz&0A{+rPX^YmL;#mo z`yho8fQiW;$K_~kPq@w18Inm(BWj3)SkwFD@xNitw)-P#U1HK^r-hdP#P7DR(AB(; zHfEhs)^9t2w@#?-DzMN+qE~)-;S_+HLRX1XJ8W3E4}w(nx2H|2f{*QgAsS7lEpkv3 z+rjgB@B{Oe0kSr`oVR!Cd59O1j%OJ3qZSJ}BT`!&bTMNsA}yySDS0~*m^r27H<=qK zq)kw-cXG3Hj0aKe3SSM60n#G$LMe~W!WlF0MaqLy$@MrCNQ*p-yjHJXnzEO@75SAT zKstvhu#_*&JEUKl>p)4iFOqzU?fr%9)d7;xbU*Baz1!k0A@pWd*4xYkH{&*nfsR3l z?Sdp61doxs31##Th=L<;RiW98F~2Yw+l(YaZwIjb8l} z=|jk0Bm%Kjj$CDlE8r_iOqJkkctgnm+2GFhl2d?c9!0Y&{~ge~e*QihIUxYU8@%NO zziLt5|7oFd5W3ZLRZx9)Is({dlgvH?Grb*mF%z%TOlKi@?;N*$1kdF47+qNxiTIFS z`BplqJ!VDi(kHfv+I0Z-TZli>KM8SAi}-zeX{<-Z7K0q^BrqCLuDSRinfHUH-6VdX zMf|oF@$L4vD142Rz?gwZ;XHzMKO)TDFqT;nCdg4&rdNPp{pyuD8GQlwpHTfPcqZb# zD>8M%`&F(dh%m=}XuA78?AY5fupSa`z|l2}a1b(XLmJVBmw8=?6K~pt=F=^lM6rP^ z3{rxVYlrf}#UKo_zJE>HR%bm+r4jwS5Jz(D=06V?y2-TguG9G?s41c+^Q6wJn-P(rH_7t z5(MSJY3)tlI<>}tm_vHL6Jz9qgRRvViR`8#jX#p>?d!x{_~ZRRW96Lj%Ro8YYuQLqEA+=<{VG}PL;$|JAcm!rvjUi63qs93|(??YYUHCZBFYxBM^GLWM* znp!*tEhvfYPxkb^LTM^Z`(B^(y3;glkf=cn2mj#5s;g#Zmlw|VRKCLzT5XVkSN;s~ zM^?C@EAn2w!=KS~ZC!S+q9ZXxEbgCJ_ASH&?qz8|zr&iD2+|&Secq+G4jEj8&^GhR z*|IE*Kfw`6Z^Hiy0<-4l;BRK=EJj5EMzC*D9$*jlBPpteAaerR_HEMGkIlz=279rPsdE{|UUn*?mAp zu-qzcvQu0qRopmL+{|m|%&NFn-7Q3JnH}U7Rjb4SD3N_)=-1!rFw8pks_@>_ELGUE z2!Yn>IzhoI0h^&Fz|C;CJ^@`=8vSl@Ta=zWO~Dl!W2`_fC+idl}TCsCJjWropb$I2RP}?z_J` zamlBAFRN8MVdIDsV_XRV=zF=7Q{+{y$h#2fFsvi*gkNLjTVtW7_;3$}8vBGB7GnpM z@K2s?NdWQnKSBz{+UK8%G^9lX#LH~&Mm7KuYY>L}VSmNRV;z_7C9ej(V1we&`TqDg zkG3|{gdF<$XuI(qk}CYhN8==+g5uCAu{z$t8TqFaQt~U@Vh2I(zXzYZeOFsuoHyjM zklIT~Xr};Gw%n`+g-$?#$W1wKg);{QA4lb_`oRAp1)1C1hf=Vpols?klaTi;1dzvU zFUaJ13IDw{dyk!WTf)DNzc&w=91IUxtlhi_NpT@>2kpkWcym|r_McLz6~1^0u8Awy zSf02(Q@indARnW*yYHR8Xq6vvdE9SuOJhzE5vWCY&j|(}paS^M@YPiFvb2}+iq>F6 zn1VwHztkd+As~<_&hstzBrd$SX5X>%j;h%^IoP#k@8bELYU;I*ok?@yt=Y@JL@u=Qb0-;I6u*&XPIbAxJ*u|-~mhqaYn`Q593HKrNXND#b$tE zcLepTR}sLDKp%=;1<%dujN;H}X?LiEm)Ya&1KC+u9{UPhr$t^smh!~uJ<1EOLjjMn zM0-Er=lVaf+e2WSk&D!!W0TioYiuC)J>|+z`U$s_DhP{9B2P9YGKfK7XwiYL{OK`9 z(+Zn=aVz0=eaCwCQaj@`5Q@n#65go7lYdo3>9y*ch%kzUsFDpoae5+V@Tn}Y-3j=k+KZFB7;pr7$P9=)Z}uNV zSR2)UD-j|p{^hfcdz`G1HHW2q!cKX;G1rxH-C-%8u~SYrM!8aMI4tE0cFK9i@vfAc z4oms6opJyh1A$u_+vThKKFe3Laexqsl%86zn#JTL%Yu1Fn~8ljU$*nryeTQ8_hW>& zIx801ijKgIj(T?xCXl!Wk@3)0Oec}m2;<8_-ipJ33fn+c7+17fXkEP&T9H<$he`23 zy5f@FU(NdOR7nRTq6Ej!Nc}<*x1pB9lTTO4dHH;L^8TQp!;_zI#;`KAmj+dllzX(6=euJ8rA#o zT!ZIMJnR0AXFMvk#)EWy5^5xc&;7u!+zpz-&DzP+txls%d~>bvOmdbx@C7rl-}Duu zwAHgt$@A45ygZnLzkNcuGDzg}78iCZ8(Lr{)Ghf}WgjzB-{MXkDOonlg`o}58gu8} zl`g#3uTcM_J-ja(8?*QOYe{Z-c>FPR!u(u+!zeGlGV}@KF%~zEJl+#(D_2GPwPJe+JMTN$HQ*=t$#_eH7@o z*Z=lje|#Wr*In$*2%hH0#gY0cuqg5_@=%ZDIEVO1p9~ESt6Ajf5PS@UrnKN004%(x zL#T7}sIF~-y#TKVA-!`!DB(T1p(FK84Tn<6PUied@A%7p5ZZcfSNbvZv_R8b47_-0 z$;!^C8rlNS*w4iH;0_;6);XbpxE2N=ybVnm_X59O79XnXNA1C7G0eT-RbE4%ra&3X zGg7G`?LznAJ|1fJqc1p!@qD+wzJr}9k=$gTXPri$7$2+rxZK(w{|k2WVs5xii}0ju zbW40(cJr&auyF4*YKq;^6XE+)(rx{ zfjV`#P7(GQs-Dey=6M+zP&uZUJv0_Q@~Sc~??6VJgo%LqJlM_`zlNhBojDDE(e`I_N8*!0_@BG(L%6Ss9mEJuFzc{n1E|92R z7Kl}^YAA&vMxtl{fzi4#v!QgQ1jYU~1M)^SJ{GMKy{4iD7Y*O-Pdv{kJ)`4(bX`i< zf7}mqVKX-FCyMUaXtsjj`{OSQpyZc6MCs<_(ZrZ)ZnD(IZ{nOj8y03HHCMph>lbFoty=kY`n@L{ zNF|TP63F&vuLtJNDMMU-3K1K<2Pkc;T=R0Is#U4(MXKb7NPZN`UI$}r26B9P;sMA| z^L}}`pWZ)hi5KTc^r+W6?rsY2$n^JX@YjEx4gMXZA9bXKIET9f_L-diBMnp)t^;d6#{w0_uYn_8b4wZ|_ENFoXGVPHSM=T!R z7$ad-If$OJK_MedUvrA?UYfjvcJa1{qafI2Q4k9r??h*8qJQ+>A|I=hw%!#mnG&q zWzEmSX_j}kIhaZw2{HA_Zd`O88|n39wIyRes0PJgdK=#1g+TDO_jx41kA5q!#aa*~ zn--xeGNiDDdJ8J$CL>MLs7;uZn0YhAJru0aQf_!ARq^bb!th;k>?5jGq(zdz=K1mL!574XgL5y4&l;Rpv$u2TME_~3@I*;FR8(5iP`a!$ zQYKGUJTcCcdIUQ{23FQ zHIUo1J)>hK19Ll$=;VhRK(jSF|?iL0Hji z70E_uhfTF>h*C1)mC~+;(hlUm(x3Pn%?WW{Z{x-W;^*=3(&&w$AN}EdbLNdMO9ZsO!oOyGLvbFHH5B(%Kg2w~{OV_- z`kA4As`%p%>oph~L+b!EM}~p0>j$tXF1o@MzR8o;D}a?s=4&WvH-OoUQ-OX{)sr6! ze?Iemdq3n6)FurDxt5aGV=4{e&W$hf>c{>{4j$zVFG9Kx$;X4h(A?>wmDRfjc{$ z7oVG5+`JLzmOhVwcqYVAI~*fYhfUw*R3ziLy)?7Q7r!Jgaek&RHYTq;ejV1_x0cm^ z2`($?oiU=Jq_>9*+&luD=JVBD<@rHg+oZB^*arCQ3=m>Tth`C4R1;R|gAb6`Cal8b zs{}h1L7sJ3->EhE&DZ{?(Xq>W=Rr)7<$CA(I*tO*l|idgJlDGu-(%gD`ck8M1hANf zqnoe}_M;Z<3DomlJvapvVc;6gh7L%|IlZ6xreYiax; zh2JlOpOnS_rf~Zuahqg?-f$U^=}Gnh{>}!1{E%#C2MT87g@(rc+2Nht!h5qrXU9Fj zA1<#9z7@#a3keHuzK^&m6I9OeKziP-FV8*bnxHA@e+@mNRzAdjigk|oiKhGybs`_H zmU$Tl1d`vR^-hnbrH8K9`DIFi0)G|Qq#*}YXEb2o1UX}p6EBAGhWS%ds?ar{t^qC5 zV5snL#o<&LN_(X?#UP47e_4?Cu@Tnw=e^R;neC*mNF zO5ykrURw;I1$#ZhfrHN5D;C0-Sg!jMcQL|O+Yzx>%YXfH52ynxo6Ado9FiG41B&?6 zn(ChjYP?hr56YZBs3D7mB}X)1gtr@(8e5gjS26lueuNg)OMQU4biGOjM>Bl_0Uzw5 zSS;01Q6A6<)hY8Os7@>ws?(!K9Z3DIexD~RPtD%zekoq`cbI4lV`3X5bOheR6dC#3;lzq|;9 zd8D47fU~cTJdiSuKr&^ph5c29E1e@bG z`lMTPxHNrQ9wlZj`dUF$g{c_y3K>>9r8Znq~TFhNhiiou>X^SXncnra4} z8ah6IThbGsm>vEiGxY{8H%vEE;haHqm<~F|C^;Yfu<;ne{`HC+&Ze7^ucq~X%kdk% zu-^|=g|-u#OfEtZJ<&Y`nvS0A??(K7Rs~$ zg3zzUsR@E?xfwn_s4V>Tq2xyT+$MOOXiY;xbBNL^^@`H7O#1_%tp!vG{BG_R&AGb7kt*+9C$27<+NeP>(rR%};U z>|A=lg>q9l@H{zffSmqDEmD1F(A=wg}&KLvGDC}Cx5 zkZ~Er1?D$~GR`{u=8q36Zf?j7XB{mPBgzX-2@U1-fIJqB_M%%;%#rAIOwA3) zP*3ZRPwFetMQ9?2lBFA1rHiPRm9D}yp>)XP0j)mNAVU-G--Q;($>Yf=0;j_E!XR}> zKkx^W;5sAJAI~d^FTz07&?UGKgU|fuoxx{Y_f`g`SF1 z6_BA-!Ak2~;LV~d`n>*zdcqj!x6_~Hht7V1NA%uWL>v9t8cyhO(?E3-Pk0&+ewLN4>X)-ZqcP9*lCFb3fjai4 zKemN!qN^0Fm+_31P*6Tb0>A(&#wpTJODTzqLD_swwJVPuG%E3mqJ%|)gIJU*hg+oQ zp{VAJ%urW){(`W@d})YCiNZT>CsC(GIs!0)6g-o@LeZ_+C=gJ>ykTlD4IFX5dD_-q z_CkB<(-DS}L{Zf~r74h>1TDIduc>liU=H3u`1(B=ds49pc*2c2vC{ke4Kn-ZOg0dEh-M5(K*#_wi#C)-*d6{v>D{I^ zXJctiW&of?MO}>XVpXj`ytB3`$l9={Q zU(G3pmXGj6>abW4`(#K5c0>pcNYK{6hcJlKZc#&&#K&gWe{&+nGs^a}>e#~SMl4WF z)T2X`n2Q_(nPA*T>Q5But3(`SfxF+7;!v>YV#&vFuVHv!+xdTe@f5U1d*JQL6+T6;n?uWB^H}M!d0>VM0@7zab%?H`T4WWzj8jmNT>f`$UCJ^;qpMIM6l|`$ z6TdJkf66z>U4W*j9b^A1Glz0{U^~2yQOrnMsMzKta(GX0mT68fI7;`8>GjZlSfZe|v z0dvt9D2Es&(`4FKRF)4^P@vuA!F23Yq@(-^#OLC!+O?t;Xpz34q_V_fuq9N=?=Ld7 z0s3h`CGy25XE(3!5?qX)y!r{@J_@SNn>!2F2jUN!GtnrQMOEAiP9X!8z zy(c&TT|qN3b%FbT2Am+ZBcTg4ugBmX1{uT}!#i?=H#D!$4277pd3|{1iw^stIFzLL(tgrbU6vEBSKsbUL0_4|K9k+0#+nJ^r_ z-cgG-Lq9Bw;Sk@pmt0}*r}4*+RtjT21}uO41Q-frx$sR4Sb_M}xn=QaF8Ty?0&Cw2 zNankPy~_*whrGO+g~}q`vTi#TNia6tr$uLC3M2%?0MK9lp2Vx{~p+0p+Eei z>UvuZ%vWmQsiFpAy-}%wTJ${99eTezaLGBRAKxx@a33HnfeK>jgVigwXckouQrLY| z^Kh)9=z`_3{^c=X26`YdbL%chb~uWi1bf{{)T19k)4<_a#es`vJ1i1Kq5W0dtwj%E zyxEcO}ZGPp6@gSl{QG!!$q*uBFZ>o_%@HZpi6iq@{=YGmnssiS479N6YaohPk2qVmTKzDFW?KG0Vz974=&#fwj{{P7my|}DvHYF+d0AZZVS)nI(4yM}*bcGbV5tvS zCJG3im7ML5FJ!kfgrxN@`bW>hsa{}duxSXAYM)+(bw?SwzYGn9)SG&#Yrl!w7PSY{ zSV~6MG?vgVISWvuWYQSxd)3#B1^D978d+?Ajz~HEx814aKc(W``ml?rE_{qZ2t-El z8Lj7#5wBT9Cfq@dBwo70l-Y0dlPsY{_uy6kJPGmrJ>DP>F!%7q$Dr3mrH&;gO0N`M z^{~kzfke?8Idpk|!OxKhT`h^=Q4%4EIjOd~DUf)6Eb~*%ZPwp-Fe8IAx_dA%!OIi^ zD2IN+DHy_w+F9kJ;6UOAkBF|wCUAzBP)wc^potPK5(CblMBKop#5NkcIf%tRtJ#am z)pT@NS$r5qODG1#W5Ie_WCFs}7?^4j88e$jKY~BPSqXv}i<*sH_>dzHwzoY@{1sY_ zJ1FW==I{v|C$OZPIOo#`oDun*gZruQG@;$Cpyjy-2wE}%&52UD8ZF`SV9^$+ zWw9Rw*m}-X_sMK_A!ZPeDcI1)@u}%S2hxEGQo)`<$1%thqYQO&ZW+o>HOAWMRj@O` z>?BevR^>G=N3=h)k!yw^Q{x2W(w7Hwu$8q@gk>|`Fd_Zw^jmS(u91)U0Va^$bX zU3{1+y~|?luqNigOruxYOato;DZLHs)6$N;=q=+c1`XRxr4zEAJEV*g5!Aw89>!U7 zWkHKjTyR;?TwNGZW{%o>02`*|zWC+6L|0n`jI4dY!N^J3N?4?=8l3Z`7;a3H#1FwS zRMt)h&p}esp#GZ>Z@ReD-a>S-rSE-GqcX|=i9Fcr1z11-)~Q|u}A(@P-x% zx*|b3KC#}^7Y3VEm|8$%#Kr?zk*dPHuI;Z`#L@t@69H&emgdbX_ou+Dk@qP5uqpB+ ztU^ATfdL@cnY*7)23=rw1??f8RT8h{C{bI2JDh}}!F_Q5$0`m?>mCl{;R9JR*j2C6 zqVxz=t6wyPcD{Tju0u~$H~MPTu8L;LYp5Z6ug(~Ib*6sFcj#*@g87z@!n9g#mjQPS z=>U-%AEvFwggV@S{n){uvJVc)(Qf_~nbkh*zYuWiqI9BsSVr<1Y@u$aT>_uA{`H}X zh0~1J2n^TeFvG>JWO;Ris`n$U>Plt z!Q=G0Cpnc29g&=GCWfMQXC0{MDzfstHz1s`;1@_#u*nlHUOllV#Zcir)^$x5jQC+KNN|uzq_jLvo{qsKZ1SU1;?Jk*| zEDlP-Oq$aFg8Gx=kYbsn5K~O&Z!?s{voxU4S@!H8an1+#E`&Hpi7Qqi$kyQ245>UJ zb)oVIUT90cgfa1~nyRj7Ew;Qz-vpN%{4;&UHxM3NYp%j`3m(jWQ?+`l`T>)1omv2aSjy3_cp+vqoc z<8Ss-`ah`=&E=(8bVPlLJ4;%Kuf1uO%t}y+Uy>$a$s3!K%q+v5&6K@J#?M-(jdG zC%ZedL;8bZb1iq)YO6=s{5$_N#k&XHyvzAuxG*C*pXVP~%zM&8FCCt*qJ_s|-Yzn8 z+!VZsyc-PoxcML>S%M^p2v>oB2TF46-H|B3Uv-j;i^*)e{|P3GZQyF6%H_%MX?Jd5 z`xw2l0kloqdpDHL+rAZMj+fR_?k^dFR_ z-==i?m=;bRyQMa%#HnDq`e7zRMq+apFjeG5+rY(yA@CwqM#>jf$GECAbl{iYwrP zcN`bo0t#jR@6Wk+mVo{JU*F%)mt^ie_w466&w2JUoin!~Umt~ST>J_O8eNnay1BKi zy6DuiO}`LCT#nLcohyDy-IIf@DZ318!N_^yr!?ZHi{BJU163y>L^?8&l13NBu_0Yl zn{)IQm!@%r5bH{#C%8h0W64<({kXc=MA0WdcG^3CDlyTcgmZ!q> zyaWx7dEcRQ)~NT`5PIf=lu`EdSBx%dG7J;9+sizIiTf$G?9iSKozat$P`px4`Qyzz zFxRS%QjtMMQ`N>o8ckK3%fFi%TppV^0Q79Nx&poVis7?I(X!Z!0SPTAzmI=y6Bf|abNhw;aSC9B>v z)t0LKQkCbfd26lpvhzg!uC!RN4%9jbISd!}Cx99BF!WcsCA{q$7d<4-_mw7};k#kf z^IB<<2XO3}Ua@cC@RyT80?!r^V%Q4smlH_Snw0}W+Zf~aqwdbJ92a~p`Wl7XWt2~D zrIgDF8hwJUz;tE0%?u(telG83;+b=j4%qN-)>*J}=1zK1usx_+5%9e_V^4JXSL* zYi5p-&j~w(}<0dWEHA20pkm2STA8IS?|dj5;<0;|ugC z0Kb|C(Gf)->_{gs<|T(5v-Uta`pLCNhlC2-LtGU38kD;c$GRwTBcN`=q#%zi1D;$I z*%>)pve<+3756{Y;h2=uqo|0Cj#<3D$o{HtH) z20WvCZ?uPCw+-XnOa3h_&-6Bf{;oIZ?`$!2n4Bp`o_Xyym-metJrTLSdn2m=u;^pL`4wDCd& zw?9Ckz^(P=;$m7(q7Ae%<%l-p>-pfCu*6z5uLb`2d8P{=g6s?&#ojWz3C%IxJC$#- z&Z2;Y@wV|=K^}95nJA-}L)Lfv*P5&Us!9!8|C$TbRkgX%p0b)b<2SOeQ8x1S6^L;z zqzHHP$|zfX3?^LDbp(w)?6MbY1VO8%R={oF_vW&;xxLigwbO{rAA2n(+IiuPl zhcsjMs~QeTirzB^{k=SB$F%%eDf^gvOOiZWXe<5)szjQ+uiZpa#*6?17|^I@zF>2E zxxl2YSQzC=gRo;X(x8n$%OT0Nsa@$52B6A|-0-ywn7*}%Re6)6u#4Tk*O@$Yf>I>s7t?wzR(=Q zDD7~0#Eo}}QHtDT_mFxtn<;gr9xjvAi8;5?qR1w|YS`4#utgFNmnlT;pD0;6!!U)L zT-#o-KSx7`DTG5h2M(#}Etlrk(J=lA*HddOzbT(~$yeJo-(nAqv3(DMS>7K>{qgug zt^c5)wbSrd)!QS(4Ecg&;tM1om;xM>D$m;U{;%vMiC;pPneM8#mX{E0p#AKS_7p&! zyvzeseBu7Fy@maWGZ~Otilzq$kv27$xYy_7wW>|_slRON=ncv%z82g zOy5j3rhEd)G6jNGT`g-4qHq#woOZ?+Vqe4#|Va;aH9s*ULh45%t(AzTpk1)%(8_HNnw>sC%;+?bGAF)0rl z6E|X>nRa$uLZAcL8%{AOG}=3m?t_b%4^z&eWJ5txSKHfG@rqLeFU2``|hE}UHFL{c0B9GFt*=1;j zxY`a|lK90WU`N;GbicrXTV01vTE0>cd3IgV3Sacb705&}hR=CsLePSP%Y#;e$TVX_!niAnuRT1%Rcu6VOz2 zSG|;!R)p~uMFY$?`|hO(cR@~+kU~emGr{WB{y2uvOvDdJd?~8XeEPCFSpAGYE(vV* z3*D9`xgc_eA)7t(_g%8|5EBjeDKCW7n2`NDO%D6qhm7q4e~V@Jwl_Lz9r5b%sCQsEQlso24{UE&tlbH<~;Fl z#$Zn#6|@Qiu^TH3ZW@=ooRZFcq=P1Dt}xf!py{SL$oP1vnp2HID_n}F7DfHH3ud4e z6Jt&wpCoCe!NSeXrhkHjdhrQ*fTo7abh;$k;0g?aqq^G*!N`d*zgp@ID`X#%X&{&g z`+$gkZjpM0!yIrS1_LYe+R@BQ^dZY;(k4^{@uoZZVUV`$xpfJ)u;D5BC{K01Aj*-J;GjO<0MlW+P zby?7L^9sb$yqfNk+zPiILB@xORNsrVh*SRG!aOi@v-m8$Y>R{bLJ!q#?5Mk4#O;(jmJI zl9p~MDTRuejrbQl8RaTLkiT$daZ40_GEe4!Ju4r9j)yyF-05r-*A!b@iU-7Z>!&7{ z(c#&q!}O?v9^qn@=bq@|ANe!N2Ka7+MkRS(%!-&(YY{VD*pgkBlGz`82OKR}mp#}b zVT1gu_d)&xUF07*K7-!B5aK6Qh(B_0E)`M;&>KVtSObqn-D`ZtUkkfCbJEug)Gnyw zNatj=L*B98W{!3IeX_^;=VlgiPFx3WmH=yH!7bit@A-D^erH#nNGcCMd;Y;g!?NK( zMBg2%-WO{6o@`3L7mSPmDNQ;UrLp zWbANjXvWy#Vm|$s6EbA@7YyIxhJ;=eERs|5hQK zhNXG(JVpHRc2g7Ek-`76Q&MAey$_M731bRXr@uwPvfT*nZ}F7wgR(m*t$^Ed_iDCA zQn3}>ca$DK2J0XkxB|Qy+UyyX?7AhJ} z{*5yxzlh2AA5dcI-&h!%-oF)weUcIj{?_)>knG_`6hoob-8gn(FEUk80!>0sUFU4AE}~=zl8kqafZsek1j-|tep{g(GA7%jO-Vq zYjt3q^E`~*<7_};2B0fz_PN+LF=pG1f_6y=WQIOy!e(=7f44zrbOi>TI5OrLbgsl| zQ)1syz=wisAkvkL7Lo4Kj)waIB2wRQwcIn8t#4RPsEuY40oBEx!-dqWh;$_gM)uws zw0?Q19urTh+MsLb=iJSf6J81@j(Ol634`#N@Juy@6keZZkb)k6gndzL(JSn#*JwRt zZ9+CA^$2clytBQ(UgU0X5dVluvs+f3?73V$s2l`JFv2Z+sZXz>=YPh7T_cA@I1Zk1 zsI+RBqLa5PM@QWJx}yR#FmJ7T$(^Rv?eF?x&-AgT_n0PIqnv(s-W-Lkh8~mSO1P1C zyR-6LGja=dn2ctKH<}((BB5$?#U4fYs+Tb4RHz$Y!2gIYn22nbLDT#O*C66H4IpF8 z#AJkGV+)eEGZdbMVg!^pBBSIL#Dm`bEmm&kxN&s2hqlQWetXGW@?EL7;4 zN|@}JN|;a3wT$Q9<5bTianu?Yj{V=tQdR;e_I(Do`QsO1eVII&T9stF@qKmUEdDUe zTWd>`H9Ric2##FDKMA=X=HF}ldyju5jJzj(C~B|PXQD_DkSU)c%*dm&{^-c0W2<+^ zzAg1Hkp?YjVYyvw^c1uD!!5O^F_vHn5v*l&zlo7kZXlr9A zW<4YVv*o$(&II$!`8oS{74*r|7>pYw;Z%>$)8yl(@@C0~2FrU7wGFO4hz% zrZE$fAwP_nXX`Rz>wJg=JaJnU``lOo@9~0L+_a7(KDM^PLlz6D%S9G$fQRNqU45cW z+8^QsjAsBtNlo??;BG%t<9KBOHOdrsW9&UQcU|9O0>T)P!xL#_l;gDGpcDz2&odZH zwl(*OUL6y;&P70`V_9P!#m#dqJ0WR*d!0yHCU^KNNb6V5S#|+107x5KHsOT-zkd?l z=jXYB_k8%t%5RZ>A$39oMx=MP6~;ka6_U8276^H0t=576SFU7C&Z`*lir}v#EhH_W zRgR3eLBhS#=)qNO62jp#?+;l6QiED)FP$3TrXt&f)?%T02vOGL_s8%xRhvSM z{J+(ni#K%kv;Zf&wF^al`-i=qQR^gX5$FpH>aBVGJL*a`2f+^BWrhDE^{rXY>I(cC zh8*@d=V=x6;-;9$F>7-2$+L)QA+MRb`5wT4E&ueI*&NNc`L+U~aKShFdNp0>+94*6 zdGT-H5b#OZ9=*x<0iBMwLD7Q+bSipMiGBjsgd#W|8L*dztG7f!vIJ9%J+@Oli|mh+ zF#Js#hg!c0+fRIi>NQP&-ABHGHL8~4Yy-025mFxCb-yLxPF^FD?t(rIK3}HBaOV7$^6l2vgOa(RcE(S&o03HdUSzQbFDvr?b*G zB+A$ARD*a|gb-Q%fLp~RPa1us2`+G~89Rhmw7jH%ABJu;h2YI__0CA&bl-HB;3c+Z zXY`rWDH(XomOngOeqg428W5dOmX?VOg z!CCQ>XXtPci&ohkKiMp!Or=(x98|j9za#i!(z?y$vf5L}*teZLl@B$yoqQHQk)wjM z+7s6mTB}TIrdYrVqSGttn2Bw7$IPTm0DH(2%zn?n)0dGPzGc?VqG#+|`(B?KD8%J_ zmCtk~G2(4Oh4bth$rt;x+Ybp^@qzj#^lIH(ssh1Tx0R}ciE9e2hs{#}M|es9lre0L z=*&WotB=W^PsmFr6j|-Dt$s|T{qZkoi(TPD>j(p_(&0(>qqC`|c+Joo3ZfWLA|=QG zY>5|x$l9FlO7D*~r^{Ruase^n>%rItxrFyN;{_g}9xr)CgFOf&=Js!*)qf|7k_QDJ z(Zk(kt}Dt!Hd64#&8#*#Xtpdki>qzk2@QK;4En`_CYm7rTXYZ9?hdEBosFCrbJsj~ z$#Ed0ky#H9G>e^xoC>JlW~OeUHG<%-;D}YF`j(xXY)CWBk8{X||D>IN6zxenPd>?0 z>vEnB{BTctX0imE=4@U)D8GUCGXA3TEZMqoK7?-Zs!#aw*S9PBQt^7ygn^(3v-9uX z_d&ovLPb`z3ULLipY_M@mbSM%s^2PZD=05eubO<;v#9j4IOCqUdmD6786>FHm;c zDtJtPoZp%3Q38{kU+GJ+?bO0~iXdM>JfmLGOR=9s2lW1KSBa~Jhq@Y-#GvbXwtSY? za*BF0xoH}Co!9h#x_UHS={1c`$d~G;HX7|8D`?ClqDm0gHHyUh26S|1AqB8raK6S? z%4#>$2xdHsC~ov{T`z(u;Dal6{(iM^~Yu9fn};Mc{~p}%q`ATpI1tm=Ne znP;c1%~L(S&KtwIl_eb$^9sXpoo2^RexFaxyMQ2F4AJHkb$3-3iiLiW*W~Z{oSh4=9v$!0-IvjK3^aLMM@56RZYxzb!+NYTk5y>8 z5DE{!4?j8^cd=|$T8qbDBD`7Mg9R0g4)?mnD+Q}H^(R-b1_;s6;N1uqO!2_rFo6$O zMF|R|GyfQt0r@fHNw2C6$kwwvJn#I^(O+R=#v&E)$3NBZtX(04j zNG>h{Aws5dZYi#MN&1fFg#(eFU=cE6V6gf}WznPHeG!w`V`Ckg+CM7_StIuJfG>2N z6~XGR=w8l6Yv75y8WZ!&!owVH-@c`$IiFMfmOyVN*u?6fD8+mp-Dh_}3U5c00}!MF_Z5RyX&-j-azi1ZtUTi!^M*6PJvPXsq=O~q6!v6PnCo%0_osO9V!XfE;k)EQ7l ze<+l?zz}63ZYHP7auYCz`$eXfLtN?02y7mgX#jR))6S56%Y{5^lFQ9ntxtE!yefXp z!O(4Pd#V|24K&$fp;<)#65zZ?p#bjNfm_v`g9wZ0DhEdwMvriQx&gV*;nEe3X5=T6 z)mcbV@&rBI{I~|ltk0TAq^+$GhSv`b7jA5v)xhf(0&k55p!!46pD`58`u2M3nf8y0 z(yN29cl$<;4eofuv#+q{Zzr-Q1kX*|gVwn_gVr_MgNe}gV0v}*y-@6%x&E8)5%?9h zW%8dx{`tzszcYD0XAAER@BBNH=X1Jv-^4rr&gA)=Hr_jV=iiw;pR|!ry1V(C{iDT!<_nMb z4A;r+Y=dY!PDB-f!rBVfyV9)pM_@A6yYf5N`*$7r>n&94+(uGzvz~t5nqBWoZ@q`R z>&>gydxX||0P8(`ul4Q?+n2xI+2y`wyH?y=?GIS(;Z0|0rL*Dx6i@G*?Pj?NGRumy z+GerO+@kent<6%O*`?KHrM1wBo7z~YHm!Fe)FzhT39V7sdYNT9bc|W1Tg+Hy4M)P4 zI^1b}R4cT$aaNR(Y%3C;V0l7T?eM^@4J-|G;WV^NqkBaU%4jkPM%Zc8p7T-{v9hQc zw-kkXHw+IYCIiOLgonLrq}<})niuRWA!_q>%oTVO6>n7~g>J#of4s~)8KGUi-5?r& zUzKMR^NY`%S2pX!rB|*h)u=!(%`3fX@6uuE%?m@b8a)+gy>Gk0w+m3c69R~HeDd~` zZ&}D1PlwwB9piVJNT{*(+ncZR<--wo7)CdwnmCk*-CH{EK-`-!74Y&asp)Kin|D4n zd-a#H2HR7`%Ys&5dq=?3O`zZ{nvCfFL>=9(@Z0s8gt@eT&6bXUqxPw33-=0zs$Yrz z3)rm$b}K`%1?ZPYFkSO6%}!Uzo1KQ2l?X(3D{|XT)DBPebDnvQ6VzQltR0$N^;la3 zbAzS1qbJMXxaSWi*ocAQ>hWdKLFWAF7qAyquv1e-JX98Phk<+QyoioydBFac4DY0i z+9tXnv0y=<_ev!xRy4+7EB=VBr`@pJYn)I8hJ<>I%t}Vl>ULyyo8s3Z_+FX(7efFv z#Bi_Zuii&|&6A5T_2V6-&RmL$*D1BnF0x*WeOOxkjlbooQiRFx_O&`Fn+j{%hKy2-%K>Noa=URd_zgyJ2uoMq>M2`JS)BVs(6m|u1z$Ci6 zWXjGsY<#dT2kBwsZGf$IXg!g;!0utYKU53eML}y}DQ9SZ=&{y8s$w3*v7*HTVu!w(Va~lt8JXq17 zRoWfEIlNaIwg-m`mwjj&A_Mte*bLFbE`Q6DrkSm~mDS%O=h$>%a)lE4Y{HH~#Bg{! z6A4@+ez`Ey&ZTU(1@xf-6~r=yJQRtah%R+5 zevX(u3i**kPtdz=ykUR*1wKr+N1s9<^;62Ie1%-GH!D1%nmyXk)Witu#X0&JFWA!6 z+kX&j1`^@QLhDvN2JL$U7+jRhDN#JpDykuPVvSFoa8)uVH~*oTmwjWU6Cv|6XYn7T zQJUV>qkogFD{7eJ2H!-hzNU14Bm7W^^jp;u5u4Aj!Zk!mH?Q?p<>K_s29WKUD-rvn z?3IeIjAM>40092OmAdXhkpFW7unk?o#N8`N>b+7QV8j6b2O*1PquOaw2zx00L8h9G z_Cu9zN^GCK0?3CppSiNGdEpr8YDe&WiX9ol1#*!wK*naHcKodu4ifsXzz+70ZSBhq z3H`0rfPM9g{#z9JBY6~fBR6D>U;DFRKHv+^=sr+Qv>NHjr~*`?_PZE$<~M=EYJ|MKqwVV zxRU7b=08f-xL1(v!$1w4j0z(~=XKa|Af!_+^mJmPb^Z__rcNs~q;&sV%+bIK-L9tG z6&k_{nODMUr*F|rYdL6gLdcm$Kh5E&yl!9+o^{T#w{^ z0eaqaagO6SevLSep_A>0zb_)&%=EQP^Y-8{4$hsBb<*zz6M?zd4?jMaA;}Ta+9+PP z`?Nmny3Yg6ll%4}I3T+HHn(?Dj7VwWZ#kQ%G~tl>q2UX>hJDB?{<&J`0%2Aj8kl2s z6q0s(c-Z#fm@TyAzxg_KDRGNl#PB?>2dHK>ejSa&xlEOD6B2`J0;H!-rj1<}WzU{L zQ%oDVqdKCyPoR-Yhf6IUP3s^Z{|4jm-YE~e5qwp4-O?Vi`)b`-w zJxfiiKQqmcv!TVlm2drB2jU%x5w~l1JGW`r&H-hF}0EVDBC~a zH0pnxLiu{95#x?l!fFILi}Z}QL0`^)?CCJgPdnYeMy|=^%~>|tT6i4i&jew&&=t)!ZK6YaxRt` z&l6Zi-qbAIH#2h!*GRiynV@~I*;Qd1O`mBu56M)}vWH~UxYo~b=0sDYWf^ksgJkaX znxMHsA3doi{p~%=&6efegm_L6flDeB+t6^WHU|4 zP43oh4Gw!J9~UfPSO#l=3$FgN!9x4u0{WW->{iVI-n(?K$m5E7%jAv<< zUMOI-+@DzMrMww!$x=O$Zhkz6b7@hGc?;>9){qw$&ZL*R`OS~#I?7rtH{Z(KZ|29d zGBfFBqgYGLPpow)x!kt(L>uNO);c_!t|!vXPpoxRHeFAon;-99A5(vUn{Iw$t-)-5 zJ(1u1#99|*)AdBU`H8ho&8F*#bn_EyZO*3aiFET5YZbt{{nr!e<|o!#o6WB$(#?;( zayz-0Q1gSDbF75+wQw~R5scO|?(`u@k#;V3sl__E4J+lWS!>;eIorx**x6IBYLe73 z&^)RzI>4}vk-o9cS}=O~V+H*R3kFXt@7IpfuN;-Yr4lgDbnVZLW@Z>+*FqTwb-U5D zi%~)0d6;xuB>GG0o1x|bxAsxyp#uHeN8eejLB+mLCgfU>s@px;7UX5}D9u8iG~=Eb zIRfj`)}FY}cmaqOgR1z<>3l(Z>NBU7kURM`%*dI?tPWJn|ga{&>T;PSR z$^g+LKO}1@S;_X^N>q6psP#({an*Y0DY}4zkiQq7Ui<*5 z_q1%i;L2>h?p~x9H}=fkkKBN#2+S9b7K~@+A-kEjp2LlR$UFA=@HrpMcxZI>|6nQI z)1E_~X7%T{RS>) z_FeiKupd{z1DXdU{dYSCXzG5QO* zD*_b$R5hW$czq{bxKNcy31O(DJ?R%EwK>EqjvBA}*{1faIxJ)Flm}fiX5^r&h0tf; zsn3C{XBPkCc3x(=RWAj^aU0D^-+Ftw`YHj(9@6B25bd(QKvt2NFHh$pSNjp2GD|r! zT-_ZV>l!51SHIVEO7d80$kGeJ#OTiSGXd+Ds(08MQjrA{^L@^d!}=7YpAFb1J-w#- z<)#OWt!Wg-Jx0^mcXo2;RVR;fzWgzFUbXQoAF_T6pnBXL2On|W<_ z<+856DI?z#%bT53M1q>q0^*cvN)OMQ(#Yk>YhV|$>#x{&x)BG2XcRO2A~J~_=L(|4 z@5<^;mQXOyMhKOWhkEi+1@6&3tF4|al7?|hTIu`(A#+YdHyyTD(}YmRM3neF3#51K zC#R}y6cDulOq(m)k^E*^@^f$8^e6fg_?tt|%<(r@{#^&~aBhTk>2(_$qwDFQ;Y$(U zG|dPm>fot*d7Q##g_aq6Y@Y&`o5CGOLch;w!R4eRkAstXhaZ>G81dJ=7>#ZxeGJfq z;3B#l=>P(c=_`W6UUP*V;wY{?T}*F(M70PyGAxEG=-{+kAt5rqcZ=H0NC_nDNdAzi zc|!S9PlL}mCFKq?e~LZgq$&1~PZBTCCN}4kZg(*Wemx5Jfyi_j-y=;GH*m?33fboB zE3}X>(t+l&Q2kFD0(yLg=tp29$(XlTUd?8;itm@;Z6@M6dC)+5N8APLl4yVroigHz zxfrl5GJugvG-y<~k%_SHDh%mw;3>&2i||LU?GYbaD2?VD~V=viub z1Kk^d6)>^{u&i6^K{L%1&#j6?M(MF<}6yl1I`Uc{E751AsZXHryGYOP3NSfu)Vp4kHZ8% z4v(^j(ucG}4lRcQE(xKQNwIG@JBlx7CaLQ@)#abEiIg`VgkaO=M!7`5ivVAge_R!S zeI>{rn{n%7g84RDpEg<_dAi4u513NXHtL$@r-VX|;E{GPi7A2+b-z# zgf|D|+U*xkj9j92nS*Poo~9rJ4Z)Wf^v#O-1uMBlY|)B>=n+^EU1FLVc@FuBQ0%YY zqaOGt?-BhvrbV@yn+!+(V+v5G6>a4oVNIq5e&AlUmS%HBI|I|w(bhE1IA_Z(Ah!0x zJbKH(H(EY^asgF zq+IljvD0l)r7S4+vum230vp{8ywJ~RNop$Fl}@SC4M_URebFioKj+jk&B}V`saWPZ zFHdQ$oh3!6PGn&f@FJ_tUrJ zNi-bbgYh+zvHbpb?!dXoP0$QMFV8H}25{*$wRgALgF@Hk#J27oiuinw8~f3B{^;!k z`RH-<_VUM%WpW^ybhJiBNMW6~T=YM2CV^#&UW*)JJ(Gq7d3pY)sR8-xsr^y3*=(b@ z+sW!R{+q7_kad^b3f1S2cWL(AYxSJV9}uzJp?>OXsKfmwpGLEka3O|(lSd|V%@Qqz z{%g&yKkk9Pr)2Kwy!!`lEWh=O$|^@yCg$Nz-ZB#=oO1x%v5MHz8F(cGN726{W$E_n zZ<@YHe$_*H%6P-pU*$R{Ff|I18p4pY;x$Xca@=8S=_4av@0_Iohk}fgXfJkyuHt!* zUco8lX2-0r_4Z`@$GhO#KXki&T&CMUqiLFOdyYmweh&$PP648pTeS}-jit>BJeP5D zR*!flQpSvftUgcrdkjGKLOL)^4WgrN)@F zHmC1{-e69qHgk${UvYc_FQGK#cM3}sAhN@M^NEIPThwL%`5*wf)Ty~6AL7;iQf;Wo zi7U4ICfet3_W|Los2iJfEZa&sLYBMgf;!js!wn1Ca<@Fa2t;RWZJYfqOISTJ-R->c ziydim$|TGX&2FZ(yVaWZV4yi%d1Psz`t5lqkPQ#U z&AK}|vp+{{5}sV8OM%jBGRQzD!dn64+U2n=({wXA0=N&I3EhH_51p%DmC89>S&m6s zK?Pp!u?;><)GEuX+LEWz&BYrE3Tip0NP)k2tlkswaYmOsATwa1e?M#tYK8sI)zxY; zwAFtN_8fF=??;YPgj;dBnf(pDcLexvKRlj~D05Ey6?-7I1`6%1=m$D)#yq3*W{2~y zTg<`(OQtt&{|LR*kLe`-O{ORCUUb1XlvXJvHlX|y4-`J);|6xpWPjl{H?d~cki#Rt;y~Ev=YPxHfQ$FVXOkXKU?QAh2SZ7_kTP4 z|63*`_toI@hPH`T`4%qmWamGHYph~T83TLv{(9$p$D5yfY0K69mE-RdJwytMlYW-J z7c%@3d#qX0G}(@9VK;D77QT{|LNewk;`Cw{r1}_2qYavWg#aLf1fV=PeMk^CD5Dmp zD4e)*MFyV{*5E^(cvrZbZzMqIys0jiYt9$W%dx=A(Ua^EV<*`Q$3j&$v`)5*ws5K= zm`H}v@Hk7p&rT=4R=9ds^abtIN%m-J#oOBXxMO!(Z_cdvj`XCCA{hXI71rjaIaJLH zQABT6(D~E?`Vz_Zu~v7uQxnck_4YL|G2L9UZJ!GRqf?y@NY9QKb=%48q z%#G>V$HTOw1X84Xja(tTG1ss4@P-)_FmmK1 z6ceY(q9wMdjq4-mb(?dw$-9VoWN(eaA&gxC;ul zVFiqmk*zu_Q z6TewNGp>lC)A@^A)c;6BbMntBo*-!Yu|L6c^moC;lgjCo>8;bHufV@YN}pN}NrS9o zdB`q55}OGqRT;;-%ZvMz>v@mpV?{8LFqI5`U3AY|0vpIrB@rsE!h{qYb(=n|4;tQE zbQ&f>xsZZ4nvjCBa^#rEVZt+stC>(0qVrHs<*R*4W^n zgITl;{pg?SB0rFbtEIbMKK00TA`|WLGPjItlS4{lDnA*c4&#lYq9PS;GYmmP zm&ycU&-hXY=Qmf&db@Rjm$n430Y(8CYa43sA8X&#o-9iB;cd8#6bgt$C;BvTkYcv$ z+OwdIEe4Tn2yD_8*$)c{v)xDUfW%X5ED-PjqdO#D1KsfFk_KXhq?$}P& z^CyB>YioByYblJ|3>GaqB4bq=dw;udQMmVoLp6B>*y^+okFD7hdvANN_l%(cN+pud z$>w?u*Lc#g@MrH_LNvu~h#qLma_Oo8&CZPF+M&UClLAg|c6hPaL~NIrK9yPz1f z&0P6gr1_*7Lob?Th%3%q4q~8J4fV3w--6L3eSX(P;~pykVkR15Fuh*dj~Dzm|Be^} z&NG%|#_`JS0#YHQCvlsVL{33qeEW#xe%)wX=34F|S1wX|Vr1FatU%7`_yqylt|f!Q zUX8r&1Op3B`wP2?BVLZg1#9`u>A+x7ft?U|{Cd>V9&Qy?%w|%2gaS*9dG&OU#`Bz_ zL|Gw$hd$cov}@PNjuRo0*i1VHZpFzL5^!cT=iu8QlyQjPZb;UW9ZQq>V#?VwF} zgz*e|+3E~{nR&WaS;a;qMoy}|zJQGo`D5x5Prkx=J(TnMDyX8#_K2YYyN}r@MYJ4B z{MMmpV`2{Y&wz=k^<8I$NF}Sy1EWCmQ=PQVv^1f}%&$ z4RI5sYoN}VJm6km7lW@xir;m0Yr=#W5UjId76vUUU%j}qp8>K$R^~fLM5CR z=IhbAY_*%Hb`jM|hL}+$)BCZ^vT2yuGUPZa0GDTm5(N3V6VgOgNnIzB z>CM)b@9s^->0~^KjCo6PgbH733QzMT&+;DJx#9#eGkyX~k=y~|WD?HSG$Hv=zt5G` zzge72SI*V`dEU)=m!1cxLgIg)nl;fVIqxoMh_HHy`%JtNpc&bpkI|+JoNg|N;OgBz zGQVkDVXXN}(}gK4WI?&V;$B(_JKZzEEU4GR&&SY~Ze7Z4_`UUcqre?2A)4Ci?Hi$| zsVLei+iFCjj0Vy1)L`O*T9H>B4Xr5Cqohs%LbNpDwfWT5DtM!`kX^=O5qQUKBk;Ac4H*rI5e=74euD zh4#}u;1G6^V`5wSVz6G_d2K(s!ncCd0gQjSygcuO@C0u}ON~OPvHCNA%Pep}>Hy=i zr=vRctk-|0iGWxuT_O@TQ5_GXrshX87{>cV+ytQl4>E<%rf{acAK)+8ys#X66>PMR zFP9TRQFKfwwy2`0>C})NDQCN-ood3_2%lDp8j|BilL_2-z-swT6h6@Jy z=jmX`YNIagx-PRpR|B4p-wt>tO5VJ~t7)OHRz*d8!Yd*lp>b4xBF;A6;*Mmx2^Bd7 z)qZSGq5qE6G{W~*=cx67F%3StHl4QX%4HfgE%r?*4oM_7eP9wf;jFsym4ym%6k9tg z?-Z(POMR5H$H>G3l-Z&}OW@BEwl8w^A_)RHC1kAJftT?2UyvwbQ74yCRB*WiYLVqf zqajJ0FlM_HCH0QyEZ=kkuJDAcWk48@1CtO)`7ZG%1znf;EkEz!68}Vl&i5z`j0h@@ zQeGxu-3ub#Srq+&hVJ^tpRaO7)b9Gm$J}yNDwi4(Y)|!K4nDn~xwh7%j>@>or=WNm zySf9$H(a57U6qXKU{*y{BvYKfo#vrcVQ}jk405Hf5C8qi zIl0i+KR52-a?LiR15&(6&WhQRn6#7iS~sgjRAMHHfD*Trnrt?KJy*Gpi9r@)MAEmx zSvFg6)jN+AfhZ(iwF@LHnMAG8$xhJJPoRTAR|%SooN$Bl1C=KJL#B6m)c|{nsqeua zaiK*>?llNkBt6QI@58^?;cf$YCHw#z{n0ao;06kCcnH%0`Z>l z6=c5<(nUUd>g}r(1F*v1l3*Jl9V@E0ws2E-z4d8qTPf1Ymfw(W(rQgwEon>MCyi45 zBm3!#NVoB-r6@|MoeMO0@Yd$Qj&+QhFn!_`IB*rKvWJQ@gkN^#kWls6rI8ZU-o2t& zdSllf8Oc>5Wr5iHed{d;TotAxTq4&5wq8m012lgH{C8q#>-Di{+Mv20`A;KOR z^T2SeeHh9iQT)v^*>d|PA&_e}xMFM=N+wMB<6%2pTX*o!g5)DS z?~`vzsj~eKpBVgYWD7wfGB3U`J})x!G-M4!GN~2Y z%Ig1%DnC$_Z>i^=scDY1Dmh8t+T8BGUH-rC?jV(Kru;tLom@(HZ~bpoLcIXAAkL8u zHj3^<$!YrW*S|n)4A@en>uF8Rd?<JHQdD*ZQ4HLn!` z`^<{!F8`7MuMPH@_+Zu*1$L~)9uDz%z16;Ws~%lvkN_7%?Px2g#kAva<>A3KR1dU& zG$0Urx3IqOrGWKvgCg=iK(po&5RWVXtO3nMo%PntuGE3KBbvAiVf*r->D7se=|=mS zp~RX$qdlA$O@yP$+DWm6dwfMrHT-_y!#`7m>Xby$9`;r1q{LYt6c~nOgVR^L7(qt8 zJ(Dv9Pc`;Il_UbugX;W`)bA;+JH7sc(&&Zt*aY65IuhEUiEgpk(y7e>Gea6z1>-tB zHBd8Phy^ccNT54VToK{c+B1hjb~=bWhKdaf%m3?jNAd~NQoYrU0e+8gxNB(1=Y?6@ zVy#bY-dkVKnG&#`%iaV4xz*-;A9_+13a#avw*{LoV)ZyKIy)M=+~Y#L z&1cS_pTn$OF7(9IHpJh@CI$Yl%7e{RL|Ds2+G50gjEE-;kIS^3Mi`=hk?)CGb**~> zNn(%=uH*g*Eg6Rd1Osy}aYGnLSTPDRJx2F9jHgXK6M zf~S+uiw^He?@SF@&%5VQ*uEI{W(L7!2&7XO8DPC0+gfN?`YXlnWWxW%X)UyPcLDYJ zZ=S{%gB@kK_}xKwif-*e+iV_fWEb(Gbb!A_Yn<)d9(B~d095;(!GNw%8HJ;%xhpk^djsH+ALO@2GL-Wqr@~UsToEdAXuz`@e9@ zm;k<}{rgn7{bPdPp*>3-tH)4m_W?wy;is?vj&@(W|B?2j=nBn>6kxj*!zQU6nn!IC zo>JVQM<#}>wGsU0Fc4DYpuK6>?|C$Ax%!qH&yLeIo(Qz4N47TP$kqpz^q9uyOx7s8 z3S=ubb6KJ{vO3cRHn2;nn!7TBHIquCgS@Ct+(<#NrKN6j)jB^UISD?h-H%G1TUL-B zR`Y7)^+s_almnNIW3^Yc#W!&GP^!j^T=ks5Tz+Rg_o*H)L=+n>>f=_*R-s(bnlFz_$sGko zAJOAHn~KQPged-8;3k@BH-T+d5PHOgKizW0VS3zy3RDw4NO76ixz5n}V%T+gO@#UC zc2>};VlMrKT5@XWxbzmr2C6iA$rCtm@gAfvjtKGF1mqld0!GlixdmX!dXB>K|?Ba0Mi%q67ERVQ)e_Oth4} zqXzAT-^7zNTF*CFYeU$*W9eosLP4|9Sz@M(=s{^mCWru-NEqTQVaRotA^NcQ5y57C zE?O-R+l}gw7zrZME^dQ^=@qoGvaJt*Y7x;rvIa}|O{eb0Z2HEK4ui9XwaR$2QSeNL!wZMbIk z3V*ChX^Dl!j1GF@4X5f`ir5Xy!`6lF4!MX7jfqHQuW(It1swd{{@4tX=HUNUQFi+2 z>PMqRuoL?R0<>KMChnlB_e^`M`nl~*Oq5pyYi82gpOxaZCV|SDZ`{^`ax~OFdV&nV zfO5lp)7C#pSYKau$WV1k*&6NnkaS2?9tKtwUB5j!fI}?MdrE~rzTBiufNXTtXz=n4 z%@Rns8kh(Y7-; z1(;4~)UGAlGJpIQ+R)aN>-_b4HaFeO<%zB3EVu@3&@6RBEmf$qX>U~zRaY6-Aw#lj ziRpMy?yf&V!hn%xY}bB|v5ZjLb=*byy6NoobZugy|KMOvBWtBQg(oH!R>1B*C&)O2 zjo;Poj1z4y*6_;Io)!5`Z%p6T5Fl}L-O$jc>(D;+js+f@`b~_8aM8QY$ zIcBRzksoG?oJNr+_-e|jvfBJ|!EA+loFRNLc)^}on*3Y#L$@;^|HJ*%6 z&oFv5tD}yLq3?mG_>=8t7oW4$-b2B_s!Vru4F5g9^zStc_FA^Hzc7UxmN(iLmL~7# zOJ+*0&o7oji>40-)S^pu+W*jek1j=}Vn9yiujI6TBGWZZ#mM~HM^H(RwhzhwdIn!J zSG7x;yUp2Y6g4agk^kH)?cKh;tgFo4bK z04u`KeBu20%glCMP@3G2I&za?=p$3fbP9zN^NQUa-N;*Def<&TS8{jg5oL2PYP!e( zjy1P*eZxlJZstaMiY0F{`1JG7x&P(#$7tnud>Cy1sCT01fJ9NV^}?|AwaqUKuU$G1 zySitCv2Xej-)jCQj5juhhG7l?L|fa;T%N!}Y6}xd?P#|rhbu)Wo<-Lw_x2Z=!OSg9 z1>OGZYEo(K40ig&A3u{ajfoLQxi!@BmYa@monPnGAnarYQu9}tV_-%h%TNE!3bSC= z*xxc)q`siy2VUR8iHmx>=lyt6*4O(Et1xs##TcAx8Oen}$2f!|Dd3Sab+lm#ebmxu zPpL)AUmPyn5K3G_2*=L}EFbhwcs-PuUdY6RhdtZ9rXqSw;MPESQTyn^`KVTj{8GKz zSnh}YXgUZE6WdiW?~v3vx?<@C^Ri!RqOL62Rnc^YJT>MlahGHs`95Za*L#J&YHmmipO0Yy7=eSW2P%GdE~PL|2j!{N-{!O(ggv`=#g zBTV-o)9gNi0jE};*@Ze1HHB|M+Dz>66)x;u$Re*VqnN*?+N=e;Uqwa9_t>roe8<^{2*f=A8aN*?B6XYD<~)-B;gPRFXf#Py z)Uw{ecLzDthvX=V^*G=h2-oLN;MVXU*SNgZS=TORC`~>&YzF^{qvbsM+Jh=SRFMmH}& z9t!!``gyT2lWfxpBt|~!CI8+{ZdpyT;mXzGzm&&S7r6@SR+Ys;DDIAz9C*D@MdU0OSss6MW6jmRdE@gD<-?ztR>MSd zqt)o)%6=(Z&*Yqa#`^l9rYU{z$yE{o9o+J%a|{Qn`U0@0{^$auWB~6t{oM~q-Kk*2 z0`EBAVBX>7O%@6UpESVhR`izpF=gjh(%~j1`;j{bJO-clhQCS{}6NK!ViE$Rqlu<>t;5ZcBJj zA^i8b_KWiQM7gq#tEb-gx0nmcFas0j$KS2nS@eW7bkQz>Xp79bL)P19cUre-v~x8b z#3%4Z{FoAz*?IK?oy+)&+6^pCtG6_+#0q}1U#STXRJftRxYRU()l1r}SQxr=TK+QhKe0=g@wb%fwD3y80kthfZb zd6KE`fbZDHqZ$#sNviyc6zQl*xjz@Z2EhJrXFGSVYdV@-GtJ0PSl8N6O+#(;P&_h< zPQh5SuPjW)ml{`|meV0;&C*wI^2fh4K-7Ri^8jQ2=>tP1PloAGUTnv76IHx}5{ToW z&!L7FzYCOhG~n8%L|jAg)RYgT;`5@a{PsXsRXGY>)#Qj&l|!f4_n*`(AhF9U8v$q_ zmB3S*nsp(81O=H0UT+z8CANi%@kFU~w++ez!A`$qaY5@%>GY1lbwwp)0MX3`h_39k zxHbT!p2A;!dz3+yv7P%9#wfP4AI_$a&70kH*+o}ec75oS z#xkT{(<_3pFJ=e(al!5b^p<;Rh6W#tUghRep5WtNf!U!`rXNnm+D90{EoNl0d6Ijt zE-jAJKicRUJ?!ZVE|_&i;FLvWPh4^JRkH)9%sjl`E(F1p&~+Ne1oi#utL8j*2{ckmO?WGKN0>_`&XIiV2Lv6N9;gDbYY4nOPqDGNJ)D z0eO6wxA%t@xqWDGvPcYIXMcn*sk}-Gl9Zh7y-2^9l;}ZUM8_p3@gni(cC8BA_p;GskrJ=Zk0z>n&8v&&C|`p3k)uk$|> zhzGsj(_1L$#I7`|F%NbT+J5Rx-Uiz137Vc=Xg9VK$-mG^!NEoDTs%6neDRl8Tv1S< z>6phi14(t{h+btN34n}bAZeIe_Of~A%e?HDXpKfv!B=mt#=8~ukABa<+(lPhF%KwX z?rj4@7ey|cWdN?fn{Pj2-qK>^YJlysd|RU){xU|i`9CtUgL1Py#kz^DA{;Ti)J-F5Jr`dKUfZOExQr?e&!s=Spmu( z`CnFUn);bpISnqea)IV4eWB%L%06AE;#8fAPt9b3#w&~9-JO!usd^v9d+K;SiTm=t z5Qu(Nr9d=wfS!iy2|dE9%37X!LiZY0XKvGlL83eulx5C74`rSGJ}8SZ_u9X%C@HR| zaoDzy7sl~Yb?cJz^9?GpVH__kon*xg!Zd*yzJ|wfOD?6dYfn|l6Wo$Y2c+R z>~=56>)r{?CV&u58j0r%SGm~%mC!W#&8+)92 z)AqH;AsFKNQ1wpi{;XHA`iq<%vNm%0Rlb9w{0c=)4CJU@pb$XE{nH>IVs59`5c#3$ zofIbSBi_* zz3$P4qE&4%ZpFlEt}qf(I(k0nI_HB;#v=}{qlUGS${@BJgQ(a|n2#T7Y?cSt$#@*o zI+j^|T64Qh$GhvweUai;z)$ekLp|TTsC)nD1+vRejK?FP zjwAFOsNL0N&O;XpjrKNcKXc8~AJPgDP_-OQgZ3&KTTfBu3U?Zuzl^8MfO9Er&LSyK z*&$RVeb2yJU+SSO{N(rNn7u0X`r|x&>HkYVuDvAFk6ZTb$3FWhdmqfdy_@3LIu#Ap z_5hr42n)^VVO1N@b4ZBNav$|2g@d7yg=0ig4qIKd;i-bLkVe**smb}(*A~<^r_YZ} z0!{Vi=_aW2P5f2_{ozfiQKGNS_uB9LeuAOD{f~_9AB?3BpZ~9*|Gqu*{)cVKxxKJI z(I!Z2Gl`Frh>3D9uBwi{KsO^tlck7aI}i6S83O=5rrwdY-5)b94e+(%dEYUVN3|dn zMv@!O4h_}Jhr3r4@*v_wqka-6ru)syFqcaV5_V2LN|LAVTVHT~;>I0};(+;w)%qVv z2WO3bJXrWz`os0Lg%O;IdLqrFQA?V7e`s#$oY==)c7o7#qpaK~Rcve9AFoBhLPF7pqYO@Nv!SNew$9(~v%kV9ey zb%d>!sr&@3M9}>FvQ|HKalzvm<<9(^6S$n#D`-g`LcAY!Af<(=@g8m)& zUHxl5Pt;AOe{@YfobM;0R8LOx7``97S5FglW^i;jIA%}!sDk;&J5F7X{$BW6uD{R! z$m{RfzGRezaUSB>Pra18B2DnnJm#ATEuy6FH-luKF4^V(1Ao>RZ{b5>L)8Xr%(FaM zB^&g2PzQg(5(}*L=41oAEqU4h2mV-GY~EFG4f?Ige6PuT4}W8O`Y!ahqJhO(JG|ss z<$bo^Dw)rx#X2I&7Hhy|(UPhS{=%-<7MzayL=Fus-a?l@tG9~JCSxGBbu(q^c;pJi ze0a8Ywxk#MAEbub=%B&H$Cw<0i;w2_7%I4F=98E-1`WWq_vou=bnLa#Fa~QVoH!~cvMj+&)#d}M&R2+_5!qwZaJx{ao z&{Q>rtvy$JS*6)P^4M@B#_a6nb{S%791Ad3edThkstU7+ zURbL{6k>CF7yR&5_c9yE*t+W~o>`kqIh&ohT>3IR!buszw!|HwQa8PMBB4~7o$45V6?PWkVPbddg;k*93aT5M-+)Mst4+%vjY5t*WN;nmDE?Bk z)c?pg;t~D_ftZQt-~0`-6?sU}NKs^KQm1Xt@dnPCh6(s^yt)1HKN_5Z1YB|-(L&~u zie*Yol&ra^1wa`X#sMN^PeSEZJn&P3wjqIbE$q*P+Qv~)p=nEQK7W1zE)t!Mb{(tP zRz@JY<2~Oi<0xtOski5rHP|;)Hq_iu0f20N`8ol}7X1Jq9F9NfuZ4R}q^yZQc6Q(_ z=k6bx#j8j~DRPSG4@docMB&B|e(@(j*?0Emi}Q@(dnb;P+5XhqKdP*+`H@<`$Zh@N zTk=a+ic^SFlgG0C47RRCZ?G9TQ9UHQ^-X#zi^F={%V#do^~Yt_ z!!Gf{6AWnnWE&ETi(;Xl*jXq@_ss9SxNI85@@)S?jAAY$d$C7uy;`1rdZEu+2&5&|pc z@a7u#;$DXqczE-|;qn}OiFDxMLHrzv8-Y?dZqqCyPU{a+2qbI7y#vK})q?EEnaN&TsMQ}yAPz_VNDF+J=2%qgJ48686pMd08g>G#)w5V%zKmQU{5lSFz26H=oh|(ZnyNg6|@7@Zx9LYPwa2|QUG%tW` z8BSVeaw>UtCub9rnw@Y2?p@Bszbewie7VaV6AcxgbG{~~Ecpo*Bd(C(L+3oQF$Ypw zphilJS>xr`L=G|eHIdGU3rr7^|B$f>F=CN~Kg%O0tKAn_5B4tV0FH%H#(ft+CI2y+ zC{JeoqJ1=Xk-o6ZvM_R|ufOyA&<+NcoJx{&^b5t}sOx#AU!BQf9s=nX=-*(ke~hhU z$$1)2p_z?d81!vQ9;ke=J-s7741VK((yH_3Hy5S|YkzWu1fC=R-4BtPPul=***0hX zG~x+JK?s%Mf?_S8I2blAsXv*m%-(I}L@J7$rp>>^PwoCkHUww&CnSG+daK)#Ec0pM z)JzLhU#9A}k&fnrCOF8>gp*ny-0=>MS<TjD)P-^?0alxbi9V}dr=Smf; zR#L51u#4I?tsN75lB6W3&@HtWEm0C3DM*eciH2YI^%&Z{KhS`S*EOh)g47dLX(xGS zkvl6bQj(>nVn<%kd{bHVO+;CAU*uVKiYkBEjU&ef$MxHHNNVI-W-a4C#W9Ch(4PPQ8~^_|{vN>JzW9ES{{K4s|5yC&35eiAuG;4K%>U=1 zJD!8vf0On1J@J2jw*UH|O`5){^Jn{rq(L-;TzHHcsz+S*Eo-O_Z2t_hV^R4aTvQ#s zbPIJln8(jw)Dp>t)a#(bxLRGy=#n3y)%^^&tkD(4YH(l!-HzvXxbB%rx225sQAsHm zwMc%*_z8Bv%b*$AX|+({4y*xSorw)jehk2cpPd=1sD;yM&f_fnfjUXZuGLAe*qWu% zuy}=bk>cppqd-2O7083HljPr3JQ@!1% zDYQIFElr9SEC+>3A4kp7!sCsuqeXc*!E>Ce#07|?$D-;nT_M)wj@wha46=@al3bR6kN*2aC zZGE~O3WPCD18bdvwL+r>sBzBa2xot<(lonm-o?(Fs!$2eA$djSpe$x;!Bt07$iUZ0?E@Fhrpt-wFFDT zg%Mz}n@KES`|wAHEZiQl79J;5>slGU`d1P7vsXYfT#SaeycX2Ds>d3{t*pRtzFWVt zB-ORFDh~6Y80vStLvi@o8KJ@Jt8-EDsJs@3&P+*!L!9&;zHBbO;K$vxQBsZ2m&c9Q z7J#j##yk%4SV5u0Q>zFw5!j1`eKy38v+Z%Vh_$I)6FUUN09j=kyv3921B9>}U_;e^Tuohb8^!&&YW4A&C^dpLZDs!ao=I~{k$ccGo1zV|p#` z5N}wN{7Vd?yI@;Ym(O`MCpNI+ulmTg!m{#^i`8KXB%^gCu8G!58od__9eS4(es%?x zlb}P?YA?WCxTIq7Mk*6GF7B`bKX3Sm4GPczBBcaY-`im1)?rx7VOY!Gcv6yFX7t0< zDi>q(TxJQ%qpwt2lusPOgcFQUl z#qg}b-}!~{gs&w`54P-YxBMCgzICwu?V0oCy}kL~#dxoL&M&#oV~cVsKFq=K3|>SY zoGSScItl)+`KJL&*Whmv{{GmGKNfw=XiwqDu#mwme@dcG1G#Rpcm?VbBjJ}8gp}^; zAAWWc1a5gc9{IZ1#!c}_< zxK@y{;fn7e9Y`FwFJOo}pCVM{1}Jd7Tj z=#9{ZO|_c9r3w^AvV9;&Dj!HV(EyC%0hIr3Nyg>(g{)k^sTLE0FXRC23z_mGHMeyZ ze1VQL1TEkU2`6eWJ#qp7(3^&*_{N{HbwcHxZ7Mf}%HJmCfb7~~?s@TBK+ z1^DRk=Nvyu2ZKp?Yz(EhaT)z#9jQB@R7<2F+@=2L;&@JY_Z;h>lH}nadIAJ$RiuA+ zglbeZ>4jDyTv(Ea0JQ=JuNLE|fU*h~lfbQ6l8jMOt-$Ac0S_|$XY`%1UI#%NZxX2? zpU5$<#XmTN#W=X$04deYjKQ$L^sm-5h{{WPN2+jpN7d+>0#|M?YN!+%uvEA71-OKHWRhSP#j7t%rh1)&c3|5V%ofY`ny z3ghx=axXm!5LA6Kt7Cur_lrZq7uFNewy{%`qA*VUGv)nrV#DBJMKDF|aNK5%n6G%# z^}}}GjoH3)LwK?u*&2CT2jhGTJk4Lfv1Uju=8$9D*NSS)vH}>b@rTu(x#wT-cZ$A? zeWMF}a3?c4gJlR;t2_m)KE!>3fX(q2;;Xh*9U)6u%*Km+yDr`N-&2YdXe4?<_FN|>P*a$<4LfGJaoyN4_La%v?AQsPw2 zndrwgCo=GJ+>S^P|M}MGw!dECubknIAU-0V4agQw{DW+uYTz7Xo7?WV)lsgy15Q4x z2A<}5zDPYkI#s!^V65Cq9G?;`n?@Aem;0S~LqiEl^r;k7eRcUe# zs2x?Ho@ey@F*1$%kz^aI6Gqx>I6K~Q1V-|}Cz2c=0&)7~ACNIxHHo;0TAI`A!6snW zrM(1DeTa+B;gW-k9XUtFhH=g&>nZ!~zmZ7GmbCRPn9y1Fgiy@ltq2dgkZ+y3DkOf} zWNCMJ(`5y)@NscqXA}#lYIy_Nc_*$w1QUOQF+{+F_~K+Sit-oJnT6Q9IRywL?8Z>` zLipIjS8T*ncw5jGu5h_xpnfEG1>Y%59p5v#>c9`fmtV{+D|?+aO;IPf>BtT5T{crb(dV@)B?De%9$)c+n=|68p7w@UqQ zt@;qi61S)KP!lniw<{*HytO1 zKRP&hk#Dsg{x}M_xt@ZrYT)W`G}z(AIs!8jcU`3dXmSYf5?N=60E2ZSJC{UpYpid` zFyww?^I%TL_8*NOa|+Pg{B9I-quwu+vt6S#5jct9g{?R$a=SKjVAI*{wR}%a zg7NT))bjBPVBwph^bAh^DrtsQ148qPLT#%e%gZn&QBg>bTmv8DjeQEgFHPN!33rcdoWrNx! z=&ePMHR!oX&5&*!L`pl=A~kaES}22S5g>Pih2jz;nk0vJ!~NXdb7ChV?Bo@D1y&Q= zp9(WzZTQ)d1F9}sj@k5|-Ws!6j|Fa+8UiBiTf5Tw3|eMxtYOtfbJ3vQ)DW&Q!8_J# z<(tZ5pIWalkv4T+s5o_6H(V1L>xnbAaqf1_=Z$|kv6e6)p~2BRUaa)77ER$0tXK|x z?2Y&*>xUfF0YGF>KY+L&UPxX(dm@GxYEJ7^VIBfg z3UcDZ@xQzr9-Cb3y(i|=?o`}|L#ZEl@mH<{`s^r0@l}-tAz%spFM`_tLUZeoNY%wF zYNIPKc;OqK!CM*4IC$82?p*jiLI^)m6qp*`J(|QNrBwr4$q-l$T*G86)6_8WHi&6Z zVJOMhfq&t|2XKFz)A5fR5^^Clsv{%G7j?MGMD|zxrJ8adyuYW!M4;Q`(<-*i@we9Vw+WyB+kd<;=RY}zSJ2-FK#S)1e_elD(FWHn*7E<}c6`_V z<8Q&=y>0(npR=tmIA8BN?$+zF>D$NuSf7TLR>h19a>7?H2e}pUN~?{i+SOw{*&b2^ z7bnM{W(^ABwl61RLE!0(;Z;4S74<#miM;R?*Ww-Aq_A*VYW5SMz8@6AHCTk|vzMQS z=S3Zsg%jiPA=UGV!$Swk**seuIB-~23_L~d821X3G6^XSq`jH{-lo=ajPY3G**GtTOsmi#SdF2KPvxn zYx%}r@t=$Op8QALEZ^KKK7b?3%{?>0%BC5Yb_1`N#E0NfsLZ#LYF%LuqfbfMjK4~A-NZhC>}K)yF0U7Rntrt87qta2k^h*x)M`Z4gj~}4 zR*Y`Z?;^>K==S?hoo#D*3LiSnDo=r@7(QM>AS?(75{ z5#X=Z=-O+OM?FZ>A6fhqgUxXV+vm#x91OLpo#3zU&?C)HswT$F9_o6W#9BVB8hDiR zD&2g#QGGOuCSNUlDJN$S1Tr+hf%~gyUYHu%6Uu%cD3JB#c7}m@?%R7XU~YvB^|S;Z zMh^U3%JMJZvs_faQK5<@$*Bl^D(g^`JiCh)@0iBFKe548@nQid3dgK*UVm2B8qx>9 z-|GBc)wH%hSGcLuUkE#Vd%x^Qn;~NffEUUj02FgBm%=?%ShA zF6)v}jcj2zg&KK=Oe3orS@V!zjr{0idxcdk50+Oms*&(Jwa2ef<`g5mQ{f}<au~6p@iQC&>^C!I4@33z9##$j#Vmq8kYmbCTad7yzE8)S0I{?Jw-x%W0ffZO>{g?Mn zsF)I>LY8B_$QDca&s%7+frH6xNXDFM)oNRKRdV`Q1hGb+!*eg4?_-@EiZlR4{Kndr2GF305qE!1VBXZz3iu6 z&-SoB8r@(eOcw-Oa>aHd1?eS70w+;a(a;FV^eO@*)HNE<=<55dI#xYxp~U+xRSp1XkYBU^Z$wN0Hq`E0*G%wmFycSN-@9>9l^lt6mNsb@wd?lPSOsHrcHP z(-7J5GAH2?5FZIs>7iHRN(b$K)8}=NdN={ht&Wt9#G;l$ULt?t3*)R?p<`9l>wu6H z>JEO1>G+odeL&rBf;wD-bSDVUH}*w8ysZx>>S1Jk;9MM0PDdJz|MqpSQrg@pa^}p> zkp4?jgG$S$he~s|M$5)FDWAP3ZszC|$^AH5hC=43V1@!DFW!=&I~F7T+$g*-59-2F zYqi_E8}DV$9}^F$iF<*-o+qQ{4D%npIm3YN2=@FLU(Z9){F1VhF~EQWN}yUqbGJGG zk`&^txQ`QKbOMYJrI=qEinT^90etJAAcniGk2F3)G>!!j4l>@xC;2_TR_%}zn(oMR zdwehaFsuu|zJB=4#thVu-c33k19@;jZIXhjb-se?zm@$afrKJ2#XU z?^AIJ{ymI}DNd4mmXt+tPQSG_)|1@m=E#Pv!;>vSsHzr{$RHe=Kutvv@(HNhwA6U~ zqP!dnxdt`HPz-Jv@UpH-8xLIKLa>LoPD$$&2DIQs#68Om9-Y_R6J zRN&vrxZYCg<-YYEoovw%6>=NOdXa+y#tJzx0f%X?8H>RXEF8$bZ5;0m&-L0e+Gj6J zMUxEj&2H=33y=pm76WJwmAyC+LLgGHanSS*V6PAggCg%BEq%aYHARQ%Jy_g9>6RSY zXo6v=0@?WQ>))226|)=dZ2ym7&D-i9^WW+IO9K68h37If{13qs25MG#jt|UdXW&^^ z|9@Yw>+r0r|Jwrn6P}cZPJA+?N=fR_Xc^Lsa({}J72|G#0r};#^Fv70c@>6aNvc;V zxMm7bG0f=r1dnh`1}8xaMDO5Ama5sg9i%qGZ+p_AF<}*40^XZM^EyXsiclvE|1q46 zrND5ZC{6*RRnriEcD#5^D({3VquxaPFdffOssZJM;Y>M~kIRszjZle_WM^b0O;}Y^ zR4>HfvEV(khqs0+zhXJ)v#V$tUXNb143*_6-!~a;pQe18tCR=`NGcJ7jA~rrjmTK* zWsX*o>{(Cl8Bo<;LWQ*r7IDO6NxhJa8k=V=wCO7gJWB!3QUy;yN(xvq_lY?fr7#jx z{TzTYGc7Yf?{2m806qK;4Nw4+mAn-|Sr4TRf5`&VZ16)U+AXf6)izWs|iKC1vgU}FiZ4C=F{@{{Xt zu@S6lcI(!v%K28K-tC0SP#E#&t}0EQiZXgNMfC;G^mV`t3TuL>iBe*GYlZPSE!qEa zFSZvuu?q^>QKP+T0#F@MK`enI$bRE(+#9Ti6Y+1(Z2p94D1`5pi^^;@MY$T^WxdT< zI-Di>zB39rJj$n{YCAY#z==&QsU-Jjst*S~v8lFv7BL>qWnw(8z%t(bWfSs%;yKn! z9IrGvyS}kZ}M&t0HCNAYeD^J-itE zg?u_7KQ977HNKKm|I*Ysol$(_M_dSxXS{bqwwC$KdRu3yZH+~07JmWnJBqqR`z{Y( zLFenyRk5xeN^&iGm%nczyUYrg8Fm?k&$|Hr(_0%IZmkavgbQ`baK&%3a|7&f1DBJa z1}LyoPBoBlvH~TIp%!+<+g;UOx7eeOy=L8f)c-}j)D`L5{lG2ucKeyzd^~sO)6F{{ z*=Zz|HR&8{r8cA;@6&F>gx=wph=t3CvH$p__|aF0%!4AX75Bx*1&=r2XyRBdwc!zqN8IbO943mY&wD!#)9q&9G<_ip- z4Ye4LOp=L|&C=*)EJl)Cx@MZ9EuN&DtmLH$RG1~{!n$qu+=U?eTC5Z4E)U2hl(MOdghmw&1q7a`!fqr z+w$91h`^<(5Gnc1u;ZXY^kuW1m)}!w;Qm1&N)r*|_{*-y?@dPQhkf#UKs~h)kl*=1 z`Tgbu!mpaPW(N6T8s%M06|@EmP2nxqI-nq(Z(b&LqtehUe>2|-P= z6CQi<$Itu`R|ED6p;~MFfHA!&?~QUI$}i+BZIs_+y!l`zl%H-oC~wP~ESwWr2g0IB z72RyAD286skZIkv2qsy8ImVk~nu;h`GRZ8lv3(!r@9%Gx)tUbtojY)HdZ-@#x>#s%iqkyHyPBGk$Hn}i!+eY-+ z|4)@|+g|nC=lhHO53`?Vg}ow;dq#4K9f7tzTJ+|*T zv;Tdsa-U~$r~U71=4SL?r`Gwp-&OznIT$6)532m0OU8*T-&y~A^UU*q{p$<^x=uvL zzTYnY`=ggQzT@ov_i-3e`QJz2(|_3i-VHNI_rHJpRfa_>sGfa-g6aF9$iUy1z`@*BAnyWJ*#p<l_}C%G2=Jm8XXfSrR{c=9$)HIfortAU{MZ zHswwq!_vdU%V)Ii9xJvYICVx%-izC!+OxDo)umMV1L#$~(7*o2XU@d=mGRV4P<<2K z8g+~oE|vx;DO`V%tcJ^_F%6U3>5#XF=^Yfw}a*0nDm11em8U*-l`lo1>q6Cc3$~n*cFq82)!G z{-{u&kH4$&cQgK8#Gi-$T>M0Vsv|Q2w-pf-rVtXqYl@nMxTT2UjQWujewZw9eF*Ip zlJc(d0FqvZN3>=KjYPuF)%fy1i?Lm%2#|9ZZzqt6u`K|vQTRIxe@xQ35`X{1-;?-z z4}V^Kb@^q+c!5eEC*Fp>lKs4WU-Sbx5{wu4!h~5!4rm zV$=zO)4w5a7BW8n5Kyif_}HV)+MDhX=Gu`WucNu+BRp$wR*c(3_E3v&Zym(Ncju!Y zBW0todYtv)5{rQ++ub=)?fY}}8cPaM)gSZS-a=5Y_=qK1SOd(HO1+~^BiQ6CF zPRzOQeF0DW5f?lkH3@(Rg{~c{*_)ui(Fw_>z13UpwSs15PK7LR&}gj#Dxy&vyKe_l zJAp=@zU8H+fPWYG1a%aL-E{7@l~ZmeSg0bU(X!GerB$87^M-{A`{CpuzL$biD^$rc z;ygAml%t|{^yX-xp6)7-4bZ6oREU(|gF6i!P901+qXjO5C!g*ta~%5X}2l6_Wxu`wb1nTPt9;FuFdfF|KYR?fGsN zXzq<40L>pBbfG!2Q2?6fdl0b;p>?p0h()Z$BhV}bG@~gLVy>tTnPa`6eaDBD74|^e z30lqNvxBzZ8(s_*|AJS370!cx2^(rMbVb-OXLu>Mxrno7B;0j4YjI@R7Y{hVXgQ=I zf#H#5lRUua1j*G!!J?fth^FB=5em~9>n3eFS=ZPS?n9r1n{5xV6A~`+x?lfu`4ui# ziI$zEy=BARac&eMaxP$H;GoYO(#koY_G*R#x{uZ$JK%@FaOg4P}6-w zL2QXu6?F#jjqWVecMuWgP}CO&^&Mah;5B41K~IlT!GvzPon#i~cvTw4Kft;N+f&85@2eM}p@6!*&Q`bEIqLR0kGf4`qG#dy2kY_zb`RrHEkI57(M%P3LfJ zUUU`nV(uFh+K4wt3CBaBdlFUq->(6(T)h&1Gu=Hs4DVrKt?h*YPP2Clz-f#}jKM7V z(T0;YOTc@6^uUSwZ$d5|3LEvag@}bh1%QD#`tbYrA5kXNI^zFLD_UqgJ~$5TSN!?&_F! z?Us6lRVMm$SyVS0<)DAFKtKGt)V~`5bsEs}gZ}+bJSKR7g;2pY=>m?liE&Ah*u?u$ zBQ}<=AbiDr(AMf|Tz-#>h}6^HQNINYoB4PNP&nld7sAW8R{FgO0actAv}sq0tBM~5 z2s^4cgBmorYh$h|PH_Kqdk|YQfjb+{W&rnNi~ZoX?VU{e_-RTXKU-6_7I!VRxNA!C z9eFpQres}-Jy)RJ<68(6kE~NFxsr9AAldvX`9}jpXR;RBD*09AS_1l2a`QF^96Kxl zpLr!{-w8hxg=j9-aoQl^N~Mm&4zbno5!A-hNOmuqWI?MW*>)t^i>kraT2N2#bC-`+ zKfzWWY|kCwx%Te>&YYu^qp`L+zK-g+(vF5wq&(kW0F+T3hkI%r)$y@P8zZ}RXHCBUZwboW)@!~NO) zjl-7%e7hTe-(gdt@VU>io?mZq>21vB0PNCL^4geI$@jOQlCL*r_EXS18H8pVGvsl$ zO3vq6C9jQnRC0oHnmx3`@cf32OMA9qs;+A{$(&R2?j&%5wD)fiz7{;L8O0!_%MBFm?!62;NXbB zYTMak(+;Q~Ka8)`k6(aH?SckYLwt-gYrO$ZRh!9a>Ta_ZIo-&a?sEeg#E(UB;s){I z$V(*9`fiAglB*jUlwZ=i-|XX2Y^MOk5$Qj)AbzaT{hKW)11#$GLTE_TGly6sG0i42 zCX-s5SqmUlQJC97w!H`Ab_fX~R&VTXwKJyti{`KD!k0|?(>LpDi*bE*q6v1+JO=-G z;y>zw*S-o~Jv6+IQbH~WqB8_UxMT$wtH9KB04`R#pI-x@dKsYVhPpcS0BP|fZ@$6B z-$@$;e{I}}-3-0cS@6dwnGL{>7Qi0k0`_omX)wMGH3VHdDsss~{E z%8}`?Z4Ad$M%Z4rPQ!LB%6ypn0Jc8;rfz&3rr>*=hHqIAI-f0cp@XYuse{a%R@d1A}#6nKtiwNCkL^AjWxxgum-9-(ew4)&7%k@x( znKtb`09}KpsL&TqtRs*Q3F2?S-k}R2S~j7H9bcOlKL9cc)9nTDM*7!_4^#gALu^ls zZ38R=K+k1UFb3-H3Z}v*7`~$58ZKyTvs4^rbb}kNKKKMB^t;!&gwW@AA0foZ8Ut|o z*E5<~AVVh(W-*9b05)QhXCn{+LoTc~VuJC|7ik+Y!WwTg3n?knSW-TCs*r?J zNhlz}y?769lZ<;Ye(n17x`6!o zS05nb(M+3mwB9u8HJ(kQ5)<6C1$ytT=hAm%@253`;f_Eq+B;GQX|(=4ZAW~h0lC=N zs?4?>oBE`0$51$JGH%D4pJ&*P=kZXsV-dH5mmIkfUIBk0ZsL|Kov9#<&tYaXAW0mg zn7ibdgYgtXY6IE9 z@~d4eKJaHB7RT-c^2sV5ctTLFRA7W+@ft?qN;$0MOIC?p z5|u6}WfEpKh;Ho#5Uq!|h9KG(KbQ=)^3&@!;B%CM4@$-he8vUV_+^#5#^RrRYmE1D zf!JH&&2$HEW(R@yPYrnMH5)QlBixRHN+5&r9mrgaHDtt~7maxzdmzI_^Q6(b&yPV> zHh5+q0q}ePcMDr~B6#TWcabQg{z)35@Gi~$7BrMc8tSg4cRv7$(mSGQpe~L5a4okl zbU-pqfy5)WpLhBZT6&hcj}qHQ0~}gxALjwZ7$q%~&OXwZ{ZX3obCfm00ftCz$R&tu zS7kq=XS(k5G<+)=)yn=KYu%?Yfk&0y1)eva#I@Ivjjn3%jPH!X7r)zFsH2hxhYFU} ziw{=kSYCf9c+C{ed8NSG$0&uX24LoQU%K#n zA8IInOBT=Y)QsmRaz2>_zQYuJkJa#<7=+JW^IZ5`^1Tl}@qT_4zQ623e1?O!b8J$! zp?{CwJ&QLmI17H|5rOOoW;r3o%aN_edLWByY+al47~{qFgOD9;l{)AvlJ%+pSRd?> z2G;fP;$#BrB_C+8{!Fk&0M@MXvLtuCjj8{eicrc3fV@-u1w#E_r$Op#V|!ZQGESlBJ6JNQ}>?p)rm6)I7xF z12u!<60OLG8gyXQ`>KIYUhXcjm4AslC@vBAKbY75yoMMmQ6wfkxZ~pTq<1`k$to_9 zWhWz)9s=k*aBEg^nYG^G1amR~yOaJe+@Pb95$ckr+w_0^d*-hCzt(tok@9AxI}(Ea zud@NMH2>EvS%m3NYcxM%D7Tq!^CSDbGrPag@BfPJs{d>8%yj=(g^RY6*7+&Z@Bg}A zkZ_0mU#rppyIuaT@WJV@ZOj5_nS6`at=6y=CHNCC{GIlH#nSy>m$}d>{MrYdo$`O( zIWwF83rQ%{0d3FCcDQXXemf1i>1Z4De?8qb9kh?%m<6=GS832vf|~R%`t1w5-Vx5D zx7+^}`;Yp+o|?JK{;#(P#hvwkopunw8T5bMKyYUAf4!B_|AnVwNcI-#Wc$(YcB93FD2GK6Nbqw3J@)8a&Ocn{4Mrcz?+_GAgUM5wU=mJDz`Bg5S9su3m;S!FGhou- zTBV^*Btr10%P)_%0Uy5t9}D`sex2#Aam**aHD*xYr#VLQEI*z+I5XYfb;s>q>F)Tu zV()t(GuXzKaDvgh#w|4-$N&)@lDZ^*jJevzn9n)^ItEgm(eP4}{w|kPTz_d$-`uvp zEB2r9cfBxkSN&aARi`OC+w^y>*f(9*d6g;KnbgSPHCopZ6}>?Kf`NF}y8JPIe^+eR z{9Q|Drun;$p5dbDqaXUv)bH;)@K!;(M#NYMCvLIx) z>F;XTAq}hzuF4G7t6$Y%rBB@a9$?KXA3gpazrX9hD<2gRTK%EzDEf!l4Gw_Wnl zv)=zf`S?uCMY=Zc`H;?)k2l@8M41DJf9+=hJIe*ac%T)@AzW~#fy zUhn#rxP#&`&A&DGh8-7=vle>*lTAF@?yZ;G0yrzL^oU2&N9K60uK-Bp&$55_)sVKY zTsc5rk${@s;Yj~xbB<(L5?(AKMJMbkQWNB&nW6gTgD#>o$VD@UdzFS2(^1u5y)CCf zi+Sn6?rh9fR6kctzsve`f;p6P6M0_e-1gFQL)fUy4I#3N2fG)goUNxb%AL*${^`6e z;3()x!n_`!$9Ykm^DWZz9iiuY zQikD2d4_*(wSV|{PkqJ2F?wa)+?DnBuk0T#C^+T%dde+*zz$!*;)vF}=KFiw@b==1 zw+0yQAZjF6X8c$1p_em1AAC{cMJ`ja=k`B>4@=K?@nQc}{tZ$1@W6E$@S$R_bbJWT zcYE+*h-dhJzU?1==kejsYt@vq;6rtrZQ+A+htYopANF_VmkA%7x&4pe!;|N__|WPt z|Ar`hxM_X{e3;rgD?T{$-5z{6+%x=*Z~BMdd3^ZhnmX~}**!DigFim_D=cuw<;mP# zk|$HQDNm*jM1aKZ6e!o$2Dk`ztfy z!wFYqz=w*K>G-e>d6E$yem}zK5C=2Zsj+rOX=Wne+BAR)97*OUM}#&k z$*IL%wWCTC>*HfQ6|E4tV^x=LY!pX6RDPslM(dn#f_eFosu`j38N27iUYHjtDBl>0 zBQ6n@{~{>77afUG(y^|!tI=2NX)C`rhaVnR!QA($JFsr&9a!(d1j5u{mEjkQWvYfc}U?er9b!u?l5~F?i z*%fkwd~uJ(#!N&_N~0cZR9Tyggt#a8_9+-serSy!OlA&cj!%oBgacy7q(n1osWgqB z98I-H;tQjm!m$%@i@o@-CfPu&mmIEv7*4Q0wd7tQl`J(XgyfNCg~`#)^x9&(5hAtm z6Ip`F6H`@^+-%*=K~=>?#>rcs4rmm|4W;!2^6@#5suL8{lk)}_3<$-gEDi3$j-&F-pDxHmCB{!F+st*dKu%u}&s7PHZN?@l{jggc*yKF@3FI}OXj zJ@w&4AG9^Tn7lC|&gAmL(n}-pM6)3`4SNJ@TVwG^&^=tqOj<$taH3E?9%+0Izns|r?IMUO#WWPIUZHTcoVfZ@3IGBD2k{j6xwj8LyP=IS=w#q0!#Ruu-y>b8VX6(= zG6cpEQ-23$x@R7qdL%&600i*4AG!Ir}9G!+Eo}RcB}aa8W#eC&y$&52GkbL6T8%uVwS1i!3myFSlcXihQPS6(@@0(7|sDw zGd`F|gs%-(4#op(^b!*ccjXIt7{X|B9#IxQ@$A*=%gg85+`V2sYR*Uda~4H1i`!)u z7$=Ss%ninBI3eX#`k@6C!j%kb5OfG9-j$DojEB(7tic!d{nA|sji_ygTSeISB2PS- zFa9A84qgm4qsl@w4JR(cT%)PBopDU%M4c@gdZ^?qy+Ov&~aeh@e;Di@iXR1ntN04UhN(0Yt6;@!h!eUz%dAM49e>t z?gJedFI|DD-JzSWLUaBy&syg{zs30^^OZ4S)+WS-j`_HDAYPLD7b>QNN>MQd%cu5p zo=^K3g3CNwr;f`jpP>jBHGl@&gd4R97pJSC6fP=+LNYA$AoUT*>|BvSPjlntYI3!$ z6ALGy>}L(DVch?By&UT@N~PR3?i zagg0>5b2$)u3dvcVs~1I&&F>BGKW1qbJ(r6VXU)afrW}Xr*O+~`C;Fav^biC2NXwd z8`Cb=;)pUxiz6k2AS}a)UU*6^Yy_H_2ja_;??KTBBdvac7sVO9A=pF?HD!;lxa`tH zZ&Ht4>JtB_k&>KjvaNaT0L&KHA%2K18-N3zH zvKvZKY+_BrcF5=WIch(mNvKgn-3?(JQh`&{8j=hqGiM2jIS3Gjq45WU3-@ER(mJK1gb8Sy;I3JdjEh)h`Sr%D7?6J z9QRRF*RB>7%ci}V0_8kZ{|qO;?Hf~`L zf0Ni`)6~#v-{wN8MWJ-_bNuQ#FZI;>MVK<~2UZtxmd~yS2G`LhbdM=8#3Q37ETd*7 zs;Dvo;wL#m=vBps00*D`-?(%lm{ZJWU=J#04&Uirfn22E1@1hyXbBOmc3<*UH04zTLlgMCO~F^{6rnsKZkTZ zoJ4Mn9gEFp7>o}*=+4o@6Q`@4r`oRd@QYB<*X)9?UI09Otwgz|iX}|)i-0p&0 ze&pTnNN~TkFw?N!#eF`-+2;qYYg_5qS;tdjt!fH zPrl`Imu(2#2@8(&-4BgC^ljV!AVTmY-u_+H6PFCpz5GS0Fpu{gr)jFFA*M7{$Rc;Y zsi|t>7duP*215Hvo`D_PvTTLsh5H9I&^AEvmnh#+?*Q`sN$fum{$aEV4s;YX&f~lq zXB1=c!8-$!*UIpaQnJ4fS)Kns_`xC$X9A6^A&5RKvxOrqc0f{A*95=?`9JcNKd zQ*5lPQYj#ilq?hmqU23HUZQ19>^=?KgGy6J;-XSVyWdA)){R{DWHqG}EzBIN5-rmv zBr4kkzsh!kz@*m58wDT_#}@@;Vwu2s0ANfM>#ku}vJjwVoEXP!r^b9h#-wI;FLkzt zxbnoz(e2x!J%34B>s)^9iMP|r+K7_eUvP~V?!4V#YvCERvLkFH?Uqq1vkg{OUxymD z-e~_j)UXHUjSZD=5~STTQZW;p8Av-bR6Y}&`T2Rr6_jrZ(XZlDz)*!43Yhh19lF>_|9S~dwF z`8^{@lwooLK|;d>XW&XvZJZq9*Nd_mCSIGwQC`;@=C6QSV%{hlYN$6(sGS?BI#EGw zp@!OCV#&K|Pg5xRqV`x<$}bt_lg9H-0w|0tMgnrj^3$8M0JdTHWP^J60AFiB;AAy|V#MSHqcoD5?g4D9H zU2s)t%?8STqA zHHdf9xPqPOg1yK`xQo378@9+6ge&Xu1;!hfZ`y78ae9;cL@MUC&WSZNI^^c%pt5ue z=f8 z*=&CU+PnIZ+}En=L6YZyUR3=;7-%%cSd0)=MHRioFNr2!1uN=8Z-FM3pV`PImc(XF zEboI@&>Bojk;;!~M=XHH5p|Prp$>{mD+;*))8n1Pi3Qmy#4u?zC0|321YXOMl+=aB zEzPeg8iAUtXyl(h8kywKNQ-t3iJ)vyH2JQkk~~=Gz`J(zbxcDiHr`R66sO3L=`@*t z3|F3lCnkwPp=nGJ)4SIRG0CEMpSsYK1rQ@CxHBoL1AEk`Bp=}IlB$!%8VFbZh*pZE z_UA}mRk01`2)nd)mEO)z(bPIxwerCbSl`Kq_5VamW6*F1>+j*41;(6d4zkb36Q$~6 zA8_||@GK%+c^+DjEV1Zw@KNegV*PwiYEy<2W8^dHQ|^a;&0+G*a}uCt@2ICaC*n;> zXd)dJptZ^KY!Xiohj@ThRV~{2_U3t5<$7-tr}8c2Gz$e?6r`ZfL1>_$J&iGQH)AL) z%-M?)MG0NdQ3L3MxN@RNgW862??waT^f^@9 z20f2Ltv-lbNcKQdc}0FEp=OBqu7hNI3kpE2HDo6^p%gvm7@$F0<)?%4^>MiJ0Q?%M zx}cz9Mw46!xL<%FCCOh)lYbdetW!BDaXbRCfC`u41Z+V{2;-`$nrtWFfqALSUG9KT zWV_Eb8OWAZiwfs~GZDQ&x47w8Ied7^R8n<{cKFa2trc+`u=ojgm`k{XROS0!WqjsWEC8X;FJ~B^UDy!xRSr)@N45ta@{ZiwIi-_aW z&t}2#W8iLc`A8UNnqlp63s<7Vh|Nbnz(>tT-r#$hk01sYpTS2yyAXWjNqi$yIF)(x zKxQBXu^}H*!Oa!GhFGDy`?s#wyPwz%b2rb$yO9)B)TJTwO?>A19=LKn#OW8c;c((r zwmDL8L)uu+QWB@}ksCH@KGJknkdIu6Lr_kLlhJ%6U-OZCqaCJSxPB-l^*Ys#k{aG; z{3m?$13dNck+(2T*3MR6;K2AsZ)d<^)!96DMn2-IzpnkN`N`ku{A4NK_sR2c;yFG_ z)*@O$Ec-VhXnG46#eCF*cX;Vw1NR8eP#x9s8Y7TVr> znACoSwcu+wAsVID0rCr-2m>B|E1XJPh_QsRT+cyq(N1R0G7uX{&Qe1{1wZRkIBzU; zff}U?9D-j(U%pvpJ`t$&d$jEME|ADAqfT;U*3VpO4?QDsV17Y7(Bzw=@YKFP}led!bh| zf^Rkh;@p+V#+&@GTbgm~jW*Ui68aP%USM}(MY1!oOVrx+W<2_v-V6hzZBkE5e!$Hb z`ZYIWso57@%3Thi{)6#Z{n|zSYCTO_pA^&?9{N*gy`#}_I%(bAwx2*=c4r()6Eyd(Qm<0qL-FUK^>|;03{l+2XD|+`v%3S&xqYZbWEMQDw84G z0v#!pMvkbJObApP-}fAmwDD;ft=mX)mE;{}wQi3BgoRq~b|>vOrLX`oXvh6hPbR8n z5l(P#tc0qXUSXpn{evP=QfC7l=|A;Yz6V?(H0m+2D4&((do~mZQPT;FaN;e()vi5MV01Hh^O1OXP^^f z+#pBGFJsR!jHPYctIr~Zi`h$xl+tclZQE0h0lqu7ZELpY*`L>}7yGpZ9+GPJ*Qk|w zm+JkDqcqwFB)XA7qB{bFET--wQ@It6sXG8`ZE%wH@VFxiSpajz~|&>8F`@K?&%=7 zzlGp7886ym@;hp`$>k-vo0TCskyL1 zOHF{HrdWwh)=em!SFDZaVg$xWh#@0aN~+G##xqM=D&raVEaU1hk2idGEJnnpN#j@j zs^q1DH^k&Pj~=ZSH49CRe4wG`-qZN12u8e=8bitGS8j>oE@_XzH}fR+u?LrVAm3It zmn{uBCC4KE>1h0(TyEx~9Z9Na8{6@y5y8wqnM4hOw#$TGQrzXluTM*Tq<+n^Nng z<@iB3mEMKQnQTexJ)H~KCiNvARuE1ci5HBVJ`Nk8VriZ2qhUD?I~ZpZKr=m|J=m(4 zCg%||9g})1@Yw2Zo7DH%v!q3RrJ5ux>dTC;Cp&Z@ma(7b__gte(WR&!#KC{yi}@J- z5luQ94nUty{wz2TpUGO|wC`-InbOoe5wF`;Gx-RYaM8t%)l8?nFm>I=dWt+|W{}66 z{JrKeADkWFF>$EUoSEh^dD?K!(}r`N@y#jZG2dww`*k$ej6tc`8XI50bMsaFqm=CV z7|*j_;(J=hSD|CQJDh~mE67FBWjJvvdp!^T_~L1`{k%on&mMmBHC|2QH^PLdf1loE zNcrsjXhDx9N#_0liqhJ_IEO~nPJD0N0e&vrrz5xzbT8loZD__`7Yqci1lfujlo|^*i#sZcbJ7iLGM~MG zXIV9N#vKXoxz1gewy#@?ef>C|m*jp=`}#S21jgG4Xc!A%KC4-ZOF*3Jj9k=uMCBRy zEdD02n(^`(XFsn@0z@H3n)KlqF0GC~69gaCB40{O*t69fCgsU(7-HN3kO{H)UYo0V@hAtKAJugk~zhk-wJG(WNW5O5VsNOe#TQ)7X z!E>_{{t4b+<2m0#h`eNPbkjKo=aUP&hg+wKBdn-1WaxO*26p^kj8lZ}X3V@9%i=lk zy?CH#ahXhDc4w;YJPQ`r)%W<2(G)I88rJoW+X@jRUbj`OQb=kIU&b^siP3o--~;Ia zm;RSL&OPZ%z$5Wv>^?Ioqq?4_V`pfg>$)%)-f28&h|7kVcqN?bVaMvV*f$!Lww(u+tm0bXX->xcn&WyOGN1p|IZ zH`*#|EBhZMX^QYZ;R{(?TL^_4RBpsIKvU!H6U6}&OGya7;`z$D>OCzDGma#Xt^sXj z70Jh;J1sd6=C0Z1j;51whxN8*o10OYtnD}U;$Y=5yDDurXpvc?! zMiePFTGchNMQE!T#{#}@PYm-?6T1RWEkH2?_Phk@0ruQ$^eppZPa7E<*z*HE7`?s% zJEWU6%|DQaFX6<^+$k>$L4*b$DSx^TZ-^T_e2el@^ISj@0?{~dp++Kxi$wc=5$mY- zu0Hox1#BP~iTAd_MbO`P;RJhM5(Vf%c+FvTp_<7xhX7VlWTNB#C%&@F{Whz$9?F({BJUQxtf4I@4~9TF`b@ zd|W!#UUy{(1324`>8Wksj4rIMb$PK@p@l}sxA0LTT@37PeVu^nOoP|3N{sujL6vmbPeRZ(YWzsKXN{;q@hZGF>XdP^F4Hu zNng!?pA|$aFMh^nYup5bl(U{{wD936b6AL{;mU9DiJY#I@eP!EYvm`fp88r`h{NhP zJQYmbqfShm4ftorMDfxxz)A5w&q+;~IH*o)*a7#lb@_4Dvx)WMXf$i=@aa_qn!(K8LdcyNCF?Lv(!It7w_&SmG}{*HV|!3S!XgEeMz~6k&Vg>*yEd#6TXs zX~;b#*oPbe`c+1=PCE=4Am3lcTOSbl*2S(4#?~!APcY5n*=DlaHe&0DRCUMJ$?+dU z@GOa~ldlc%)hC4g{>ksKdqhOU*710XIuSiNAK|lYU%e@xVP8!;4w(1~zKQ*_9kF$D z(bo8Af5);BKMQXd(B}`$(4nTINocBL>m&xnFs?qN%wh=mZs!FrVa<>8Ju~@OH=Z-OElqG`Skz1rac7Ik!-; zd_t9d-X(x$%b^986C2OZlh45O=_9nJ!YHBiSiTV4SK__&#*dMqZ#$NcR?fC#`2@jv zmbiVfe2fS(royV#yUyc$_z#{q#vv}H2iFyYLmz~eM;G9umPe=Iqb-ld$!DlOx;4%oCC2mZ)j(xMpBFDv6x#uh z)srdeiS-O9HhjfpK)E2*egjVsMBARm_^}ji-i@O-z$LzLGId1@12Mj6alnCtk44D*NmsL%iVl;hHr}AZtjA7yR+`46Nb*WV~P}M4@VgJQG-#DPC~oAzm6E z!d4P5c)}^p;l?3+=)?S)*)+W;p9#RxIdoJh9ETf8#UHMNT}~ITs-#mV9`{rWUKWtdxCB zvM?*ZI%2ivSC1SQ;lZ&+hpbwsY;6Z{RzI){PxBsek9K%HgPRKN(7+o|AToeGD93KZb;(b7m2mY%nz|E zUbDB)WX-f(*9(0f+YCuG&}chD62Cyx9STY0L5guFA^T>4r zv_fk%XW^sPXlQ2G8qFyA42|Xr^lBF4n|*)_^-hN*o`Vo4cti9o81y6|iO51BRw67> zZBpzk{|1q_$mY<^<=dRbu*hX|n53XwZ(lG(@m>TNaC2H=2xYrpD^Hf1)N^dxor;w5 zVN6x+t$C{Psj4yRN5E)Fi|+XL4Phr8jS0v2Eqk7r+I{ozUeo>nj|I~i^VI5yC!TRn z&i(<+M)8gP-gNi|-?c3m!(|P5t}62hSp&C+>wb8VYr!nS4}5kbpDE^YKOT847$<*E z-v>DeQFXXOEiXK;B+OjB_?ZAAV!j+d!qlmrw4-J;?dYW%2#Jq|@F5%^K7{yrnfwR$ zVDmsIJhox{q&ls!ZzE(5o*k=PP(HIDpZSilO7ly!^c*&R0$+;%u#ri8X_h`YjvGfv z6Iq!Fs1}6m^I=X3Zv>LlN%!G_sIv4Wgm1iTVAd=;av#)Z>4kqY+wZ3#;%SO6%%K*W zWVFFvD=1X*s%Gmp08X+!LrC=6?li+?uu4VHi0OZ`vBy!QWSO_bX$;}yv!&I2i|Rla zRkx2}7UmvkPls41Co?E5t?n)k$)qFFL^Nm;tXZiI`RH)&kYmWd0?gL2g^ls9Keliq zel+@kg!NQRe0N%43v*0nFt`SH+WCNr*Y%?;P89v=a#PRq;OvR7YMi|kI4h>Lq{_uF zutgG#8Bdy=_(m%-~$iW|0nW;Nd&B8_k_1AGfVU*58Hk(LV z9+A2zY-a(MR(11b0hT1c*P+E*VQ2zak_C7pJJUy*DftXZG7z&e=g7D0d2X$d4==W{ zKw<=1i)KJiMun}kK+|*F zE;|wcRXJ`ida)WH$}u0p6Js#AC!m%2^&xy+(eoVd>p~P~+o-1J{w9&x-2}L zpr>AF!sl|jTQ$X5{bg z=w;L;&Ck)&M_23lAZw}~vjsAz>fN!}HoeQyFQ&&x!nl0wZ+zJwv~>o)*jk#KxmMj? zQagHTQf3ej^0CX2-X9I|d=o&y=bbHk+vD-M(&2EN<&}$C}stXz8H_e8F3`4qAgaA)?C3gx4N@Q zdIp$8092{sZz{NUJIyV|_3V(jB{4DGn>u7oGJudhuaC2{8-ap#nOi(C0u4yO4(uf< zq7sUqO%o}YS4XL<&7=7Qf5yDJ>tU>#mFU!_cGo8R5a+S3O?EPAgKLgjdv(dK~>QQFZKyzHG zp~0kTF`GZ4Uyspr|FJ?M9<7||Uui}YBdA=XiAb-s&rHM=)$NC}J&*E9F^APTg9)A)?8(~sX z83x%SJ%mh{2yr&YpeAJ}@Ys^YmvS`=>X@6c(Vg!cfr*k-dTwJf-QCF~rs5s*H=ren zB`p);c#su{rIqn!KZ*=bw$&MUg~MoND?MT1lkPZxaxx)&!UEt@$QMq`B~`GvkCDPq z&b&qcOYidv^r@u}qYHe}N3c1ZID{P{-^HWLWz0v;NN-a4HZ9qT)|Q@`rnkrF#3a4l zEGFGHldb4nb(5`>%<^XNiBY#&phCkS(Hdl&PMyg^>!eN=()Lj&(ZT#xdS%X+QtJLV zI-NS(qhY3urglP}c19DmMy=LuGoxt`+M37Vb+KcVy~#wgN=B#&?qhvo1Bp@51ufHw zS)lSB=8u9Gu90UK?q3azH}!!-b{zjui915Mnu`a|vKFX9ts&z2bT(azqHp;^Lp~$iD_T|Gqb|MwCa)o_D_J^h3 zn1TIlO8KNdZ?@3s0Dm4Ge*Vsunf~5?i>)X?Wc>_Xu$s zs~xcvDk_*D4=lDLp(^~0W+RvP3b2uDVRdn4S=q>fZeBLx2|4g3RK1UG%(eK(D8f*l zr9%3qvys8*Q==b`6*IAs1UtM2|76o=RX$a~BwT{M6n)lBo?>vIFL~;1KER4gbM54* zQ^1aen=}MB!Rz#(WKW)Y9PfjdsDzDs@r62VVJbuNlos{G@^of0pevb4rhF+8^&Rk% zW+qDe?Lvxfil;hd>9)IIXd`8bB{Mw=@xq}&g_sswddiYGrks=|>bADU7*L5@1Jhsz z@F+p}1;TY|tx;%{b=he;z#l+Tw+O#zB*15>ki}Rr$qZhpRq^WEFrE2hg5E|QtX<# z5|vaqs+0$(Q$af}+GozL+VU{m1_L#+bT+Q$1aztr6S3V%U=BH^s)Ugt&E)vUWS?I( z-t6vo89W6vGCstw3RK}r3J0+`gZtsD-{j+$@uRf+%oDOdHOlSyf(QNBj`5m>spQVA zc8RzVJX`XxS&3D7cV#O)9%7TYyK3c1pOcXkU&t(0!KB1E1ALj5>vl$KlqY!@r^`3$fyQ= zWS#PvXsaoWW{NXy*ivfQR3Sxjc z31GF;c6d{P5qZ20=r(qyqAnY;(-}y`CV6OGPRAkm9au4d&0MS~=2rT2(%3Xfk<;-p zeIBsY(Rz4MtD}EmGa&wqS)G6xJTD|>M2ts3i&-&a1lnrMScEtHnDI~PP*st;G$V?P z1Tz7O+-1~s^P@-;ylSi=t67duuJ_!VpO_6_CTM&C13~Z*<4~NKsHtbGoE`dK$qrUA zG=b(8$y$^RU(Sw)JNPk!32h$Ch|M?W;fZp3e|jUO-!d!ZMUoH1CFITRQh7Bj!er;w zFqXk+CsGw+`9H!P4)jD!#fB&^@Nh389C|-M+y(=4ulpH`L6mws^YGBWolHhkzT%BH zh=8}Av3sIX-|_pHRX^!>w8VT184Gu=@2aOEvn zf)g?7OY`~eUf>afzQs3tyV1M7&0Z@RA|(}0ePw>2N;+vRjlhIlZIq5Hb5Ha{lq_+F zkM+nr^otytp|>i;bixASX0^nIt0%+N6Kfe+(3qgY`6ehpytYMMxQ&k2_7-S>o;c9q znk+t+$KKPy6?kGC@J}*HJ0vyMLnHPh-qym;*)7G@v)5}%i$7sruAkk*XG%GpibvM+ zjQ*ueB%$JGJh1|dpK)m7L~whdiE44;+NmiS;%9^qRQyba{4lZKwj+M#`#xGCdXo%D z6Pe;?b_ZB?G=4@%V;nl%f%us*zdAVHo^KWy*SB?Wl)OhtSz5fR(zBnmC=WqeY4I~s z`rDIr^OQ{@qLsC`qgN#BW+^ON2qnq7xfT7{uG(wlGhDT~n2~v@e9N9!@+nAGVrK*j zjNp`7VWgH!c_q*d{j<2rokfDVKV|{CP?XZ~T17iY;<0)XR!=0aWctNH+PM~_2in=w z2<=A(@7?b61oLfzQ1?}7Eh7E&z2V-D7EvMZdFksyJTYo8l83&AW$o(ay_`*@uU1Pi zl|^DA4Nr)#?|iU~^RP%#VmExT9&=R;M<3ml_#BZ%U)`ta4pNma4WxwCkuLIIiO(5y zL-PN$g6A=yI8Y=2Rlv zSs{xY<>Qoxy}XGpUiRX~!)CEx!il@E`#u{cTv9+4wM z{11FSey54tmXsm>heuCt1!%fJY;W#1DnK(7VkhE%OowgQ@joq`4c`bPuFDkX;Vo2z zK>QCBF*`*fTuB?lpC%Emyhol%s>Fl*=#9~te-ki?3W0qb1hDC}jQ2K>q1b5|6G&i_ zFh10Pa3Vzna)t#R`%-6OC+pB7@gsYOyO6^*M_0;{ZJt!ySBid>;g=&%mWpz1dv=HO z*Dsi~@YR*l9;KV$21fmF`MT7)jl?}Us5^|gRfxNz@kU#}aabR`#qN6|`qp&GqzYRJ zr$^Usn@+$J;~sSBX>BXvh2GXesE6VSXV?QX6ullw_}=>2K76JqoRNUma-TjBsraFF zH2IfPGQNpja$2e@r1}>3SgA^U{z1Q7AuoP}(~TuU5ZltOLuu;JXlep#hz}lIm^!9K zq<`BG?%7PmLZJxm=)RgI^1$|wz*0|*=KdK;%?=fmB&`T9K0XaIS4T5b@d?%SQb+rW z+JzI3;JM5^cAU?R7($`6kbSvlZzcq-jP*4ap>;{JbX7^Rcts?436F+=dOQ#ri4aNX zmL;j;6(y*^sfNZ&$cx82(F$D&uQko&3F<1x(&XDF9R|3?Wd>^Ul+P###m|paEJmTW z8gn;pVrotYECZFe7jr-k9P6%&{(aA0alNVW+f`%>%fQF%u_LK5i*bpDbT9$;JpG&X zd>|9c@IQg2f}`0VE!6B$!n-87#2&*4-_9a>SS1#NxsXLBcq9_38hFnCWA07hqpHsL z@q~nAkid-?1Qj7l6jUrmK?TAR5?}^q6crSeMUA+ls563WMl+)wrctW4b!oL)*J`cS zs%TxQ<@@`8e}6xp!OYB^d(U~#^SDo@u-A~Xsm!+NagcXT2k|x8O89V8?FMW#76*vA}$$Czi7U@nL_UkG#2sv z1!v$nR%iS}*MpHd6n~gYyCSxm-WE&0r%61V7j44+jFCV_kHtlK_16 zNO1UZk-{yS!#4|u&%qNEVKev(>sp(MfWM`JIiV;u;`5S-XX@sG~JveSNmR@bn??U2z zf#<|;s%5rU{MV680WMe^$sBD?!?$)Lmc(N86AYhl82$o>;juFTmW#;n9Fk^q@YOP- z=>wTsqQLB!=HjnV%ntsG zRL$Nt`9 z*YDx*_(ix+TcIoojvB`sYj^yE`vsr?51zj#cj6@6+MJ6F1$#WCuqJz=j7NB$u^+ev z>k!E#AnLz0SHRd)ND>4jRVHq<$~n`*K7jXH(D_@?<69s=qb|8vI2qR|HV&u#$3+`S zmbP$Lfg4@ot#pX_xcsdHHJ6XAv^vOy>ik?z>PXKFKo87i?)Ypc(FbTak0)!)UOpyB{;VCzjby_T%%wt^bNO%GNoABGCJ|dkr)-Zx1bY6&zBgBY<28cr?hPc&j z5S`n3@VY2Bh>dC+f6eUj8z_b8H#r6j1tz%Y00PA3;pc4h^$|Rz1e2e$QjV z6}msfGF!N-lhRZS~^<59?$|@2_e}ckPyhOHB$e;Gpw~_%?wUy#c?i_ zACeV!G;ShzOWuR8Wye$SO5QRw=&hxyZV23zPAK*F0(73`7erOmR zTbdrT%sjOBmbPf~!liyewO6$xs5B~#q{`3oWR*n~#wTSi+uxHi`(u`l5&`kDQ_l8M z2#Z0$-HKLlF)k}{CUSGR6v08q)Ka|DR6DQ){p@)k8%jwuGr3jY$iR&v4db{1_KPY7b&d zxGH=TDf}854rS%LqTxKu&v3$a<~TI)UZiAYNvxTNzKg8&=NILbS%UvbF;;&aU`k|r&Qf#r{GGub(%qS zQ2i7FaXTLXel^>!ld19+$R!m~$fQxIM$_K#MB(xwjwrORRdNtcCfHTD&1>cb2nk58 ziX5&a2jPaa5Ts-YH`i(*I1)F85R9e&1p(N&J(QRq&KxZVtY;z+erw_vLivZ*g~PJj z{uxbwVJ#<({lc#YgkKLwJ!0mHHh~zf(ffijE(=*DsnpIP=07^X3kx1^i)D_CG_4L< zj6mYikxX7NL7^J;WI6b%@3F;A+shLpU|N{{a15PYjiE=Hu+C!rd~9}uSXa0`3>vc% zY_mg&gY854lX^ThOxp)ds6WvNJrz%u^K?Y3i=$sHjv9|-2%XFkAgMVJc@N0ZrL|22 z9D?g34KXlTNp0ptKsxIvmCpEHi-S(QHK*(of*0?rg;0PB(r4x ziH7@{c@y?fY>Gg<9w=2oixrZ&{qc5&GkwAhb>8{VIE)NuIpS>SXv2JHR$HSD=l2&! zN8*I>&65tn)Jln92;S;7S_x1-O_7m-vXJsZ?Dwe;6Nlxkmcov1-wF%kP~1^m3OHqQ z8H7QL{X6Q05E-qy>}nZDWUeTHY4RAJ3qgxS7qeS4{ZY#3KLdmV%IEysL-~dy1?5yy zj3m=^0@&LV*xS>=-e`PF)m%2-8vHF5WFCDq|M|dIl10(y8!gn`TB8~LQ52}icAiVI zO&GZl4UeKa$VO$7mf~-3yrFG7FeCF1mYuD@7ig@~E;T>5uLL!561<{jUx%8Fs>o)I zibp2k3qmY1ft%Tn!yklghQxe6;}Mh2RS@&we|f~bcCZjrjXN2}1vq!xQ)2?uJQ&}$ z6)I;|75=nXqn&^M3edC4vBjBeqcMmIKVa}1p0(`K^D^evfRaY?DoPXwj-UA{`$9g- zUb&N$Wk~}FJBB82C!xi;_?$2u-5yLWrlf+lXb`VxdxWN~buqqh;v#HDq!;dS4cvzW zxSeo+`%g%n)wDiY{N@U{EQ|%MpMA}v_5OqWv}U$P`?QuO^qSV)aHSZ}Ua-@jPnC6^ zhp%5P)1_jWsw$kwPBUAw>g62Fec{KLA1$I#S zB{5TM5X645S6b!`@FY9-27An66}SDEoM8uqNjYqJN zByIEXmbD(i4yjfIqx|&<=Ec(j@%phodM)tNOM)?dK(C7sj*m552&cdfhh*mmsfBFX zEX1CfPdZHaRxq2mz}3P+K6_om)lQL+JI!Y=QiM!_kds|PPSAvu4xxTrmibhm_*H}? zq*J2NzD{-p5Ry&ruVL2a^V@+z=5shCrM_kwS9>JwqevQm)g$Tpfr_Lw$n)9{kiT9( zx*A9R{#xY0NF@%uK$A+NM6gMb^&`hI+K9_B@X&4`sF9T5lp~X&F*%@gq{94sH2!#- zmJ1^K^A?gu5td0WTx&7WNX4U$zfj2qGCs&1cN~@HD{8k0Q%5qBq1eNGJ_lC?NM8Yo zP~k`f^1mj(k)rglcvmG6_(Uxc_zhR%D2!KnIm1sW0LN;)XI`1)YACtRgdzZZ)63p! zjQ@pN4cZqTzyt9otcP>nQnXpGM`CU)qt}A5Cv~_|`~uVlNerrS0j2aTNNKemiHlVZ zY>E=rT?cIRSppjJ;bKOmQrGjsc0{p|-2SC5-Ffcxg>rbq-TVT0kJ@YEQyDjA#{1s zw-%*}UEL#1S13cV&9q>gk%-Fat4=?;0-%7ybwqC+CNq*uOj3c`$!j?T1juUekCboSPz=IreB*bpPyI%aAKwpgGr>I*4_kfk&Vq%O+Asq*=1>#Haqr%0x1+L1r zwf1ZY7QuDkkPyC&NdfeVD+ErQajW6qsMTakl!0B$L8S!ke1R!l6F2Tdq;d%)`mEZ^ ziCe<1q-S)}m)MfiZ|X}qRy8O66lbwjxq=41A0#>4Qi|-%=^3r%t16U?WA}h}glWe-5l4&!^BOiKcvC zn$s6LSYI8$y3gQ`Kj`SK56P($xxtfB7^W9Ic@;>|SzhSRuN0^gS1z{kK1q`5pNnYH{-oEhL6hZ&8cNA2)*2GosA>|{fcMmRP5tK-iQ0i zYi9XM#6G?zB%0<^*pqL*FQQiv+HGPmiNvtS7zF;5d+?l4ypNDE5cp_?6>Sdc$iT-e z#I?zDgQ`GKv$Chlb2b33cusW>v3`Tc`gkYR$>SY%+3*ECK9hil`6wzUJ%+iJ3^N|F z1I}Y<@s>7wU?lxI!xyI_imu!eh;TYI10_;yV4^2}_J94%eykpw%j{hdwCL&vEe^xi zVD^LXKgKF1;9+~@kg64tz;))k>2s)VJ?Dh5QpVg9?h+uJ2P>xn-S+9 zWq}$c@)kCl^)kxU_7m+5?it9kCq4dxHmNtG`1Dxjz!(@TLi}Q@WcuEuXd&903XZ?> z7!A@SfaBpgINo=Y!))%#lhsa~!sify>`;Wf$2Y~%5)qNVk_t=l-uK(%L z%n>aAQ?#1~+R56ZBs_p&^g5A1o#*2u0dXV~XK z0A&Uc5R9LB>wlca?`SoFsBoYIEMg&OC=qA75C=$(!nor%x2@-$8a6c z#&qzh+3Dbeu)``RkxIeH^&-Pd9O7Og+ra`jE-ORPuNu9+`D$E=iJ-eQ#to&BZy(oWY6X1pJpSGfelJ>+)R7m z!Cq$f?YN`lcOtDjF)7Q_G)@#`rgT&1aotPOGc1K4dVBy54y1J7k8j%wtvfkhdarU< zuw5S%y@qD;ao8eM^MWbbv$pQQ{U*06r-~G{J1N>LI&0q(QnZaEwGZunf(;_>r;SiG ze7eg1JDAacrUhdvV=@A$Cc%X;0uq`TT;J5I@(?gVksLE1zNtnI-}6mLesN|Y5{ED^H7BP+gW-6c zRFSwyq_xUjz_96+Vuch>x_;svSn6TCQGR_|>ctmOMyue%iv(Ts@N*yYnB?W|!X%t= z{9e04_(Y;|3udw65ug6LJw?z+ve%*Ti*dUC&EKm16<(JGGD% ziKJ=!B5`W@76sb>2?3`T4RmHMU-Brl|52LWOo9H~obmMzkw(hE{?>dh^c{jW^l35G zCfqOqpuw$A3fX;lhsKTDL9uVu6>#Fp742BL^guzsr;pXgGoNkucxF$IE7*`$(h=eA zp;c*iTOkIzdYahhOY-d}Q0t-@BhpZdkmexlC+9+iemT}~Icg8uoGs-6+!9I(9cXaD zF`M}~?b+I@_&{gqQ67L7Bt!3Q{Ox7vy)V3Q9>7V5i*$+0lg-?K?_JNYP~}v5-9sFu)C;Y)27#_BM+zQYC$$dQQB70mC!-U6 zjhre#&QZB=)= zP*IHJD7mjN)?oQ_q&fX9FqYa#_+yk-pa22)V|B`%=TND519yRHA!hoygi!PF!oPWZ zHnW@X8J=oqRCWzV!<6M$%-zq!j>IgHTo>6~%*S()U5)!nY8~_Hj8qeboRwI7nJ=-} zdV&k())oa6G9$@0dM@vF#owwFNhcMv{z3d|+>Di9tq&)~G8(nY$-VL3nu)LTCKZ?A z3rQ;Ohd+dEYy0Y?V%`$EFOr|lC;p1fjP4ka!Jl$>`xnwU8m^fimr}e8#bxH3Uw*@s z;$;FN0tOf`pD)&%pOHKlEX$owv%W2(lKDra~azS81*qf1X_^RkLm6J_%olt!DS zib)=!jxdO5Cwq1s#`U;A1X2e7qucHEFXZ`>BFvyww!ZBf*;D)7bq zp?FJlaxDlWslYEfslfD;$1;IbU`NpO!RmRQH~!QSG#&AcCurUkK{Jn^?IIPJ$H=*! zx3pZGH+xglb{!rUX&`0trUG+?;do;ewVU~C9&wD63V~NG=08v-{Sg-^KM@Nm82DB~ z>3ORZSGYpyAkk+fX}75xgc9?82lGq=M!HA&!E1zArla z`|NfSN>p0!3&`(4Vy!vgOitrHC!KdX(FFbXFP_NR+(kqVM3n5~_uD;0@Ti2|7tLE| z>J5HLV1xH%o)}3AB`B-syZztd@bg$of&weRx>y_dmU1(6 zn+qs6kfCcNXJKZ$%Fbm73k=BS@;-6$)|WnUvX0^;J1LiYN6AxC*{I=+kV2a^0N48U z0r5xZWL%{T>-5_O=6s1JJQ4}GeJfp~*yr|}m227G@UI+C1T4C4__ZX@b<&Eg{eVi| zqYk+YPHLq?CVm5u9rS<)vgXd7{&+(GNIt)XAsz1A-G&(-7V``|gF4Iqg31N-+e9TM zC!Fm*#H?vhC#JX)MjX`deo=ica$GRCyq?dMn8c@9uEf0LxE?MVgfp03^~h-sIgHd? zOamm@^Uoeh=ItgVff!`*rV1W=)qg>kq&nQh$%;LegkeHU_WC0kYb28a6*=ZW6WpXy zUq1jbib;&=I{7tzzDE_$PiCYTM#`bcFJH??kxTGt_PH-0$vzH3(2Z54W4nDkekHVl z+3=qEn;9N$7%K;DzP-<*&Gb&1HWD|XT=6_Epo}k6ZX{#))}aiWh*-zrpLX+w6^Ukq z!c6Z2g%CW#el`$Jl+#$WTeyklekjo(F}wI2ByQ202s2*B?qvLNSgAWfDl{sGQodh#*ts_)&sKF-P=3mDssN9&B8ov^1FcXE+rcNB#3K*1}pvZl9 zdlV@v(G-ycAEwB8Du1@DnTT%*4CyeGqWL8KpY!4&K%cW5Jj?`PboQ*G4^v|$!!thH zPbmi%9F+JFQw6Av1BlOxs+~|s4 zGcZNaYwlehz1}MJ(`zO!XrEq`I;0miF{zWl=4%h z^(Czxy_Ass7-m<7Whh@EX&nR4*~Eb7jNWf^*dM>wKC#YtE0y*E zuaz38n`b!nuRGhU9ir;C8HtC@=!@I+&&BCI9QW{+JE*@PI#Q098gx1~S*)P^!Kxn( z)uoE-UXFD?q!uo$U99|iXXV$*%CE=Dua%XLrQhYs-v%Mcm1lW>SX`(Jkz}gEbb*CG z9&*Gx&s^(hsm`=C9anF;FGA;&7jO#%qF2IwFSU!gK={xPgliQL&d377 zWTEdyoSY~bW|fL4ne6raA0L5nLlrJ{?S`K zJTf!eK1Vs;6o06kws-y<0MqYzSuMR?o8JD$MJ~Og_90AdJ4UTqT8$9TPN3rGbMxla z9?Vb1#k++0(YOFGug3rQpoM&p97)Q;JNsb|zmk0l`9=i*)w>XHiy+;Os$D#m!p%^^ zZLF4U*p*QtptrSfCRz^LAO_(!mD}31wRRP@HNSBC0xk=4`AG`85}!l`o$i8)18d^v zMGN1RyeGhUed3%5nh*8NM2Z{dVyoXHnnApIl!mZjU4`XyQ9RdaHG$&!ajMz{CH72C z#uhltQ#w3h$ZFzE<~KtTPHz^43$k$qb%*0m5IDj};3VFCC&q|xpUdzri3;^WJ4Of?EGxp^MjGpsAe2MZ=pHZIRnwzGY$ZqZED zEZ7}x7(d}1LYYz6>Vq?da6B*|91C%^dEm`%hW|FKyp*V#r>`PzM8E!kAMS-Kms=>Y zUZcjN61avT$y%BtW$A~W|K@};?Ag8owfdMUsFn@Hhz~`I1CHyAW$G%>o2=IvSHXb| z?Coruw0xUrCX-o=dMWm)N?)_`7^0U!^Z5X2Spo z9b{9fA1o{y*lAWDMKfWAeJes%_Foj=zN}eCwM^!!ud-uIP-uorK)`byz@tslhq0Hc zpZzwFV-jq{!9xxNK+656K!h+1K6QXZJyw9Ua~Xg{_gAie$Kf9)0fZaogDN#6pgN8S zp#}93$O-^0Ml0x8(;b#!-m$|q7>@Yu{JPh<{K6xI7 zkwEClUGT{tAlPp9beo_(?Tw$z!0}hPIw zRJqfdIGEGI2lnj&Ajf~_f%sEsv@)?j?h3#tK2_jF@oBSvhF<oj_y{wWn~`383{I?l?_@lu`Q^Z{aqX7ve*$cmFxC zbiW592uj~Gcf$-7O7GdlrnDGqceS4%o%|EG{#wf}BefZ*L8=nv7x}Q%NSXKqOrrCg z7}#X;BDyML2`W_#P-?2Ck?H#XHv&qK2+{ zQlCn@8@@w%w~^$bhs0vx=IRal`tBBwC9K|1y-s~#Bwxk*+RQl0gAY%2KT!sC~V>&n@UFINKteml|wp|t7@OcEHqik*(W=YdmFC6eB0Rh@+m%~ zc}{uL6=j8CV+<1Ruzr$DQVu3Uhl=>^RuP^OZEgt3I8-~xN7qZBB%Cg)Z7HrQMecz0 z1a{c~aE)YdJWB+S+;AW?Xs`uE@BuQ2V-eMDPXrg?iZ)K)P)88b3KF-k+5d16gp!O^ z(_u~z^QhI%SU5*S=%qZkrX+qTq;5y^Xt?cgmhbSA_`Xa_1@&|7v_Vf(S&*Tz>;cy) zRT>i~4U8l+!<9=Z`74D$PA5LoX)M>S#H0|SFwiGl{WhOG@?cXNPEZ+D&89U9lj1fSH)hwIyMXAjrB zyu$hb<5952dn5Te-qJ5XSa&&@u!fK9GX-n0I#T2VE^LyxBBr95S?H&uszG2^sU}w7 zQ1cH@$+B=4ejh)wKIJddFG`o%Tx7Ez#+f#u&3@EM=amr9m*xlnkk8T^JF6ru7JNpV z=lik!pMN=cs%8?S1Z|pZO>FOnZ?uu3s)2Hh@iyGf zhi!LA%;t8rq&uEeT2lAC{H>Ir5495XmSFHA{KEdHVv?ePib*EpQNkqMRyvbXO!AJ^ z2ZI2UOcN&AV>H1COq6gm=>OKP-Ps9Gai+@37SHYkxz)B~q?i_Djle&=68x|?lwy}9 zT51(bT!-bb7n|F_A$C)i{@uPjm&08H^88;!MW%D6uxVQdqv?FEdh_t1*D6QoVd3VE zw|&+GW;-mLe$~u;4Kk1q_@khB4=FCN57OA*H%q3^5;!TDZWjyUmGJI&VjkhmN%ca%t4-Z8YPaAu^$T%*EWgd12R@l9Y~C?tt*T1TWU_iqgskbh8c+P=8w z!GW43=wh%o;2(wLAp;bWufZoka)lXQ=G3_gPddc(FOIx_VM{c`UYETDt!Zsx7nQM z=o@eI^Ihs2%zbS~-;s;AJdRs$U(LTS#HsQ z?C$U+A&Oecq-@A|e8}lS5TFvnNYdAfY7B`(8L4G_q^ohcO^X&k-qI8WnvCWggT+j?Ia$F3kqSAvEhcM@qms37?GK?;KG{jI7#?vhVd z%USCpULSqN8J(kpoQS)*I>_H^ewZg8e$?g3C7f7}4$_2AHBZjv1!4djDPb=1H0Rtf1_c_jmJM)0;Yt73&cA>$nQarNjeN=soo6pdzRI)jsOA}L` zE?q)+c)Ik)DCkCE`&WLxOKg*C+QIf<{5S{OD{#FZ+keA*jqRHz=E1gL;faa z8B}ODf{+7ZrkrV=Sp%2P%da-S0nFJCWq~*OvI7qny!6OtftRi?54;5vT<}VqV3+cf z+l2-%2WuUSe-wDPAE>~~8c0BO@22@M_RcUn{KFX$hiWmT3balVWuOG^!XMf}Iy~Z{ z^;youk5=nJd_uJC=nGohsNmS!#bV14z5gSpPac!F+5WrvrNbhLjD1fI{ycf>q!@V^ zBz8Ouvb4j|0=4qHCw51{;fsR9T`Ip!fo(_mofrV3Qhq5jeabH@o*m`4{Fr>o?;9L! zULZdFSD`3ec78SR7JQml;^u&KJBaQ~T%(je+JFXJqcEjPy0X;XcVBQ2;i$bzzAl6$ zcGccKz=@~!PNNB<)!u&iX4h&jcV~@JYQUC(w+f?^s}x3Qd$}0B*qpx984-u-V6;In zdIsEKN@3lVvO4u4(p2f?l-_xj)oVGJoA3`IJAOYvHl@|p{rzfdIiAQX){};!DkrYC z?=*)9vruzJn|{p5zRvTw_~Q){OC1S5K|Yv=U6D(!?z$fl);xSslc&4B|3QGS*fbM$!ggnA>WxE(H`-_9d_J!r4AcDr9%+9B#J_Eei&zYN! z){MUki~P<9wR~a1kk1;o8v~+MG|mHCiIafF`M50huD1JqFied`YSk895(Cb>4qMKC{PpvWWcl&?@od^vN}2qh?8oQ!QRw1+tdz-< zd|*GcL!WlPyF+t74selm3qB$KPVEKi=pA}L zzrwgbp1=z}0r}J>{agDHGfE#dVV?M<{ikgIEAj#QyZwi29CuZ3U=1w=##FbV_i)+b zy5aC#!|B9oyLhK?;dVH%TJ36Vxd!~G`-Pk9J6ED{X{+6>ae+aDVJAhGx~zJQ9jaa< zoeWzeg>Q?qyoRyZrAF#GLLj|xS$$^yplHz*qiAZX6fL;sKa&Ip3E8Uv)Y zFCK-!jFF^UiSaCH%aOUFT#6pX;knAgKW;1m3{M)4fSKG%PZr{~%jkw@(h7Q66K|Q= zQntz7i--Nh_XzW#AGB)93^Cuh7g_AME|zM;;WAD7sMh|JpYDN7-&^luJy_IWabOra z(@>3+cz`7jY?ZicB*cak!*B7pR+euvu8h-9zKIf3?{HXBk_4Dy6xS!dSuUT-8Rsu*c&L4r2sTp-80pvCmC*I88-DsD4wxbO*s@!vG~_~0vo7ByIM`hxoP2K7Ugj{;)%34||=)L{a_Sp^C?;f6~ILqw+N`wTHRGQG(j zpq0Mf$27r%K=B?N}k2>{?NjD*&hP6-sS zG2>KW?Ol8;br?X}UKk0iejd)7WMe>JkTp-?=41MYhb*6i;Q!e2=h*G6w(s0tXcC3L z6b4t;IT$4V)B^I+d*TYl{r08Cf;I0>@Bn&UXj+)l?k4sUYgsPA6L#W;YU&zd@5NF4 zGPNObpqQ5D-O#3yqRZ8)=2w}cec=2D zMhKOZ>J1WaUlao6-g6Asv5kn;t6uY#PZRrph`k2K7!3@`t)57QXl>#zU81R6Qzm;VuFJpB)lHf;KK;r1fZ?j z_`eDSOO-ZyaYk67u+uz#FQF9+oNm}9zL}9nHCEI}i8C9i{#=gCJ__G*Vntyb;m z=Eouu^0L<|5$mCz{#6I{tf3OfbDX3>W{+_5ctJcWST0eB@4E!`)7nvlJc9>p z&*%>zFzN+y8sAgNIlsAd{+&d8tQE32F~_x={J>^EDV#wi9VT@Qz`8qtawc6k z=7{9ExH(&Rh`NPnk4*m;kh^x*8X`{EOX3Y5(&*53&1QUMpB!#jq~SYhC@8zaxccw% zlivp5+d<&V&0oX!I{c|AjI1D>9^occ}jn+x$qp`r-qDsss zpt~TJNqqvZR(q%h^?^_&hACBI56lOt-A0myx$4?h1!lWU{a;kfuSrVw>yt;lwU`85P8fzl++!#iv6~`OEsHc zG~azYbzrS3_`wT%)Lai?Vt?eQ0-LoefMfj3&k#uwse?}852*YizK!1!kfrP+-i&@V z!DJbhpWtF{@f4#?FwvxRCp*s|C`gCnS2Uu~dH5*&Wij`jX&BIxv_yOXTC>HBRSLOT z6?nrs>vq>$w?#t9KbMNFh0aH3C$vW@+{j2g+Cz#2V_ymMl@Ca;ep-SdkH0S$`!ga& zUB|5(66`~@*uJeAk~^?ltJCQc%Z%h>SR6-wv9GMiuXpi>Y}sgJm|uV~?Nj?9%WIr1 z+ml}s*Jq2*+a}<@yn(>#|eVx%;$cgfB}(- zJy^-7ZB!5cjc^7Yn7GcqM+}(wl{5wjoR<1R(fMSHo`qGilflh(cYH<+X`RzN|42#) z36u}v<$2@|)6K(~d~%1npq4x9@h7)UNOr&tYGJGSM}!6StvBLZ6)#e%rQou-tG{m{ zcYVEu(@kYjKw>v#zo61?KpAS$^W?YfP{M?n8!_lzUJGu-j`$hca5qn@L>4HJwn*=l zAZONIIl|j3hZAY9%1`CG;9lw9AU6eoW+d+eQXGIW2}1z(k^pQ~`x_+PhdLqW;UPZJ zqW4EBKw;>yo$WDtD+S9KeJZTKJqmVObI||-NcRU{Ud~N%l^mxk5`B|{DWtbr=2b8O z@Q}o<_Fq-HPP5KM>!<ZU740dxdzgY>J}im# zp;WL>vGhvl083xS(xy3?F%5O+ukfWxByuxN>bv0lh)G>sOJyxC(R&ybLy0}g4)vM& zv;im?_%L5RnznagNT447du`pa-HoBLgnwUkUh&bGZ*Fyz>_tMHEd6K!0y6j%Eb+on>ss6FcJqkMvDX|8>{ z4L>EG_EzfF9?GmNqgna=O%ztxd7aJ5Z`V?lvgNUkJ^LQsDYIdf#ekf%iP4^2N+CcC zf|VgvBgFea1C=1V+P*D}ZyV<-lUv!XOi2tkjB@Q(T&Nn$TT)LKFkqSV1mrE{q#b+n zkJVV)ZZZnWA^n{)Q7dRgY{9zwtcYv_*YaRP!Dcb_7&&tzgI4WOy0(2*?Eqf-5dHze z$P4DlU7QP6TWEmOX14AIE_^D>-{;u3(qCpIiaP-=w17CN?5FOE$3U;oyDJi4$Yply z+SiN}gBiZP5;j(r2zw0|I3nx|{4FAk`R=>kBPZYry+?jJ$OktqZ*RdFY zc6Yr+*zc*0Vb@!LZoMsNSB9O2qE7F6OjMB4u3V{kyWBmW)MS@4y#vp~pIJL_Z&(%9 ze0-i7@2yEUPWJ~if*Z9-QThfndCJg~eKV2=n4rceRit5zKf@7{^9+1y z@vGpTT`Zqa0sMrCM(0CC(6GhbRFF7V zH9m=-&dxNbgTUz!;mj0xSXcH$)!Wi=^W01yhu~(ag+NwIy6cwt;u^8&JbO#PM!QF97jw zN{8-)_!F#b;bx>q+a2)_W!^N@xw7%BZq+hJ3+s^sgGCDv)QL-(uhUbqQnJordvA#k z*M7ACKEE*Q6Hqw?FrdKYCQrtc9ZV45#%ODYa~-J8!#p57u43dtzJa32qYH{MCm`21 z3m4q^iHrZL2K#bE6XF$p;3IJ3A0V6#)yYAE_*~}%8%dVhM>1t4ZJmr%z5HEMV)n#D zEY^={Z_#}~3&Vrd6$AOYZapMK+L$s%d9`~^sGR9ry#b#yzrF&7JjI9R+0rO&FLq0Z=H7mnQ@o~X!cp(#yTPM%B2i5CB=?UfGmb#v#LnPg+N{SGu5w;a!1h7XBhGvIC ztHUzm&{Kc6M3*h&cJC1H9?o15!Y2pt^v$Mi<+@K>x(^fl`D?p8;=M6HxR#3HG^E;! z{G&AuU$ax>t^9MR!9Rz}0f;@ni-Y;w%#ER02!D~e5Lx4GmButY7&DG)0^ z{!GToqi9^z-0|^MO$E`Sqve_LC3c-S;%-r~m>Xz5$1o~84JQiB1t#B31E{3jRpjES zSYx{@O0%>WlImGf=^VFdq<8Y|pS5X=&9+(a5d>!FH6o~A1+v8QV;4SB~%-hxXIHMK{Ar9U&r-0%&` zvR8R54J=l{3}f@tNE)$#+B8qwMm3Rebu8V_;mX=J*j@l;9L@ZPfvE@n08`V|6;1bT zsZ%^{cz>Ja83=R+8D}c4PMl1iQvT%w6IoqBCM?q6kMr{0wa~c)5I`1cQKamY`im#8CW#J$4kfw$ZNG;BY7<2;`%ZJwjVo(=17Jh6)N*ytI1Rw3TSN{iSyY(p!EX#_uQM_k((5CiTGY2T82h_dB1x zdm?-LOKsZNa=30nOa$01-aDMB=$wgm#*ZtC($S(2j*G60rjKCW=JaXk>rl}dv7}Ju zc+_MMDoRf(!qX}`x9t`;a1a0(0Idd!i!jYrMDaSC4Yz;OW7Mj4jp z6~qUJ3*X2br=3Lc-5S5$Eq-)3vwK?y{F8}<#-}Te7@dwD0R@h8FLH(fKWyoD9STOb z)E^;mfq=2!3THYsUcNh&w+ISW?Pr7Z;rZ{~013WAQ7!9Fo~CPOKYV5X%^Rwh|E}qkHP~S}gAF%V$RP{`iPDzQLJW?! zlO8P!(&)#Q#e=bEuU4b8)ac&l=x)0jLs;((!B?-W>ofHjw6IM~BR4_NhS3|7)f}Lh zs9PxcLOE`|A{lf_DwO-d`$z$HgosB(Ul@=EW`>#l@K};^sEQxDnQqWW?Yl|HXEgIZ zuY^zH84)~Rq}W>psg-}Xmn(8Ur^vaK61Uc`4=M@Z)289tCZ2VHbY zj8hz{G5)#4nm7kPywg`H?yU5q$UW-hAA4XB7MT>dp-6+Yqez3a8)+VcpW3b72(>)% z=sz)caJdA~qdP9|=87NuGpXOI|_QVG$d6Z;YpRpNR^{8WcvZ%_&j>l1_sB2U5HKu zdh!Y;VUD5h09^v~8B* z;~y!=Z&Z-~4_6B4Gm>XjHod{53b?TcfnV%s!u&mS=E(rdp-9Et!mgp zG|WkiqzZcPs`?>cy)8QLSodNK9y={jwjWXr%X+ZOO_u}`{$R?4iW6A0-NS7wX73$N z@9vs$E6IQ66HxZ1RWDl^W?BROd$$hPwA6+=;&1yk@9vN%?cX2C+j9Sd@LQN$us&he zRUDO$9;GcVSexo`;axoLNqOc9S3W9RR4lyWL=PB<2IsI3?u@=|+J;qky$UK$_9QBd zmU=@?iWB`{9`^{hEuVb|?PIZXWz=Oyr6=W#dVlBsPYR8MNM$`*>U+rj zpOSGe`$77@kdOXnJGXY|4;}Gm(*K3oKTQ8^Fhv5C@;&ay(Eo)WM}OS)$I*Yy&!a!? z|5NDSUwk5&YB(EY)rzr?Ntoza#;C9-=ysBct=f%aZMTnGag@t3<7C_+)#XFxUjYDUB<>n z7TBk6Hp)wllh&MN{9<|H)Ojb{2r=V6aH%$JFPt-;Wk(Yl=k`1-G19Js4N|?V>GEC$ z_91c+vhy>IOf?J->-gM`xdrik%$rW!-Ucvsv-i{&LudTWvedG83Fn9r%G_3BVq3!A z#7?=NWCR(W4xLuS;ie9RCIX7!x>ua*+-WB}QG-curIBVm0YwLU{hj!TwUP{wPj*cQ7edt4N&DafwP{Lt8tG zvBX^rW_E;sXfe*rS&ZZLVvOI_VjTXxEJo+adNKCRT8u7S45)MPCzjj$>NSz~f%5SA z7fUQGI?h|Ehwsf^DXNodrK+6kT;e2Ef!0>f)Uis>ll8iS>w;Ggym*M#XuO!Gc@bWL z_44xziZ@2&S**c;*X2-ED`afY=6vk41m$(YKF*jDb&gxOaBDkj#4wd&7%Bb_u93yY zIu7`TBHf(1NSAy7%dL5MU*}=K$u;+65h}^9H}+Nkm)LFMx3adDSx#F2)f z*!YXHcOvj#d}&uL3V%?l{mNY==@JrLq+F?XS`H%}qZw)Jt{BPMCS+c5oF?;LS&Y;P zDV&hiZvaW)C{!f?1^d>!lcN|_U?qO@UoA3(o2jrRbPl3*W=Bk%cpdBSVGSpoJG|L(OOXp#L=BIy> z<#!jM7kna49Kt#q)*=@IW9FXJhYR7jpxMN*J*K(AT@U88{h(kwJ7+y6>-9j3(e`(l zlefxx96nL6M`hM}lDO=j^{uKVfs3q-cf9_=nxm)GyiW(#(bK)f6D3p>|2 zR5OzA<4bEf{`nQwgsp+9@EVNQv3Q+=*8;qD$uF)v3o^`GwceOUsWCZEjbp78!#sDU zUMC2@@j<46kFXudMw?AZHkN^AEs{l+qBOf}qe!#KzF|ChN02n}X8ZbVN%k{Y?CNi1 zNoO4M6IkpiRPQ+|SZ^7cpT)kxnnZ-fu6M3;6f`5r+7Rg`dDfD9u|8BKM&iZfEVk}t zr2lt#x$y=6{^RIt)X*wi4ee0pAz-av|1rQ?Mv8?WT9%QkO30M$SpW3}at#CtOxNxP?0(v`Fdo=$J zG&cf?DyzdXO!ZAf4d?i=Bbu}hhZ(WfS}Cdwzr zyoFe{OI^)di#&Qj?iTYi*W&8U3jY(@UyC|fi@LICgHqZ8O4`5A7D0CJaE}0;Zwqp( zk=n@>D8y-`)TkFYmpW3#NHS$yR!E6@>-5uhwk^2^Ye7Ar4_=4iH6E|Yc+J5pFMqi5 ztU9nZWzO@!AhZ7vV35R6A9DT#{8cMIro@zoBZ9-9FrtX+}Ev}+~u z$cot_kGmE{-Xm{_$UDP%3P!s6_gO?tau1eX-Pw}wXRiFOzL1rl8EJpzeO$PDn7hE; z50?^=Ij@r&4m@p<1M@&1e8Ci-DyUmBtTo% zQs@xE?$T1|&75{_*P-sZb-Co0EKH?Bpt<78O{lmFAlyhYFV#W$tEh%BhmM02Bt@OP z3@@gDO4S?we*#{YjFT#5^t=JqP6HGYFcAO?#P)q@Bxq+Wnl{gnYNjs;-@I21GINH3rdQ0||K^X>GELpPWR-*C>tCT1=NIH)SK^ zQ7k@I1lPUfT<6K_-wHB3t^JWxAg`GPybNEkT9pMIl-=B8r{lG2dF^1K#D|66_83T2 z^7I4^hZ2E96a1L*IK=ebzvGaDVtT*qp(aK+T%8L70>%f04 zPG_N@4!tgd`pF|b((Nnb@Hvm+)Z_5uJ&};>;d=X%xdn;y zyo-OHIA|N}jlAKv*^B-vmW_7!Bly1=tpm5;bJmh(tRMS#9fki>SMu9}IsBeaU#)W& zP*~kBlxO>f^ZIWB{2V{PA^r(dl&!IkdmoVtVp{cf*0&v%){)xMSUk&0|2b0oWN(Rb zrS?#ZQu`X<=0_}(p{2IA;2pt@St&byGRg-XBjd>%NgDr#+Yt+)jEqB_>%6U&?iA}; zuHi3hv4-ihme3c;oaH_7>W7!3OU=jMdG%do&->){I8A&lRGdYmP=4SDccfhm8L6xM z#t-rv_lr+d3)#oLm$#5XOaBKYcb%VM|NkMmYd#jq-F?(gm)yUe>PhZyp5)fh@Ck1h z9Y>)W&q2qn*Jq=HC1f~W2y0_F*Lmo;f#{ftf8e)f#CIWO0UK@$t@e-Xgw(FQpZ& zdG~O#IM(tatQkE<-SIz(U*P|&-JOS5p8dBDnGZDxh+GO48U06Cv{jslE*{JOiE=Wm z1U=oF>naydsA=3jAh8H4=KzFmR9xr@)XO=_!#*-}cbyYwXqjBoF>wj+*D*1b%V2k@ z>1d?rzup`+4lcz(Z}y>!+6K@{=92f`@x!$#IVLip_0U4A}4cXc*s^GIS4dpyrSojD@qy{^&Glj z7)lb#!^6gwCsO7C3%+klFRxyfT!ToFeIOD|C9pG{9od{waNokbrLNzM*VAA!QfzBy zF>sKbFQxleI-RU)N_iFqbG98SPhp>_;=~zL0f!YOE{!zTSD`USw2FjQ8wjg>JZeXN z;Zgf9*Agfmwa+89wTl#_p2vH4Oq}Ua{C*$BJ8OzJJ5P)6FApcte!Ypp<}ei4>}(eVkR7FV$aJs0=v4VL}#2b$NQ01sMRPY`5;H1bnHj* zzp-$r4lNRn?b+6vxwtaDV#pVlPR3Du{nP7^^LYH0`hS)e#iJNy2!41R$WYO>HWTj} znvkyOSC@|W3&Hs6ifWr^By$YXA0j<7$5jqldnry{#~l!$E*`a|etCI^!~pw(Ewvp- zr8g)3#CypOrGAOJG~N?tcO+ebgLsObV)DIaP;ZPdoNiCzK&}u@u zxL;ih3~1T-ng=f*Ik(`s5ZC|-8m}P#JCf;b(VJqPe*QOY7JZsOj-Ds=Y>pO`EG2ur z_HL>JCM*PuFTixsq$pkzAYlnexL_%_>(}0OD48luoNLZM^=Hmw`v`9yC2Afv8nU3U zWw$s;UWPGXdzz32RnnM!UXqtUxP&stmJ5y2(S9U(c^w*ElH?OI#r;TfGkhLOqn=aw zZEk)EYvmw{qYZOWB895;!j+j(70uzcrtQWYI4rxrC~8L8;&9Ovd_YI z*c->ILUtDfg7;mU39H;?qT! zQkWfW_C8}rn>%RQ>D*@u;}6!9CMK}3Xy=A++c=guK-*%@p7m`TP&^`>uC26xX*8j%ct>uetdDjd;=9 z;e58M|1;>8*IrTpI;|Ydk`#u%^Du;hg6_|OU&0Lp^^`5ESFBa27DX;*E$P**+Iq#F~QAU|b|nss)tPb%c^!H`zWz0cu}$ zCkIfxV-}#~+47@G`%uzx&UXP=)v`dB-v>6`6~{_ea-~lw0%=C-&m6(_LL=Fi?64hW z8i=q?v>MvO~3oSKUflSjUn%uKeM`rg@bGI7=Ra zJUpz+v+Lm=>4e#XszT%OFJO6^A)wMF6oH5AW$;TX0>IR^8Agf$ZeIA@gFuz6 z2319C1Oe6D@ygi>{QJ$=;oZgszdCOY3^0!jumh*Yc?@vTd3bQ9tcnbv?)w&?qfX#y zn36Rpmm92W6t)vnBv~0F`1tHAp?T^RBvY!JUB{cZ1mtxU{(moC?0V^Z zwyXaa;xUfAbfnzl4`?6?y_VtYoCR@w#5>I!NYG_{(7@ zb*aNmM(SgL+4_=*7Aei#INZ`>sxbvQOcfKJF;Wlmr;pg6eha-Utpr$ zp!`<(xaebZ#eWD`HE+d4xBy(ld)2m;RT(KB6#{3wIrn~tjhGf=NssU5jzecDHhS|^ zvXQzExd_~fJ;X@fj%&e2=dtMLaU4+Ru~GlCiS8KaQ!8wgP%_S}oE#jHa1b(8&3luY zgCcem>~r6lWFI|pJcaN{46(#z|S_kQSXGhQM{vUG5ldb#%&z$$T*c< z=GJNg>>*%SKBssF*7xA5kyCHvvuqxI_&{Qnlbp7(v` ze3$S41>h~$zNfzIoF^k8>jvbcoF774zJV;CAxtgCQiHho<4brwruV%AK2DV%gC z0YOe;rzzniU$b-WM=KgNE3LwnxSwLByYA7fq>kBZ5qx^Qz9X zA+aTwY)CEgs5bK#_k7!CF<}NM{`OqOKetTD+J(mjdAgj;Qk(=;H?B zTryhX6HqI&W8@@VsUC|{meF3iH!J7g{R;{{y6H?OS2n|Jk_{a(kL zop>`DuLk|P1OH!v*T=rkobU4ee;@Eoj(z0!cRKNA6yp2h&2~5XEq_id!no!SSSaPX ze1I$K#3P;r4$v$b|LCmf3+PpmPo320^XHvwi@zu{v0T0gH+@?;XL2~TPUT0($Jk*n zG%NrJRofV}CBPlCfRE=)I#7&Yz5{h$e* zwPZT}JqItw5w6DTZoD4G>ovTx^L)y#MUAfEr7>}4M{$CI? z_Nox`!2Umyn7R4Qx5AM~5_b?H7L3FHm}_}5Ui9T&ix+bup2o|S?|yu`{`f57?n!_m z#^Q6KB1<6RGn-Lb-+sypwR8p2$8+gQryxD-ZI5>-u&%|M|8Eg%zAQvue&CNJGReuj z1m+_!pY9U8eu>w;c>N8pf8mvlSG8YCk9Bpr1}Ik+%?v7vqL~V6YT!sZ7Q$&jVYqog zVP&}K<89_~XZd;-m4FHq>18e6DuI6cjT(EF@FDJX-6`|SwW~YB@gk4vGg_Gg3 zszsZoLDHrPr_tcHnX0|imL1C+$vKHGI0p}jpmQ4bx?aB7T{`m{q@C_S%OcePNKLRb z(lSn_7fH`R3d;;kE{+*yCgJB$bILG@NYPYuYSMGY{P_9TpJH-omc|Lj(hE9*I-kRA z?I<&>-7*%wj4ripT@xXq>Pb9V!4%;@$bn!*>%vxEbHFRxu!G{91(=LfXf2XIcM=bs z$tC(JGZ>GN$_#jBK+|eWZF0Gu#6X$E7)$~WMZeT&x~4Fae$`p1+AU)+jjpwAu>#KH zbMs3)JU8d}0YnDT=HJ>IAoNI5Rr(|e%v0BJlTK`E^(0qcyo*90Be?-vm7F$%PQhy% z7xaV@dnEtlc+fDoHI}X_tzM&U;W~r#4KOq#c{(0xks)|{wu7wCI*(vtG&2y5N>T5w zy8H1A%wsbP4k*B>AZQV8r2dF8vSWgSov>gB%?bn1Il5t2j1fr-KBkf}=77E@33Aqb zLb?M}U=;K{B4YqJDBd@h;v4BNjE0_Ij8f*XkTj8|=PRS>fjNwk1ROfzd*W{Ai-gH) z7bZ_*{AA?dcz=1uPap68db}8+g2{;vOhWtyW969r<5e)@_ zS5qp^iA1Qjt<++3aG5TKZ86&luFM0l>_>U`uaPCEJHv7R(H||(ir;Aei4QP)J_0fQ zU!Vu~v{!lBj=P^Y_JXSK$EbRQ8%9G78w8jADP?Tcg!P|{_2-dMvCM&xi+e{hSVpwB zLpxh++#0xZYMW}R3KO$qnG4~sUiJ=#96iVk4_RqkGaFYySnOMg{@>xIP1|TFUZDsd zO`k*Ww#b#n(>m@T2Dtvs3wrh>7KnnsnMA>4fPFM1NL4AMhk}81tE}l*U<0C|xdvs7 z3wkO6{qSjASKYu&$uAfmu<-EHnBh)`&1etDZhCQn$;jxaCy&g!0B2xT(|mk~2bIE_Aw- z2}RSe@|qh!Emv@H9G8F09cN~6$HA!|JIxvR#xFn6fWSYYENRvk^U0NFZx5q1>tQja zL@muAN0L#f1H~nNIi@@YEG|(V0|u}$$Z+~KbEQn}P3tB3XuFUu4KcSj@P33N;=<_{ z7)^mIWwa0Rei_HQJBtBtv}s#|^3}U55mf+c866pQ{`R2%i8ZypmPzQPfwoj2@WNKX zypg&Dzl6#bDq&j(Bh@7E9~sWfP{>~bOtXD`EHkGZ-C2y}L->Hc#l$5|BMTF=fcM_O z`$pp3ydD#T&n22hoqquA5P%NYArQ^hkBT5;6H9s8fZAp}Wk5SFpTm5_PNZ%I?~cXj zE+sVk=*OA|^o}$y=&g9*!D+jaZK9+^Gqcc^9>@m(r0#rs)<)hVhZ{CWtMf{^wzE8Xx$s8qGM29wnfUqSxdV!p1n>hx{ zg$A@d_2fz{VNm)nX5cM7W~mCkDW(cJD-=#o!DcZ9HPW*{pM+8eu(9<0kffQGk2E2E zrPmH9UW%%ISDDMv5nkrQgVcEnAE^YX@~3 zJ>aY>3I)7ltJs6(Z=7w%A|-tXEE6iu(-kFI{7kD;oaD%73HXcE{Zk^ojuflmNGWh%hEJ$6Riurt7dP zbW^lgG5365IJTA367AMy2HBi&${es$+#4WU7J)|X@@Dxd@{GLtHRy(m$6<@Yp=zRM zd*Hk0Jq12dyOEdSDodNp48DTy8B2e|&M~b7Q)A`sSuN{Mra#<=g7(J?R zc#icp7(~$!60ThZy`$!-d&pC4*6xr#LQ4nO_Ol@Ns*WKm$s4D?r>gpE5#8^YCoJE_ ztn}66yMxZ&7qp4lRuS5%<1|rlHwbU2+ ztcF8!)G;mvTaa_3X?<>68_b@;*iwC4$ucaIasv1?GAf;B_(TqTwV#hmA}wRJnt2wy z0B2zX;qJUs*$O9>6T9!cO<13eJp@vaDz7qo_|+_u_x3MP^|yq*Jid=S~F)`XG#yIJuddhrz2pT;h#@!9-}h6PdQYYZkSZ0J;(<0bqh-fGR zuo{I&Du|g%B3#A~0#?BK6MmZfyljIbKefG0r_;yg41CP(SqV-&G2N>e(=XOenQZ+Z zl+T8s!Ozs$eySlMoW&!|H3MlA^s2I624Fn$4k{+n{MrI!VR1;sxb-m5+qqcFSw0?q zkTHFZc$8n}Zcmf`Eh34X>BZ7D^7Jf8%v<6) zN_;}*(RZU%6{}L~E)H=xGLD~@JC?Q{6mOc8Yb;%{njBqrgd10Z?J=4bTqgJc*qEgL0gf_1Z>YnF}f1N;zC^clsI4PuCi{@0v<>& z(OLu#f56QA9H1SNY;@<&u{LLpZ%+J)bDXnY&(U!=DHG;2eC%wMY(*ECWH$F70K#UY ze|Hiaogb}F1cDB!YKql`ed)nrTD?cbLHNosi>(Lnm0~waXDSaQ-i>&}g{gm1p?H(r zz|n3v%65@V)=IH12gH{heFpxvSS%ZyW;={1qeemjec>+5F<#l_9{Q_ou*H4x-3 zN%X}Nx70%ZbZ9GV@5#wE@!bjX-#?+A&gcAx3-`buI^c-GKz^~J4^j%hMFuQ_3dNz! z?22f*c=Il(loOv|J~?KCfSMe}2T!`^+)wm^_{~hHKmg(;*K_WqPp{-Kzj=IHo4z2I zPCXA6moz=Xp1sx1^OTfIAR)8F3Bb4eV4OFAX>K*=dJl)^+s1KQZD#WKAk+I<`UCvW zIQi{tAPC-w!tc@0A9=nN22bZfs_iOR#RgO5m{n4}rg{VYmv9JWDqas4ol@Sme8}?4 zzQ9qcP%F`3nh~16Mt?w5FxYZTdO&scGA-GcEq^!E)LJq+U0;nv$>)1kZ}6}q{_@)N z#tE50Upx9573ChU7Zps%)O;N+x~N>tjm}V)Z{qeX>4wK=p(clCkOD5RN7f3%^EVD6}8G%kwRxJ*(H6h zoAAFupRMci(q|nW{uAg!-WvG#ZEeWs5}fDc;vC-(+>ZW7JFawVQm&cS1QG95WkR6< zlq}|NR&PkJhf{Br&pxchfb?>GppUv+%is>sRv;PGIsS47uUYHi?Bone`I5k#kykIn z!Z`e$Ug6?**^t&O{C*z!-&miM{+V}u4j=!M)(6af4%aC2H*bxw95;UFE=Tumr*b)b z1&m2nlm=F!3s|R<`2^-oYPGE#^5SLhWv_+ZL^H-5eG?=|v+Ey1zviY-5lX_j8aVKT zA)etq^|Rp?KVSi#9mx!;3OC$%_fOKm!RKAV^e}pp1f| z5&;2|KmrMLONT|l9k(bt;||@jLm=H~rKS}fXLKALbzBA!7581)WN`u9aRWrfD%*Vl zL?Qq8J-4>*biy(-zwddz=b=M&SJkas_ndp~x#zs+oQgIA_5-$yh!!M%`pmQu=|5eekkHY@k+*SsJm#eXnA&Jt-L?IW_ibcTXIg60Z z@1id-pCPjtPO%!ro-0O9r8!d$^^hex~k;yrN8SnCkzw z;;n`t0-y}MgI#rJpSY)P#oJWs7w4D9Lp_>r&&rIn*M}8W4BAreAGR`UWWTJD1A75D zk32J_#!mH)c;DtB=?-2#di)wi=i@i<|6Z#DgVy`!(E=aHTn4hL)7t3;Fc}x(*NoL= zJ^5cC9_U@6b(h!(40=!-&Lo?#wn;F$6{^J*4iCQ4dN6M4`1a`**H;Wt}&_@QgFUt%cj=PIIcgO6zqj`DUkH$kj>{cdzS(sg3JfYBk?Gv~d&_eu;9G zUtNBe`frK)Z>jo^whNrwqW=3{{zHG*o>^17bSG_-RU}M=$<=P%Zppp`$y8^51CckK zY7zNnn@p{t+qDX6qsxFe+#qLLg|ruZ23iL<{!M<#knkYfzPeyfeSq*wLIbrmDHw@` z*ai#*@u`~}^M#};XzM;Zcamz|&2t&O0^DF0;0}@kP{M1E71k-;_>0y5K)g$d+||bJ z6V#>Vnf_P^7p|`4#9%LXj^|t9C<5;TrBb-KenX-dG|R{a;fXS*>i6s4z)b;sf!nN4 zdClmfn&H>_4cLDiRp^fr&}F`f7R&3$_rb88;&ejC)1QzLsnoCRU5T=cN5C?EMon=> z82ROA?7-5Ivw9dorx`|NHz)(OEAqK#=W?r72&WBl3`ei!Lnj0*$$^zzRf82*+m@7txTym^PnSd34e$cuRC zZE_LM+llugGhwWU1ULds%(TxIt##vhi)4g$7#DZigJ@LqFnkT@f6m*;r|MTjq#=|> zwI9-l!@gE}g4N2vkQVKILC3)EOq($D+CMBKQq- zKNUHG*BD#6*aH`3${!TxE+he-VS&ZNSq&`DA7i0tW5kcY)tmR?2oI#~VKtr!V_=M6 z&cr-p1tXSorf{Ag%K+RNSJ9T6E)Vo zLP3#{0DpMg?&wnkLBQ5Q!p|20$zgu*K47;k$a{f}0?g zhT=;au@pYlT!)4%k+k%Cd*t>x>D7e|uCPO;b-@#BPp`|+NGWs88N{eiJMjZ!~~v`Ro^P|8Fn36Mph@FjW@dW!)V0ww0Ah}L0~cf znCYAS8B18YW)~mCX88mORVMf`Qya@T<+e3*+GT`a9q_2Y6Kgp z${CI^8bYRvpd`@)3^Wc;K+5%DfIe&=c2s6$R8SjSj(vw`asz$y;aAXafa0ZOOcYb2 zAE-5x;!?+!!)Yl$!@SqBW@N2t?&gs0ssI9*jgdbr$xDj;CX8d#T091;f1~S zL(3mHPIJ`~Q&(FlsoDXY>iTZ_HX?ri_OdvLZ2D2ia_ z#*jXvtWuwtQ(iL_<9u1s(kg95aPDqsk{Oe(fC=u%Kx}(RgJGOb#ppcTSWeFZdIgwI zY$+Sk-hhuC0J|V#OQ+@;OMlo28$05<;G?P1%n(5XFaSpS2uy<`F&iA5=o!@U;-~wp zr%k@8O8Y9f?5k#oES&5M4*HR~Fs#Cy;GuyY8(v78a92pH0_11b5&$L_LY;vf^7ogb z=#9~AIN%g?asGkxP+NsiXlS3~7eX&x64I-lvAYw}C)_1~(2~qZi}LNSWJVTXHCv0G zE;ZUhMkTJ}kKxv3HG2^CbG6JpLdGir0JdMac2^#hk+GyGYNFwiz3808lKe zgAx85MP$E&c+-BY*}A7@S2KU~2sQx)`x8(&JdXmanPc6YIerdS?s+1!r`+pvY^Q(@5+nE_x8{K7l=-EG6xYFIlhuMw3$x; zONVoE5Qx_oSulE?q-XaXs-wgz_P*uXXkX&$1u(DV1T}v-Dm%wRqA(#mc;gmD* zPGH{*RNhs<3Dg^p9ko+3aAaYI2&RR8r${$z&cZ{Ys=2zxW!Vp-PX*hDHP4J3M9f)9 zSylYP9)~FfKkS`-*86rMKL{|0gqtnOXxOIKS6hb zZyVtMW#3_g8M&*Hjf4iR2F?TT#hrnt1LZY4k^f*JwzR*1;8n4Y!efAw$nmv_1dui& zXP6$!fn=#%s8ub2-bhJ{+zZ&`EHsLHao8i>Yi2FMbbK0j*UWk}Ba8yal?zdT5Rq}X z=&3w-SZep6ru;5)MeUyU{^*r_m)bq;{IQ+*4VT?z&&`cnFgMTOAnGlv;#c|1Cxx?T zEpUa&ljX!_!Ty9-q)a&hSJSf)(Bo<#$KMsuvfG)bDLI06v4lzoTd1_A zQ1M@<@^2_P;g2#j6^w(N43WEx{y##nlNNUwU$xn#gvnDC8h2IbziGANV5isdzXn!{eC1RP4GF$7FR6sYMkw#rQt zi1!20H=`@?1n)HVypQ!DyGpxAA^0xwtVIoBZAEw_7k<1cvU+&zr=r@NhIpZ?@CiVb z&6XP2@KCna!mZQQz%GYA@V&?nrLR#n!o6eI2Je^JV7R|X8&?F0VbvX*u)>m`Qoj)> zPU;T=ME0o#} z`nV35p#6N>I3IM0 zg76(tP`_3mQ#j~Nf9(zE9wtLi4UqSo;P#3&d0EJYfFFU6^&yhKvk&f>P8_me=6aTX z#{}zU7Lh~TFHp8_;kh^2a|eoG9q}KJInn{ zM#NPN{KdmW`Svm-PkPfIyNJTJdN}$#F58Dd)#6a*7ItLEauK6ac6>N|3@kgIr>@Cy~Iw0^*uI8Fp&YxLQO83vM27+`gUPxTz0oy0oW+NiV!;$^DiwycLkQ!C;*;YhMNna5NCf>+`KD7RUMH?zu0Lo2Km(c)^xSABkK}4(@hluNk}!)cC$+b_ERUBZ7F#g;dqLkGSgUVml!wu}6?SMh zdiRr#e`Ac=%&_L_&^pv?iY|?`K`)Di2bVyht(MWi1j~VHS6rXLzlj0H#d#^Cagv@> zJX9Z7oH`!Fu}FiQL)akn9=5uow~Rq!uTS~w_D|V6A*P_0K|vEV4w3G|(VV57?x3zX zQB&F4F2wKHE#iiP`UMNfu~a6cn2olgPFyr^;u5d7X~ieby4=F2L?q^EtP7c!bq zE9U0Z_PL40J#hk53ZL~bSk9YYCJzJV_JwxmQ4mBrmLs4oKlV{%f+)fzk@3h}P=GOz*|rx#m0J2B&Es5?(r8^@p45n{caW%m(n^Rh3qYgdnf zF4Jy}4DA!`#BkqhRbbE_|2#%h2Qrc4>IHQ=o_k2y+zh-;szFFQy|>u`d=JA56VXp@Pt2~S}{kZYGKAohs{~`Mfw;o3J zSv2tfmVIt2-Y51cerKQ9=U%|0n_{1z-xl`ilJ21{`*`dz)bHTz<65S04hMk$c+Vwe zXaGmIQBpGLmB(P;07HSZw!z-J7B$3woGbVb>%lNP{^9Kt2vkx?AX@CP&UDK&E}AJO zdsJYKmzLXCr(RZQ3|5zgXQso6w6gDmTVMj7LMWD=YSdND4p zWuM75WIyyRcG)ixF*1H7Z2VlFsGm6Yc;tT-2q*pZ`EBZnCiqvQNyi zmRuryD%|`8o_sQS`iy+obd2*`rR0;`J}keP$~<{Z&Mqu6JB(3?53!eU$#v<-n>6jU zYrMT9?DkqV)gE4gPp#))qaWn(uRaa~p5(Z&rJQ+cec)3O$Ncd+F#g z9PNP~Ay`1FGWU2%P%@}d5@f<{(vSqN{VpU(-9Mxm|GQf>I$lqK6*>O@%xUWVVA^7S zC7a*IHs0PutG%wk4es;!XExs6K~{Th^Y){?N1HeLzN^5BeBasa_oKb@8*lF#tG#nN z>`Qyb``IZyQy_Zeb5`2Fh>o=Rf@S=TTmHlQPx}w=@ARMDZ^_eksjay3;0R0|(&yp) zeHl-yy=7S`qw2Qz9$1U*opaEBw0Cvm?ajB^yB-_CgmO)O9Y@VK@u(y6%H@8HBmA;v3M(e`{yy=LaoG2CDXdD|^Afac|rmylP>WuIHWJx@Klqqv%;qk}%%i&<-%^k?c*Arhl;={n#zDjt7C78G>9!3;*&CKR%VZ@*!F;Nbxc|r5NUA6(AC1BP)6f@Q5UGJDZ88JNJ zLXKuD|Fs3UmV;QGa~<@x`cDITUpSvOBqF%CZdgIdpxNaNge6&2)d8dRVY^_GXMwJi z{0l#9M@W`uA$CGH==v%-Zcc8=F_FjXh8>)}p`_K6MF>JcDjFcPPpa7k2T}O%bXeJs zLVXG2_<{CwBDW^~jn^tKpiWjGp#}j9TvxO`@fwdw5=EC6n1NQ&*HRIfO+JtG{u)O@?~{ez<__-By8Y3iXKUPH(Uavvs7z$yebqqtV?W_H zlP9R=U2-WvT+r9R6y_sr=S#TZz&hr?@C7z&dfpy%3G)Lxf9EA9|!nEyjo|%POQ@7%A+G>2vL6*i@R(R(8JP7c9dYUHu31mGJ?H zp@O$o3=&mwgyYrB%yt;eD$wy8NO1+mI{_s%g}v}@Hh*i>2U!|&*T%$I4tL43 zyzKR0H+$k^ZE^AO9v*tb=Ao4q4{bDB%oZMc96Yp95KOih`KCW6{}S3$`d&>yjvb(X`y#>+oJBKYxzTys2_&E}f-L4D)VgyI?|WM5EWh!A!X9+5 zI@@wEMc&Q@T;~Af?T6FT%iHD0+t0D&?VIfnRNgY8%_3}+hmO3Rjc-cc&csmzdHYDU zL%cNd_C_qgY31!s(A=ImB5$V{`z>#2+;!+} zw$n_2*_iwKD|7>UO(5iojji87!hYbHf3AG3s)hj%93&Ez4}iU$6155bIbeBu)*<#R z-Vb^D6w={iO>QVp@91O8)6dQqdAd07faK}B8ypU~fQODeJsaPYJUtUf4diJYPnA8T zKbl6KUiqy@o^Ay**<2y=^!#lHAWvDuvk`f!=t%%Qjj*66q97`ISY$rD|qe>rA^pUg~nI;ZE#BGJ| zH}6ODmQFkh+yf@+=63~hHGi^`l|!pbdft1-f{fS0vxVF^(HgWvY-K1u$LEhSL7Y6q zEXPqu`%NAkzSda&^UtY1@4dM!nf;J;#W^?p63i&`!yi*o`^CmfUxQ#D;0huKh#rNf zMyuLrtja>}mN>Fuy@+$(<(Mh6upIwwox?td^RTuneh0HO?}BfW3%DE~iX&m4)@nIs zp*Z85&lL+0*eB|u`2~)+`aVH+wsf{PdFkQjlGEm};}_sNhXeqt)8uf7(VQJW313dY z=K*}4LkI51|JC^4tIMxs$BwnNd5^y3=7XWeWlIE$gSrxR1N3ZF^<_Pv)b9puPZ7jc z!h8+X;@R9tA7sEFU*O8fvD7T!o%|^LdIA~F2Lr(|P0@6UFZ`^WOgt9Sep2neW&HAE z17f0N)2XTcRw7w}d8M~iVg;#jC}MK|ViEH+IV?7Q!0IfRLYJ6JwW>A7ubCufWT| zlDm(#o@1?#kG46`_3{1J9QM7ChtB$V4!%u3m+X5sj)Z;3diEnXob5=zHW*7wo6L~I z!N%1l*GG(l%2j3Zce3^e=eVp*0Go08r)n15gD(Sd5dl@F;Byzgldg+BpUpVF3cuU* zYOtQsrx2_@m+K^gG$8#>V!4s<1&m4tk&qa5lhNr9YSHYFM#dQ*hONaD@F6aqA93-# z4=Z@$O|%3yhf-Bp^f_CN9K%b1#r`~e7xxgwVDsr@^FaJuUpOu&6Z3=G$I^wj4gdEk zT#l+Z`YEYQjvS##5lS9M!~Q6DW|o=}W!f+We(=YRmSX@QTA^=d7kqR1T!dD;dOR&Y zVS|~8bLq#cQ0=c$X8WOPRzgHe1w^U?ECpdQe5|RdzP{m9e?d+4Cp}ZW^>-Ii!U(*;uLk{_8LH2jJA7z=2Tx}a^u}V8K!<^&-Vk?XY_U+ zeWuXanRw=On*HInD;v>g-Z;|MXF8lA`pm~I4@jSBzQ&o+H?8K3w)cmB#y6$U)ZwUs zKJ((~&Wui@&)oS1hS}a9wnrHrkU^{pqR-rjYF)G{?AQK~b#2qGNA~_OP(8zktv@0p z@-u;q8{&(MxAX1@o2o)IICSg+sawh88d~$-^V>vo2nN92RS3p-F)_)~VLB-t=ByU3 z4s)DWhe_R3wm$--Tg1quf-|uNWEps@g#H+Jb2G<3r004_UF1f5Q@Y3vIP&TuWDeu4j}-Z65mdTJR~*r* z*b}U1Z)qiX$oSi-4x13`Yzh8FayZzS`We{d4t#Nk_VJFqPXB_5UfasI9%eTzDGqN*e9eV5;JgVPtbOA;wX}58hG3$Ph_Q+ zG?5n*OC6eA@YVj(go!TxEBozaeWF)xdVQkZR*yd6#XNarPa1vVPnR~LPmG0$Th?n! zpEy73K=p}hS2!$~&qGI_Xp3)3pUA;c1ASr$GQ6re5>2B|bcdRdPM^@gjJ6;WeZq%I zXcR>Is!uQ=I(2;%|DUK5fSblUGxMLwpTWM!X<(-bvZ7xin{3pYf)e1>FP?^pguyfL z1Ez|sC4`+}<1>e>U+PPm@v-?3`K4f0MnkCyO0dX<=E&9<#- zwza`~IJ0ea(rjCrSmDgJpSPvF%3igC#QX-c?Z08~eIBk-M@x6NzMeUiW<5XXl1A3^ z-LM`jd+)HZvYzK;9MF2+f2lL0mcPsyWv}Ni;G0^{pTkju_57PL&WuX4p08(pO?y2b ziXELjjbuGv_U-|!=Z)HXEqPA!gs@jA^Gk_EG7fo^46+(PnS#e1pjYn94jd;>lzD6m zm@8OYUmxi~ZMa*8H@yK7p;lZqB3J&6E2~gGI{Fz7tczP$F&9Er=J$y##5p1VEaI?E zhI`?(yz&=)xV=grRaklW6+O$hw?uTwTHdIi)~{TjGB7^#_~yWX2K3u~3IKYuPXRzb z3=G=kpSO^g&V3^z16qIPX5c{Os*pAVsgFk%R%n+ZW^!0>76`+2+lL>8_@*5obDDwQbo`b8N_99QFoz*JdvYI!>?YL<7zTU9X5+RF5c~S*0Hb6(Fm=g9 z4BaP>T0@tZ5v-omCs4cEXPi&{ANi`Z5dnakeA}0+^fQmymm-Nz3o)r8C^p(h0fNWn z;g;6HYQ*mYMs(3!WMagln7QUQJY|Y|Ysc5xkwCBzCZ|LRXd}y1?Z4aYWGI?k>67>x zI7go&QVc;5v3oEgDQMl0wlh!^pms$1E90VaB(vVya+kz1&P8x*OOIsn7>j*7jD)<2*O&U@S zkz_boyR^5YPp=tyR5Ofw{hJtoYnE`B5vkm5A&+U_wIz7L~qP3rE=}!l`mVU7BYblqA{as5>fz?y3rFXZs zr{@s-wolV@R8E@ddE=sn)3f8ww9|83Ic8Im=oqp|r`7FWf|2ALJ%twYdo^PU_nFufr_;A-?M+y zb*^<=W7G9nC?~SEI{T?4d<+uJY%j}i9WH{9Il=8g?rlCbE91!M2)-Bma2M(U^g(OFnAHtrV0l}E=Iwx%A$JM%MjH#52_EI`_jK%X>eHT zbGI2I@LVX&kw2<^9m>@Zp^UJp!N%e@X=JF(0DPx`uC~M2bTZCrtC`*(G4+2|x4)}y zU&q@o$L)!g$UY};Qs08pZPvg<9k$cR*SvsLhjeOA5ok%YeIim; zw1^BtFc9&j?i;g3}FE0FQbSJKiSW6sbj zeHOMREukX&YoEgRI>FERV{eht;>pDbth>)0f#YGo5~jXmz+fhkPh}y!2cg zWU5A5TK@=KO5#J!q?1YF)Jni~>r{4zq>Y^piR(t>sC(oyCwLg!<&)XMA zUfb%0XxzAFmD)&siEhC+o+F!V8atI1N zP+|~BTM|eDl1RJ2^tr+T0YzU=6`C8uVz<^@Zo!2t=R=UD6ymdr``%w=ieB}e6=1v zIqXa$8%&9L)e8g?>c2itW{8)*|1X#Ai^Y1G#P%J*BXs`-#6e5$h_p|1=fpjsnGNMh z!8ASeI_dCDq+{CYpt$&RayaBAB06Se7&CB3;!Vq3)Uo6ke~c5uf(ZJrrP<$snrMZi-%K2c*?F7f`h|FOH^Q>O~IH$Xp|I+~UlNC5O{;Ph|q zbUA&jm=rynzKQ~V2RZ$m_7sTUg#C##$mXN#cL+C!90O+~Zi72)NbAiGul7AfOq_6W zkWY6QwcSYM?93r$NJ#7LmE&mn$B#m^g2jOfHlh z1CbL?^YSjdJl=fUSBj09`NzY?*Cw&Cq!Dn1v%iiw8E|r|2OUoS+ahxEv-q8yya3-O zSCW&j$B}UI0L96-;0pBY4oojw0`~xUk0dAd$B3$L*M_J~XgUw#% zA0sE&%lwyjxLh!D4~NXd1uMg?>AX9OS-$`=*kO#_y#uNo9TJYy6KtOgB$48Jq>j^= z7=rFq>Wvigl4BrgF-PhcuI2S${ludJND8;0e9!K|rycVd*?pyzSwxocp?Gs^8DGZE z$5BtsUB=h&r=(>Z{ze$h&69B(`E2BgvZbvnV?wDYOW9K%60#109lpe3rB@is&<#Jj z{4o6q@WSqe4lmTpG%Us7~s41`*#Nl}~hq%a;EdEDib zHUO@h_kpq#7cdWM1+L&aOpzYNXPf8qA&x!txA1xv51=rRpGz_jycQ31a@S;NwYhLA z%bGlkL_>#2v_SlHUw9*yaMFy$eo3?O_@5n4w=h4C;WlZEPFa{EpQbL%K(ENc>?-3D z-|y~djtMOqs|6K$uLyL5*gOfv*M1!kaPh9 zC+0L*X+K~$xz@JBxTsaPGme~9w;R4RSanUN9dEGMKC&szVjHvFgckp*cq4`PIUQ}M ziwBwGEVd)Tx;3}Dto!-S6xLl8&b1cX9}tvENxRwjat9@?6#|^rhxmZKz~1F>|w~iCNt!GSAP2ISnUH0`RqLoLk{O*EdjD*$TEDJT*CEqFph*F zk5%g_S9^4*>S325KLh++YE{~@l*k`r!n2AA=i|!)ihLrv{)kTmA7%=s3|;5>P@bNK z-|hW^@MDs_#VSOV8#w_62p9&Sdgj!P2GrRX=@rOa#bSqgus|P^AILhTtbXiyGzIjq zO#ui{0yPt_K^u!~3+O{?=H&U{qlY^UzG}f3d952aKnX}L(C*l4t@vSUYLr-euTg+F z!#1N-)1R=`miQt=IDte~Zz_7Le$06ynbAjL50SmB*yx3)&=%3l5q8kpB*YcuO+1bX z^}5~D71Gm()v~-nFv5|wc&70MN@ONp_SlcSG5(>r-M{iGeSq}uDpZkY%FF(N%uVHW zOy(FF1hbA>`*%n`*`+~h+>~WVx`aHEiKR;UYzMYwfa1&O;ahP0WBf3fYY2o&Jg&O9 zRCN)6;339PcJUF?Q~Fjjr)LIIn_?YfbtuqKXg9JjnRuS(PgudJ7lOmvTeQrUS8kgl zq(QEaBMXt4H)mA5UvWS$hfcFy-V4b-i{bS08o~Zer9kX*o;T&wHjT#9Om~U2@YKSO z@&bKA@yX~i_xaX{_QZ$=^kMjsYLpsE5BIUv>)7gdY7k%Vs|N9PPre>6?E;{kaCoSV zuz2@$Ebi(1gcW4%Z^1Biqw_c?S_sRmjjoM+z-NEl2hU#bzL7P*kgLPdQ@k#VoODX`Yy2;D?Xdff0GQSv~(nq~<~qiXFz;c)q|~mL}ft*i-H2Tk$U( z%mHA}9>^h10|uwIqwxq8J&)6nLTkHGd%POR4R|`N2()IXr?0@&#?#mF>6?zj+pl!r z-l3;FUkt6xBi%A`B2srF1_!yM!&yv$*S1^>x3w}ahA~aDfe1q0xVFd#06nO7MPX1w zbhkk5;r4+$x899dalaZB6 zC4bAw(#B=^P?A>O!^vsp?jN9T7RdSx5f*@X=-Er~Eh9W0lBo#ko_|E$7sI>}7!+-# zn(^LJ=wqmX#7n!|y@rw-`yu58Z>o&KAX$S(xoe(U$m&9Ebbsxy&HS}r<5x9}up60L zRXx$}IEnxsK2#fbxUY6<=ZrASQ>%-%8;8C9Ydz}39iGG4U=G0GB6Hi}_9)-Jz#Zj` zlur0#%$SaWfj!}SA~NEom)n=yBaPy>Sd}n??6EOVMm~Jddg8xbT5kqYo8!wGzvw$K zV{$Bgkl|7Jp+zYAV^mKm7<-{Er}!7FVs&dZ4k8D`cz+;RH+bYDc{c%M{`p zU{jrowVW(cr44A{EMR?E8V?hHDmu*ulN76YwCv-$-ogKnyI5uggbXiR3 z0~R|A(*^@V7Q;{G3Ov|lF;D!E;I)Oh&hgb%biyL9X>Hd42&UF0@+er`w_@$2o& z-C94~_?cpTQ5avVbbGQydIxXnWvz)WYaI#JI?}^hmQ?!lI$^CNbA*F(@epv(k+xK7 zVfO=~@lRi;GRo#uMtNUPk^lba^NLaIQ8Zt8SXgAkzg!jxA_$FiNzWo;WoyV56>lc7 zMN4$Np}c{GBOqD6oO<&teF;YvYw!ehR2dkZ10)_Z;$DX==u9KNY)kV%*6_Rv{XAbK zTtyv0>+;&)b0desn1DJR{4wIMM~=j$NTfSyqd5lm)h|ObcFfIL00ou>^f3j&>M9hZ zcncYHu`+KT3QuEUeKWjXTPc;DKy3-+Y|^sZ%1>w@BhgBo#bK~|7R3AxwAK|IHdZ=1 zyg)C@79?)_ke(HcpYCHIUbwx%RFqo?pW@S@h2jR{vUU2Xu@wE8iHVBKbQ4(oQAD0We#Q?RjQvA?j(&h@_9 zoq#=dg=5A2Ee}J8W}erqWrFR`2Sw&jn$i%a0~m9kG@3+B+k=qlyL{000-(W14i&@T3s?^ww(^2eB4 z(0mtvWT)0T(v91++G)%${usIvh)?s?Olt=t0R>-OkeVw}qsxF(^8k1+hX&s5%Syd{-cw*h}aOLPc{XuvrDpuDngS?!u zrudYCNe`Qgq^Ad43>@AfZC+h~){5Rj4&J3k1h*saEgJxCym4>eKK{ zP?yiEnS+84(>St0t)vBKr$3fJH&DS^a$ZtBP?2SR?KFE0NBx0%U%2bDQqC)oUHdD_ zd9lO}ebtfqs2()l`tr=9P&fhtq^RgICZM%I$R%e9yKjE{JGIitt;m%E+eOtv4VPYSlsN1;ExUCYgbq1hcXSNQ`b7z#dE(Dqh2d_89owi zLBqx}?3vl-=|HS4GrIYo!dq>6j<0B3bTg_G{qh?J`&Ah%JqXfSFT}Am3Frpz;B6G$ zV?Is^`oP`g*51Ekf2nt?8`gzZ-zB)2yA!0*SlA-cp~M&NghC`m*k#i80b9n=!Axl4 zI}(Qn<0aUG&pg40@@GYFg|r`xZpc*u>f^#hbNnf)r$r(=Qi8dM`iC)RJUf2-1;?{J zilQ#Y;Io8{6?4;HVLcG;JJ^`}2sZFNu)WGh*LviHVWg&K0hK!8Sy&7Wd;{uA)7pYO zDW&(`J|*L&s#X}9MH_Z{UXlCFfVKzOM2BA644!c0pl=Ybpw1tUjCxI-pNF+S{dsHu zjD7Pogo&;XR9}rP)H<2RKrR`*{(@0)cl+KRxcW{?8=>lHVo1PF^Eoml+xZj)%F-AU z&U_d;pxeA!44nGHeE*cTRsR$tv0V-AdKyUIzf^r6c7m2DeG;s`2CLh4?A%+@&D0!# znnVaBgY&Zz&=q#%MgBz^jM)iP6x9RvQrjA~jqufguOg>3Qr4#=sF$u&clX3( zzp+^9?hQ690lh1_OdslPJykG|AIP5E2=NLy$cSjPmW(Qdy#UrDH;?_i1nkWdP#ja< zBgSxMtDWTt*X9x$3&~91Y~0ulbc~lCHqV)7x%0PTo@Hg4y*TaD>Qe<$RbU9BjR1lY zlA?k-a2(q}(rl6xDrPruVPbd#s&2#2Qa0yPV?O4Fm^1ycr5Hq$8oEtM&vdJxbsWY& zi=M;@fu8Syo{(&tL)xdt8+ZrOGYYXldY+H}A;Q;~6iaLoSdHz&NYSHkMjr-xuJYF^ zy`A9s9CD^Jtkb{~7IVzws$yE3IBKkcV2H$^<--ET; zJqm@=$}4^` zS6B&f*#&0#vUfs4;2vZKKbYYOHmVZNJrIn~gm`1dxs6DZhK6q;jTH-I z2^(!Tu17ey$P9%)P%Lo9p~3=R&2m{_)F#CO-`gzkgs=eSuh?%>;`?0cr&$dKgY?$Q ztrml?(k}+XG-M2B$`?y+SoUd4UKD}2(SIoVZ^BE$$ExH%`cC@O4^8@SmIfwlWPU$K z_&+Wd*V)r_>H!R zS3m_>DmE+0p-gwY`Qd|wR6}OEq`K#0MXF&Sv8~S~&rej1apZd=!kzOoiAWe+TedHP z-ek#k3SpBqryUw4$#cR-F+aCD^Yc? ztv0?`83m2xEVBDBKa)lCv8km0%96~F#V{f7waBDYGI#x!`FI;ng5H}cbVR8AYUE;Q zNN=vloR4`z?~67hW+`HCREzh=9%6qXk4P29>-lQ~VSL_xOh=E%9cYQ%E0OWfotO96 zLK-3F8M2-9<@i(umecqL|OKe%Y(YOrx(m>FEf@133Vm(Md5cDu51pK12 z@idp)Z#oJ=XHRtrx^<%>XgiDUVzzMfU!kX!uMPg98Q58DHacO^wB0&BjIaf+7I%<$ zdy^us>7N-=Redpc7Dv)OwH{j@#+lQ9z-F+!I6TEw`TO1W?!q?tC2gRb^+5I*O3>uk zu>%=lB);8Y{4wPzp1p?JtZ=l#`568;-Tjd4H(>Ac=%=B0HY$ivIo-qUMwPaVHrv1R z_4R`((aR8Cn_s(a4{Bib3FxQf1&Z_gKq1AO!5@n%uuJ{d*Wv0~c-)}vFXZo;D}vf5 z<$9%6Y_ToP%dK%jlzJ-$zY2@TcsS*9vf;tVhK@K@jS(@rh-nyTY`m*6xq{{dNMEJn zwrP3j?nEr(8w>#|h*HIo@cn9*?W+&;T8_FrV!<4=eDZ{lekBSl&g=*` z<=9{*U<0!XP|`gxXoo*q%&XzZ8WccT_~4+*Ji1U(L$`Q%UIZkl#BK>%qJ~^mr7M1e zaH(2@f}=}Oe{%zN{IT757%$+3yeNR0j))5PSO#y$z=-{$pHCdAK90(O}l;c*!cUQG7I^5c7xpscMWQ~06r+$rwg0~2?1@DM;1)&7EURhzK<>(JE z?!YfghJd{cUrbcj@faVx>oNTqzdOM-$nRf08Q47GWH?^P$#;S^EYEic4qSOpykyZ@ z+HK(;4rP8C7_=tb-`$_84Gq;Ik&DWQ+;Bq^>5wRdk_pzHk4qKo#0y6#_$T)`v_N~k zsm<`KwZn0yKGur%ur&&b1zzLTK9gW^PV(q{M+#`uiIPgsFF{urS<=7soE4-X|aY61NuA7bp)g*&8toIlE(Yj7m0 zL^wThY#xt4t`KzALpMIzavt<(8LXZFaSC`Dg~^vB!D5V0NV{kQ(6Y6H*Jd0XMGH8u zlF|P3k!iry2vO)32xb02qMYau1-p+8sO8L^CR?)>Ecg%XohDrSa2zPlU!)*$Bq_t2 z{L!0)I%(W|Q*I|I+|(bA%^&pW&Qffk9-uG>1xb+-ygw;&m>=tR8NMhCoG4rnv>!z& z^DPrP#18mD(2>_C?nt5(^+}U|97-LYOsQs%lTy6b9~;GsNw20z)t%=-Ds{`D_#zc% z+1G2@qOa%Rmj>}nzZ3T2k1`;GF-%BJ3;F+T5Vg7rEs-B-DDnqWoGOt&`#ekB(_SFr zesehlfU2#VOL0%r5Iy8FDi%_~5%vg1g8#WUiV!BdMuF=3(&z)nL~&4-&x(fxCeMcXg7$-Q@_}k0~#)nJiQimwXS2Yl&N7 zd67d$IV>NRjq*_qSzQ@b5-rH$;e$n(n2(`#52HoaCV)1xWC1d6du730OArXRwsDpU zKZM%I54dyPi$@WCMDfl7Py^6s!nCM91YNuomy;k$jq~NK84Z(A<_Db7eNtY}-U-?^ zBh(UYqgAxQM5dhcCpybZmNk^F&)sTkP$^)qA9{g(Oz&98PS6?)I4Heiaq}Z~K;ylM zM;jj!f0QsyMOyv29O;!MqC&|`r$;ENk&&7c(OwJrG+wiP+uN(rX}Ht zj22e@J0h;qx)=5Dk@0pk6FxGY2t6bESGs&upFqMMmRq=%No5^IU5o!rW$l~|{R^ouF6@*%NC z1~cCY>aa4|dgpO?BK6MWmB@lY9R;dvnbie4AI!RtTWg+Catqqt8Y-L&gS1a3$**q2 z|0n@=9!A?yHrWbqpb$F?`4OSYvn^YYtxOVRTOC2RKtzqLH5y*6v3fLCZj=-uGaJ6s;M z^%u|nN(}XuB&);Djf@#1{S@xEDWTTSeOaZVXmX$UH|!U-XKAuvo7PaUefpO)f{k3M z{B-ChR-q_SXGrr5ro0i)B2%6*GkMpk9&|rKo?X9(GI^Q2*_rJrn&P}gj;44qE;AY2 z*!Z}rO_C!R=^ZtP;19*kz!o6O1^D9C*Ij)PA>x>`#577Sz+mQX@pkzlvx9oK^4eK^ zH_4YE8x)ll3VLEl`_?NYEk*ITR0>e?rV2_00EL!lvD}Qtls^anx4{0hPt3f@KhE%XO6KaU2au&;Z`yeU z8mP}SOYxVFT8~GmUd0#%#h+&K=@an9gGYux_GR|ZxZ#hfE?3bHo%3@pYx?~9E7P85 zeNwv~7tAO^S^|l3BYm;C5xn|jYz#Ju2Ny2FD(!nCAEQTvI&^GT4|hQG>(ut?Ga6;k z1hNopgv@M#7P|!XeBgIm>nGEK&;la8g$F-j+_3;Y?#1qOZ=nBTF|r`F3SXIvy0lRE z5zCKa)j3u1nO#8KJ>nyV2Og=vj6Y4|AkXZQvYqRTCm{kna%f}O7rsn9gxd&5M16H) zc1wETJ>JA`&G8-(&EuMbQPqpsi<8=gg@FVy-o62Ea*xx0OI|r}U^Tu+tMLUifOr8q zpI?}2jjLA~aK`mLYg|=_WL$}t&W!+am7k@06VMc@*wdF0?90PR{?7FMvFJ@NHtFq? zsUrRA(PY1Ddhchy9=V?Va;a^}8|fPXN`fEQoQfa#`xI=gT?c=9|9nat>F@(%(M}rt zz#-_Ar}@3&2Y{+AdW)pXOzoGgPo?xF6>qTintga5k3I$w)G1Is6zhpfNdg}#k=h|- zhet5ZNub=Dq3WU7rR=QGFUYUZKCAug_h8n!Wh&0ZA7gl8dF|&}RXSiLz!eo|Mc`T+ zrVN6w@g!M1BYbKw^OY*CXE{(rx%icE!9O6V1IWL%;m#o@lYmPEG97lWN^OhL9*B4h z12zwYZp8#sV8>{A^|TOiOK@95iCIcL8d49QTU)l&k13;JGWsr_2wN655ioTiB3iFp zqoDBSoe+h1v`PCg?TK`W10_ST4|@u}1d#3kA>n2LE`Xhjn^8WG&kfgEnLQrhb$U@y zd&4*cwejSU&)_#cC#WH`K)tj09SB6D5k+h&QQA}jOt|llb-^KwU6_7_A#G_$TaI-r zpl9kqJRT~N1Dj}8pJA-jf%*Cxs*W4wgT|NIuN{IWCd0xkSFrILmI>@jP@Cw@1mB8b|VWD zPXk0L*~p>fRsnR%DHy5X^aB)B0w={afJ$!zv2xzThI1pZ$zVpSNg_?UFka)%>o7^E zyh01bkP$-nHT)n1*pjsvugFm#Ye^scu|iyI_U1fX4V@GNWuG8mS_9@KVAmRpzOxP0>bi>Z9V#|E{| zJ!B{>PI+B8r6W^m!a_$=?ONlH08@ZfS}Qx~HjEkJpJa$hju$_fArL>@I`SbkAhHCK zuUH-fGw=@XO+1QKY>9`<|_(^1eAb&#Uvt3|aw zd@#V(vZ&@k$|BEC(OZ?;PGbdd5sn(-B?otCtLU8lg0=^)ZsAd~swt~L<(kQd!s(u2 z49%2vEqsJk)P;{rJmit1pWbE3(TX00iPyRERq1#!nijZ1(?$wIKb8+$dRbELY)i@k zw*Vvkt!Osog}TE{Brn9Z-FcxO0e#?lLo=)p8g_CTy`7nBGCCum&w?ET@M=yQB{bP3 zEYxaw#M&6{Pb7c5Gv8ynp)5_ArVvG(mV=pqw zXO#Q{i%t~3d-h-4A31nWWgqM>bGBtw{7Nv#Rdm53<`^>JH@z%htAtf(1V%Fb%)i_k zK6qR)bRq3<@MV%*m)R;3kb?brAPBsIomTaRwug&gwQ?q}H|b1T!Ggt~KD0p_!vob& z?m68Z$_t)N9ZG`k&`BkBY2BTl_zR;o{4rM1LkP7DrpRr(JV=%{(r0}CcgG?z78jal z;SUxp!v~oz6WAfWypSrnB0z0dXxsK4ul}n@&{as#ttx&oNHE!v(fRlpp!T@plk?mec<(fIQz~2pZ?EUM z*prG>H^M;UF>++?Y3|^E@pSUwLzb;kHY4g~q(I_EDr>DHb#&oU9K#x%?7*FND_EH9 z&#}H8V$nPoUo5Ho@pdJZ>C~_VB0XeH;2Ghib@m(1{$dg&;hqY8Iwat4*k1&&zp$)8 zmr@b}Km^X?-ohUf9HB1zi`f^ey@fye5yy@Di(^wnq1s<4QHae2Md335iKNGtVqF;? zP`ZDlR4E>-%$ax{OYaX)u_R+;&E%nwAyD~^qkf0jgR*wAS1#TKFbdC8x&73bl0(hb z1TtIn4pss(sZdcUdIacQ|L`iJ8xjP)fYv5n9vco=XDbWPEN^PC!NKNAZElnrm@*77 zn5tn=0@NCYM=@r%3F3La<6PA21VI8VvWjK6{LPQmZ)^mXhXj{LNk3F)xm@}ESPf1vtI zxJ-W2Ps&#uq*X!FRuODX=uegujf^#^A2%)L{84dK$g0s{ocrceo=AD~*o&a@UPW@x z4#^^!K!t`P`K?)vh-3+LTd%}s1Wrepy#Y-`=8HGmZmlO1%fa0T@x?@ILRdAowXc|@ zxzZ@9_PpN8R(t%h*Kx)xr~NTnKm~@EDrp6Ga1PEkkgpQ8?$oCf3onc$$5DMDOgNbN z39BDs_QP*1sxOmQFsw_+ww=@3$zx%!;0-rOA+woK4W>Y@lF$+wY>>j&sI}>WlU;(X zdMuS-1iGf(93cU`vpJg5E}3B5dC4ZI*2=r;72In7v&Gu~Y;<_s+W-6os_u#kSqzLD zexNXY#Uy|n#KOWYW{8MIt5qhas(L$UshEdG7az%`#0oRZ*xMOXY}NK2Mg+DSpFsOA z0^wl)JteLE);T}t)TYm`KO^n=1F`@1yX1dk|DFC{xBu252n(xD1N$$Y^gp%#PCFp` z@5e|DDt2{8_xC2FIZ*pA`|_XJe=C~o*SZ6`3*H7Y=mb9#*ImmEW7uG#T zF%{I-L)6)ZTmn1;+A`aat5$Y%B&EOhvl+q?L?bRkjg_;TR@|2Ork1;vas^;P+~@LH z;hQWAu8M?$1$Vu1`j4W~A$y^;DkV&*z*7Sf6C{%bD(kJlgp~DGtVYml#3Y6MyUHXb znvBOJm2(Y@4Vk##)#sth?~xbvDptzHh!=%&wPd8TVs*@4%oWQ`hQK~W#soFQ#w!be z02E>@I}Dg9`kx^^z5(COARdcx4T^z0sJ#x=()c)&s_Ccb0#`>`#g3L`L@8@>FEudP zOUsUz5A?^F4c6A&j>56Cs>%B@Dr?xE89}^BT4=`>UgKpje0mh#M;2HLFL$?9Ys{Ir zgvMa7lu0vh8hE&tlf*LTf8W@&(vC{|-eE?7By6t^U|ILOR#Tx=jY#)gdfy ziiFGn`NU&nwXbwd1y?DGbUn$X$h<|#6!FIxUXeyYwaW*#9QN3fMkp~mcA^Eep3quIi;bPl-dXCz~tdJ98zztm?shSlrQ3G$=b;VV3%kGJIG zkE_hv@+`?764D*~s72pHFq~C-4`KviASI|2-RMRIG6!d1BLQfU#QVC}|sanPh-sl3z!-Ofq3%GLtaoG#sHTK*JbByi%xY`wcbsZ)aD`TIJbBO@beiKn^63nAgt^~gnN(hV`tT54*gORgs z8OTH=j&wjvozN1Kc=@BsWQMx9{unc1?wvzQt_Fv^kM@)~IHV!G7N-Ss<}8HE}tj~g&+gS zui5><99(uLrz|_}0`I2upy~592tb-XWkm>=+WY$rlRL0rs1f>F?e4o^cb|C7BfEam z9odz5mqIb559Y!p8-H3Uh36n*Ei30y7Sn|f^j7zO|KO0$)xI;G2FnKAPBk`Qps8}25nK8%acrH!~WQTUJn<4H@58*IV z2-FtAScwZ8*uNw`L5<&M7#HSR1-b+%YrssvvYjc<-p7eh=4Vya*Fc_aqq!XX&iyP` z(qtJ1i;(C*;Y(84NqGfS=(K0(EEBk=C6}Yv7&t00%pJMK_oR&6tu{v`?h!c^x!qcm zZcbsNlcHcF+RPvkjLY|6m?*?3nzk7aZ&jj6+$TysF=@(mIWEb50KEpmm9icL;`xXt zs6sLXlj0s`o=SaIekf~>Z6*u^^h2P2<^_w9uV}q+C_?Tb5Gsji!QgUdF97wfd=u(( zt_{$;;zDF1LqIbzlANek&*h1KSt#`IR7*gN-!Qq-G6426l!!n8N{hrjw5T151t_4s z&&)G4074{wYE0hAS4Ymq<)UQ?qMrfRXv8B`?zmQ@NQJZBAB{*FM`hoWke*O=HRzA5 z+enE4<$enXG1)VkBzW3dGbK`GrZEDlOI^?CL^Tyk%iNd0`>y1dSI#(~&0NnY1z9*O zG9XEab^Vhq#8Sc=s7S%+{)X)X1;jSR2bwk4w%k3EcmX_lgk!lYRLl4)lE2PT%;-mn zC2oQz;RI#P!?1EG{_PjBDGAdtVUt+ylwu|lOBj(J8A`S5KhDfZEOlq2NB+BbP0Ys$ z$io7)>!KX&caP-c+5jS;I7wCYEJ&^$mf}swNji1fVp)eUA@j>du5{21;Zce%_YHRG z((2Asy4;0kf|}n(HV9QNazF{*Nv@1?s01RQgpZxkS4O#O=fEhpxo6$-Mu;nDMiSJQ@G*Wc(H2K-6m3@{B`1!kEAAT`y>V z%fhP|-wjD?UvtiH9@_NznAn zR{z|5I<5Anf9RMG;kZLA&>sd|d>GIgjAf^%?cbj!?yY~aUy*#Q02PL+ul8Xz3RRzv zu-}p+#X76-qI|{#^$bS+BG|EIy)Rs#q(mWXyVwFEu6D4o^CFn75E?kd_!dWUKC(qo zz*)e({Gsft(3R!!-uK(X_an-Z&;InZwC`7kXL!iFcY9PSUQ$E5o(A@XKQ^c1kMi{W z`|832>YvLWCal&?_K$dg>M}%Sw^RlaK^0C|;ow=_`B9z|s1D*nzg&oo1$XZOJtwQa zRisrwFUc}Wl6&hN45vMyp~VXVunqc4`JG@I($sP3|BDt*i!v?`kO!i=f)-)a5G`-=VXP=u! z%F{3n`S%Vrrd1N}4225;@q;}9@u%QDy*V}1a(Q3kv7`ZKu&*f*zjo|v%7EV+aR!`0 zP$ml%H8tQIUT47j;n*CEKMnO`E1sG|qvEM&!65xzay)giKpyN0-c*iY z-h-*(-KHeH3Oq;@pMWj}xGdXE2 z{pZ(UqJ0giE}vxYU=JXqI<3A-^I3Qn#zw_aQ>3xzNyJm4!->w^k#>lBx#58lR3BuRvc{f!Hoa2-Na=QpnZ zrN&R&h7el8;Rf-eyXN+d={*HZ(^ zz{SY{-i)%PjI!gUkABC}<@O#g{dW;1De=;-r20=orWJxtk_iRkWxl2))%{n11z&A~ z1s?_rF7o>4Y<&WQkuE-(yl3fd&J5h1b_S*jsnq;(>BFNhX{bRgKQ)bzqP}1kS5gUd zxVksg7oJYQ;^qvMKgQH@0&H_8E!MNqp1e8X%N>1TDy~h$8Xr7=l*J_-Wr1FIlUhrX zJ}mLEk_h2k+R_~TEIi36ku$}zopC^s8VB+>c|fg*=hU=bJkoUE-+oLh zV>iw)X|@sOCBG z!o5FvJll~X;}@|XV$_Gx#%7=fp~ZuX)c_~nZkk`9GH*8Se$Z*t(lwlR(=pN36Vo!$ zgQ#LpttIhnHUepF4w3; zyWUj*voAFh~oB+q{^XuVgkktE^%&t-sCYEfXAVEW@gM1%_@8xpGx`ReQH{5 z^0`Vp0I>m^jSb78SFUzn&XI@id@p_2;{Pb`YRLcJEV0gCnErg#W7heK^yfc$$U6T{ z`uP>N+y8l`J3l=0@0&-h`#)cm_WZ2J?e^ECJ%7iO_W4)SpMT0a-|zLb=i^UX=c8|= zJ)irWb^eLcY=IX}8r)93HBm$Kyh4+JkA zt@xkdr7y37E8@SKFXO{uY4Oroc+&q8FMUr4Z?d<18BOG;K(8CeO|LsJe6pW?+W-6% z@bY;ihu6j6+Mg_WWaqd@w_uD#J886z=_75qr+n0+5+=#Jl(tjzP5fHE5B>Atjj>M_ zmp&mK7R2v$%&vfbJc{d}JR+j+22L)is1jYd8QJE2; zIbP+NcmQW%t3p_8xOZ|$EDB5cV}#r|P(H6qBA|^|ajAma`k8XyXRfcBnQ1dW!pJI_RBW~rn)mW4OWLHOAYwB^IYb8X1k z8hcZzuCy0+b+<<-}L3~7A zV(YXQnCFxrKzyHIcj`e{c}Bv8hV)ln_-@@?FMREsdFZkWNcKl*l5^l8+@!Mu2)-T< zC&ZQV5EU(3E!$xW_F&lg zOhS^~`QV8UvugVGRyBS7v12%~f3k1A_DQ$Cwhu;YBYfAsH*79_o($U^VvlbaBVN`6gd(O6C z#Ao7M;#?a>Oeuh9G$vfgd|pMP@h6b}NRA;%0kZ&-T&?s;z6D3_0Y;q1mO9#0bFjX@ z;(moLCjJFbOR@;z%6n&#O%-4fNx+|~f2;ZZ{{de3AMetS(kNcI^HP!A;Rbl&73W%V zYeZoqc;TdVCw#zoVXGOJoh&@xpAL4}Y2CDBb~+%u@cC!{m+`_$lWc$S!jBKNK?lzE zEoqu!?6>di|OFtg)e;j{~RxzG@OL^GG^+4@WQGk zm!sGi@WKV1+>x6(C1vFH883Xu=^ngr>03#7;n`0Kcuu8T*(bcPlK&%Nqt1setdvRk zzo|@ys7!|ZQg*#cG|9spP0}B`kE^m3Lof_tP7+C>capl-M8c_ktG5H7qhiW-C$I~ z1l|4NUQ5vVxwFoO>u+HDns z`Fm0po}*3$y`RMI1e|tx4D_axrGb2xcmqLd1whQsz}a2J;Qmncc?$gN7x3@T7&@=o zWY2O7Vp?f){hS7HU6m0HOOOID5sZgo6N8OQ2RD!-=^o%BhLLrHlc7z%J5E=IQ^sj- zGU_&RL*jO>q)d4-T}UCBkW_rVGhB8yq+iE5B4r#dHqXHytjE1jv^(< zUU8{&7XnQ1!KnfJt=UpO{*Vf{EWw)giDNJH#$&+}-wi4gFeFfusvW#9(`^9n8>*f` zysyevg{rWeE?y}1wq(VruT73CQc$}7=##wFlls%iSDm&!7Z+@aqIi3E^naL?GWs{! zQSpg86z&&wX9V|qy))Jd_j|)BU`?va7WB9NQ3d@af*vDYSfyVM4Qm!AIg+iv;xno6 z*i&im|i+0lN_v?!HZ@=FV zf4jH-CBI(-qxjnX`~7}t@uPFmPMY^ybmIQKpVdFtXx(eC{d4LC0b;3-gv%?NMu>2~ zg_)5)uw)}0yH778E@vRKDG;dK(PC)r~{1j&u|mFrjK1oW{5_3QMZg@aa2E)3{Hdul%- zjpxbw*q$h8+;e-y_jy_2PIFl+IaE;Ltf*yC7#~wiG4`9>6-Q|~S(E;PQ4m&B6r=#)9?8c?ln|Z@Rf;U*w^yy zOEaMrdavEo#(Gus#<{!s zirv*Q;?X`+afnU`0j=9t;CVD%>mF{4isKtm z)16i$IaRe$ACJ*vb#uf(B-b>jSqBz9BDM@i=8H^>Y0zPgNhq*$EMVdL>j!E|uC>G$rcH;%Y$ zm&ctO??2OSt_zx@?IQds*cd7zBGrnG0Q#2L0G6(>{DG|REe~L2Ho~z&+D{mj6OB=L zh}_akA z8(xQ@)Qd}cUxf~f9APZ~Q-i+Ta1Z)&6#C+b5j-~+U1jiNAbz?pyp~Bl!|n0xKibc3 zjb|s;8P)e=YZfofZ{-NI+^K&Q8SGSN53fnwPyewK{{VFhAqk_L1+#-xeb%xe&9Vxu zH%DMZ4x-{(pfq5MJi=RzGcE?(BJ3Mq@&j6SyTn@ejUD@+2Ty}3`CCBSm}o=(;0!^c zEB{jg?E6}WzpweV1*=E-B7fi+y(}+*HFO{f+xd)T)jNQ4Vdb*ywj>&gM`7OezqZgC z^mYhq5Mn|skryz%ij9)vxm`#}S)bZJJN~0wzs843>8HzsQ13eV&6D_vwFH^m9WS#p z5YN>x0TQi&?{?m2jBmrMHM^Qm8RvfrUX%PA1DUVZZ zDzdlnZphL=LI)&>3KAu<2r6L_A_3BnKsR)=2na4Lno-el1G*s!NH87s=1!~VxG&>6 z?#sAfbWjse64ajtbOhX3T)1tk;4)#S|Lp#)$_Yx z|Ii)g_g?ib=614qT-$Y;^YVjy2LTf z#C1$nG9MB>9vx4{x2>M(L7C!yFS^G)mOvzw*W9F4;dj4U!%4#~YtVx;!#Hb&$SxAI z2LGyQ|RVPrB9P9=1?!I?w^9k%P{8?beUD{TDHnC-L?nKgm5>w04A?>k zj0U`(I!>oh#w<|iWgG2YHh%ejra`;;rzX>`l4S4uppZYGx3c6;%5NhY^aca>(?d`sx^Jd$Ar;%T!j_y>srxog_!-_f9B2*{z z4Zwhl3w!5eq;igYHLEL5%IfNhJ|!SE-W7-pVxfvG7wX%0B;Tqd zN(-8pOO`3UDt;ddIHGNMG{3+-;!AgxaG{Fh|J2MVYcTM++@kX*{Hz5BB+(X@v`3wuOj+3_1+`)@Y<;3*W3|)8 z-Lxw8#Z3!$E17iXaA9LK1a}WV2CAAuC!mgjvDXm&6YAgwl-(eQJNyG|(F#G}DvT}qe*L&fF^*YyT z-=3@oI*H%On|ly-?Jb*#wdQoVGrHzfm%xHlzAVZJ_4GPF)Ly|2DYlcN4~+rAW;54d zD6p#rLPchTVDYYX#p;29$@eXkcKu%g0AZB91!ssEJ|*du{PaON)l+j^75g$!I1|q< z)H_?TPdtLb7#X3q;t^ZJ8-#KD-M#u_PQhbh8@L)7jf7a(w}TE{~R)4P=9?$@2WA!(n zk^lFp_ZEKWzHTJnJL|aQ=-U0}qqFnHqpbs4LY)H6?+FH4uA)NKJ-u3?bEOU9l;kk0EAtZ&OToIp z{5VuwaS~+f1^l9r@d50ZomzUQZ$#>DGcaRGze#8SJdGY6Z|mW8=O%K6yNcPrG^$Gr z)JwKB}pcX*>(sO`u{Piyc2%YDpE_)q9` z^y>o*%|r>f+Gwe;4hRVId~{>|K>pLqBKVxpc*x+#qMuyoQ$8=kK?(}y8~Ho69y&IF z+nLDZiKCRI_R zoX~*U5}{74A@LM%6W7Ml_@gcrmNp2fQ0fq3q0|ry0f>cwDHg`)y`@-q>TLG5MX@lI z1hb2UxeyEG5DUe>Q!GqCLpT~0WO+wtrdfV2ic zJvy16DJx1FwJE<+Rx}#2LQ>ZzEAADP*s1+9=b%uG?y5R4O!PgnP-O5ix9bY+yfd3| zTHJ5~-A4eAJA4V65nXpz@gR71{}TKvx?-&7&HX@KzX@m845lry<8Z7Y?mb`d7#XY# z6h|bTPuW7Hw~+M5K{hzbQ7S&cS70-fuNo8hYCf))d<7Bp20j>kRh!6H_cfWs&E0iY zOMLYL8;~qi!?%Jhe1%)!Bo_Kqm?XKs%>1 z)FSKrNFe<;Sm#uX$&AVZ>3N=z;2joHCGY62Jb8R&NFYYAPfu*RaP0ChC{#C#3?Kh* zlc3qpPiuxlERE9}cSC>HN)EYz>qW^S)5Y6Dtygy-h>?Rh>oLkRza*$@wQGMOsB2pU zwG;Pnk@#))L0$BPy|_Kaa$I}7;IKP?wfek&YGR+=RqOa*wX_Bxg(|9zvQ8~_0|tOS z_N~y_WB5eL9_}#tNdN&$7V&nNHV03MR^kJWrDoV!Zff77e{{eGFpH_=$}KxuA;YzXX$v<*`1C+f`@;R zBq0p7DI`gYFl71t6c`pmg3oDIg7cW<5yG&u$4`?qH$F#CiXUWV%8hQi^@8cvi>6zH zO>3^k5W(Fr-C8ZW(zCl%m~AXif*k~CQdYdDtpBNIL^siRS^~JGoAvnY<>K*{iRP~Q1Q!LIJ1n&_MEkWH&P{m}-&>291pkI%zgT#g zD42T$(~5jN530H(148wEida!HLexnZ11yySOLKErD6&~grGV3n!@-8Of*r;%rSYb5 zGW{ouh)+*$frw#B8IpqRj@1%bJ=Bh7TJdr4cPLuZXqqTpaFvDDQuWGCo=70QskJlI zQ5~IEQmA>{qu*&geo*W2rnRwYmxa|L@%R?8x;9Z{dX*WlHY}``D18!FAuWUTv!@AG zu16jc{C0w2c-%^CGOYDsImKt_z2nO7fk}zNCCOws8YiF`6bfA)yMZ3n9&HYiIMLN; z4d4=36X4OYw%~gcYaC5;SnEk~8W|jjNMVI?l3HY(A+NggN7R#)lD7jtVM?Ao1|o|G zEZXe&cX`yP`#FkJs z78;=M%5Bz8$r{rJ8%>pSYl_oaT6AfJFaJaWF23 z7hZ!W29)oya27g_5(YXh7qIE9>N@UhBpyT=o=;hQS+!7OGi^Pr3ncb1xH@_O&Di{% zHvb0kBhuDc1|Ulseb8N0ZeH~mns|N{e92P9~D2o;ozD(NpPMq zQI`9|_!juAN)}w*soj=lnp72Nh&97$6bXNUSaLLITX!V5C%EKDKwmxXJ|P{r3`k>fC4n9r~{`^q*X_?AChS2oQ>>$$x!kjiFE zo3pP(iQs_CS5}(5*dI-#Ie)75=u3Tf)nwvAbxN(tkeC*<<}_X>v?h_7DB$vJoeqv` zf$-r+&;oS}lqNP<(yW62Z946d%vJFDt{7Hq!inUaDt2#osjTgdg zsaQiZTSSV}M$P?=Z4GUV-6l>CifgxMi=5yMF;xHvzKhP}50SwiRp}zM^JqiuZsjlB z{&!a~`H5@BLUy46A1Gh_RR*;8?J!4~JIgCkVnLhsZ1hC*+k$qB_Mq@5<6Kmh_`_1W z$Xsf3y=TDNICPlMw&`tbm@Q3I+e1xcC!%_st-lY9Z3)%q;clt6|0KYBIiz^0zOXLE z`JsUCL>qed0KN5z=-vLUh2AmZIW3}hO>^j_>sk7kN)+rDH}8A4FHwkIwiHlD!s$UD z(`y2}^{(h!n1vMZ*5FGC-j5CN9@2irkzcV#0p1>Z_h}a1FeVASm3EQm^SVnJ?v7=&cPXYqhG_ZkRE}zXqZITA(uDTxcRmzg5p2!3n2zLR5YZE~@Q*VdMDZsXYz5y~;-vH?)M5sODfV>OmU{M<4n$mJ!XT+ygF$#fA z*oxiYQ{W$CXcTA|r48vT^XJ1VAB0G#imO097!+B&vJmH_!-XDij3FCTu37tTFh<|IbdX>%tSbqO!Jg{V>-~o5|YxJFY-3I!+N|7r%6thn8{a5@L zP)~&~nBtpkF7hu15L}Vrw`{eD@@p{%V-Y2E84s_nLCeV>>>* zaS>yKp;FMoCnS!JMrqE`Il;C7A7Y8Pcu9fwxGg3Xa~~Ml60~RFR;(KYh|iIa$TL99 zDq^d?5g3LPUz8^o^+Jkk`RxRLzxmR9NVZQr#F{Ek4Z07Pw3OmUg5o>%)`;T$BMyt= zXGxkw6#JE{Y^KDKAsF$fdbplP?!jO#vCR?&`S#tnt^MyILxig2i1fYk113-(vY92se zxdeb7{oH&=wo5$Ze*>Vi^wtQV*NYAdAciab7XZ|Z8F2L(rWud~6Yh4xJY8nwon?f| zh1}!TDCFK-{ql>E*7v4ikK2#$%q|4p9>p?X+M#&c84PG5>+#*t{ut zx@igyGfcs}Pkzf3j8)t0!1DtJL)+}Y6_}{Q+kq_MVz&c3ZZ@f!dr={&+T2b|A@7oQ zV4I(%9oUm!MTT$KWZs{By13s$vD_lp?ZAJe0mz@@CQIDe;vbFrA4c#MY(X3tB}81J z33#RZLM3;1bld- zMXwC;d^^34+yp#FZ-*#;a|p-L0*c+&y__oh{zDUx#vCi?TE<)@J_(^VSHfY1yTG*M zc%GYX$+6@TExBmk{%4(3BFdK(s*6pcq>k)`Xc5mc9m)>;77{KYAv@qc5D zz5b&VhC02si1H~{qdw0QumhzreqruC5Q zl>?gxz>%BeX?kk}z+BN<3jlCmr=&`i|G*@NeYC`~k3vF}C{mP^Z!pQ1{rP~zk%d+o z_R%?qu&wumVH|z_!Qmls5g+u}jIBNC14!~GHh=;Rq6^)}qR|pdCTyJ$` zN>WE)9I?V#v-`EWeZ*6Im^YSpioRAJKv>y)M$%k51>aiRY@ykPiy<;Q4<2iqv#rY} z!(MVRa2SrZbD&}w!+PyO7ChJlEmLIc@`DA5w3Fw9dk|9Zs@&?1!|lEfaqo+|`0yn8 zP=wbWhpfdM{Nh(zn^qOVFA#p1>rqP)5FosA2tG^*KzyfBQi|~DBOcoVd=gA625ZQ0 z02z~f#6G#^O{*awh4iu&>84c)w%%92e;~dbwc8S7LzEeYqadcxwvxAM=_Lmc4Ezq( zPww!Iz_|=#0cqVg%mQdY2)Noh+ZKgM;Vv|n?0bFBerO^n*V(@XNl?`qcj+_vsKyR# z(gR-Ta*K|~ub9~jtfsQpo|Zhb8+nnkg?=~Be$-~+o}VQGo42ktVhGjoxB7uNFUyajHhp<6lSQ*1;~pK zF^*wwvss}sEPBJax~^$=Jer9Q7QAieCmH?|CUY40ez2F0?|A~>^~gFkJ#Gvu4@9oO z3|}j~ZiH2Fg4fO89F{+R&m>cB?|v;|`6ApZpgT#n-_?TcAB@(Z|}swJGYo+~!S-g-N`*Um5#vJjgyuCvEfj z%1QdU;v^j(h_QhhmGUpa!-hS#!`Oq3!!5xVYz{1sud~3izfVhG`KtkzsV&I4E{zF* zK}f|GE&Oi*m{RKr*-wfmSaMFL>7@YXe=XS7H&}vguy|$*pmARp`L75z3NBi-mf5&W zNG_2Z6B+K&`@33=>j2wwrJVg3~0?Ew4TQw z-GHpyrbGBCWDi8WxSj^&8`x!s&VH`mocQdHNnL^gc`U9@Ixonohk!jvwQDA_dpaT6 za{{n|_Ga1ITir_zF|x|lpTFV+w&|D45_K1%VqkU%rXzyr$98gt`c#W53dqk>9o62P zf(;dWo$fnVi;M{U`OK6{sJBpe5G5BD4Ro(u=Z)l!;RDLDs=dzj@ofd`yp=;8v8$1` z*{O27Gj`3-ZlrfkUw4uF)VfgKHOCjMi_KwkDr(JC?sG26#tkU1?5`;A(myyxlmm&4 z#09WE%ey*a1*p2j!T?@%#S@rZ@w<0eZo9>c96==A)oa^6+8tNwSnomHf@6zsuPfMq zbk)DE21&-RwMhJY&!kzu&= zsP>}POl&h<@d&ojE5kei+m4a)jQ#r9DXATB^MUeJ0LRXBY{KZ^I&6 zf=NMo27;ksEfOSQ&QfG}q0wFN!Tl$tfaJPMS)6bUYcNz@j5{D~5b9*lgUQ=TdH7lI zToe%zFglJ8aE4A~q2;zjQEQZsDcDdXK=cwue$g#*;edJ_yd?Nj+QA|Lo?7;S-6~64 z?sYcAw{nAhm?O3bN0AEflmk4i?ck}6&0?7(b+Q4TT7qX>#nk{$Ne!BE#D?R7g4)Wf z0iM&u3aJ?2xsl)zzk7#ee^3tabf$cKbUjQSKu6p_=+pu_wGuixZ(Gm_<|jhOUBz+v zBBg-OOaY(E(2aSJH-OKnQBem0eE!NcK#%e^=qcx*Y6<4lfL3`A9a_v$^fZ;^rxm-a zB77gu%6C`E422!qwhpWl$gG~KMffqg9DfMJ!Fb@!zOrc+5NEGR24dfofQ1Aw25eyb zmkCBAyEA(9w+A4998ckam*KS(FXmAE1FuzhZO1ERean1xGgHo?}|SJcGDLcush|$7GM`UTU%aE%+w3aU|>*cT)Y{e8GV8d8b+)!w-cC&@-3?` z^E;}S=iEpa2c4=m@fUS!K6weG9#LnJ`r#825gnTBica7G|cX30b)4bG!FvU-e*>royDjtc!+*+sg}!@j>z zdk`Paf^~T7@VZMInnrhW1}CGqL8z0^EYXt;yud)JgSArn+tQF2fh>Xsw9$!?k zx39bECOk2WvkbQ4ew=d);xnI>u8+GTKW(RYp zhz<@wk*NMM%D3u1j)&u%QdF_8Z)grkav_{Y#i)@OTjGt3$*H_H%ZWKyD@b-4Dwz3| zpS3AGit>~qL^CirgfqB82!J|Xh3FmNAsWCR{qjyfI2}q|^h&75ihcb;eesZc6Not8 z=wrpI{wHGA9HD`FMXJiZrdsCl!WKBURP5~+n#3u&oKKTB8{mq%9qF+1*vtFBgZ(C= z>|$?NG?;iiC&?aV_ahuM$d+y-idVi{xvrJBYzm&_?~Ih646%C)*|ZS9*5X1R{%5?_ z2)rn3Io1^UIt?c-V|`-idtYQpx+74=(`a`?(x$sIL)dP`arK8{MN%tg<2}2)4_%J6 z(?5I>1KHN-TBR4r5-lL2)zeu%f&AuPNj3@wFcIN%@DrF|8|q@Pp@*Wz*mth7#y+K6 z;@E>@3O>`@uP0R33#cAnJ-SO#q5CET{$Ue)2aVE>7f1%h`c^V13YFOyR1RXeC_ln{ z48c_H>-hF1GS)Jav5es?!B0`H0}9rOn}Z06TNgSBRqu6UMh416N8$@}{U^3ZlKK5f z+#&gWIH{Aw?_2l?ImS@CSQq_mf~C}is2OP^1SGH5;+bK{<-NGqR~E2%{n39)QbMk! zySkE;IR&*9t2zkCy2A|5joywwe+aj~b)~`Ww>PA4`)A~KN!x_69gDF+2E<-BF_1m+ zI3c9WLUDE@X_^oMm%(f_j3i_!&`cueP*fm>47LS1MW-#xEjk6V5bRJr`k1uFqBiau zKEelYWHE|qO~d)aSL}_``}!uoL{TrGNV~F(CPJNr2(I8|2rNhyj#9??w^fX8whGWDKaTcp_uY3eyuR zE3XS~BE#zX_$Trp?Y9(tylAoHP3&!?@a8|rn;Ue4#t(yriuM6qNU8pbU_L+17+ur$ ztg*PSx{KhxXrUPEAD~+&UuJMyuXj?o&D5>8y=u+H?xPdu!d>+Whmc^dT@KRD*UdF> z7VD%+&f1j7S==o!Ig6S`=d4ZIW-R>3S$+7W8rnodGIx&7S)3PlxClQ*XX6je!9jT9 zO^olc==kMIosO353JnKuBrk-?AC3^_tY5G(Rog z;>!4t^e0ExHvMM19rdvQKv@NiI1= zBNNGg)g`T5MVUO|%rrF1K>2J$(-?#g?g%KqO1rHC?M|6^|37c)S7(+GW+ zZ1OSw=tiiWTP*!GjrwZ_m;?Ij6B>{>J44IaVi0E5izb3{S9eS#OmJ$!XXqDuquZs^ z`N;FdBMp^?m_oxYy=J=P_v3Va$Gs?^YBx<|=>_YI7KHo5jN--aO3xD80OVxjarL3SDPO?p7SNtJ%;++>7{C)YGE%JA= zxA13#sYoy; z&u-t9LkHPY$6B)Q5HBLE(S}5w`5lN=k9bE;LzOvq71toq_XX_r<(|b~V!cP_hRr_w$7cq6#h){$ zD!0s?#9m^(Cmt}H5BRfqfWcRBe9}$D6Q@ePnrZ0Ks~sHg|h9d5m3 zx9U)WNHA2=@{VyUCPRH~F;t^A6$U36>O;v;Sl-38Tc+vySQ??*@l%vR#$>MGhhQ!y zW5TBTP5w&qAELCo@E@9n--`mXh6fQ^g~~`f;Y$qj>TkSF`WSa^gw=NsZ-v!&H^0X;pFBmNOu8AlO%v^nKUk5tt7v7D!c5hT zg{2*cjw}M~5(vKKNqsz~uknQ6^fd}Q5T3=S5r(FBuXvMK!ha?p{IW%{B?&{gDxlK#gV zGfBz>|KpXE7I*wn(qiPfhP23iIYn9+>&9fe@*YIHz*J5fG1$~>sNdmKtlcG92q{EOcxeN?B=0ukfb4<`{ulm7 zVSvgquT8q9ln%(EWPbn7ZhWd64C8a&M?#!&zbS>kg+CHIKD0N%-(sEX!BzoOE#~&- zN6op-{Ut4lzf=8@&!QdO$b7>mnfm_^e`GoZS<+rXv;Ig{f}>jbl6Xw;quud{#f|$~ z3vP@~74-W9bamZygZu7$A%*))UENym5>#^T#iC2LeXgoT4#Dn^bXQg2E2?Xnitf(cll0+fK&^(=X{cOLE%@{8INzE*-CPn=}ar;iu?y{2{wtNt!-`53w8R zrX0#naQT%;;(-tAB(}LK`yQdIa*)n)yAd50d#^diWJmHG*LZ1o(V2M_UT5O90QswO<>Zj+yu%&V>6QSQ~pb-YWJP*Ea~2#@TO^5bH9p zi+Z|aL&fS095Lg5ZrE$Aic(l+sdhXsb^dM0YNV%A3uK-trt%R1qH$#0M6 zyALHLFcv{UjOS=|>d_oefiktg_CRz0#W>Fgg-=kF=PbM?ZV=Ea+iAQ-6wyG{db?HtnCFpX+-9a2o@4{m3W1b@jQoXNbZu=!3 zd&kN*vad(fV5Y08DR_q8xl0tk!9KC1c(7e@#i6#r5y<09fJXn$2mPN7i0!LAJ3Di9X#C2i~8)LS7J4Z`Q+Gf8Y=6*dFxBb$`D7( zPy#LPkCZ;)j|3Xu@Ns1A)7-;Pj?e%ZIe*gTlQUa~*Dac9XzpOHNLv6+T zB?&Ml#8W|DMOjZqCdM>q&)l7ybKHQl0AzI>SwKUiX9kqFwGJzp_q$a@tD5`i3F`+F zU%d=`1!<%dZ3~JlL*sdD|#x6q@dmF|+{q7f-2RpSF8wAD{+-Figd*gxR8J_r(^gnC;B{<4zsw@$~OeCElrCV3AO^$sZY z%wf6-8;KreGmg)VWy{9Jm7!0-3gc|ud2W9)q3A~wrMN?ARhG9u8X7(%E^H3VbZCqE z*+)>c_``c7C5YyMqQ#cb?6ILaIqNIArlXZLUC&-V-kWwM zPGpEZ?ScMu6gxuai8pzU;ByckwGi6#YI1NOL65O%m3wkRcgJP`aypUwyo6>2k)!*e z!R01Gm=zfGLhEzI+mV{%ZDgRF%MYlM?1={&f?Y+Uo*t#|qgB+x$8TEoUHjtE!F<>M zB>1rU;+>`9jzm7gsXhV$S&Z;UwYc4>vigat=4AD)JEW|>^c}%Reebr=dh_07c>Gso z_3W1f7p*{oj*!(Z_5|^tcUe8iPU%5{tR8bf@XLQDt3B3pa&OfwrdXp7w&2-8?qj zLLYpo$@06mPuYv;-RjZZ{AE*IPh*0wq)2 zIuM$jGMU1>A(oCm1+^l}0Q>9JX%x;lOyGFrNZ?4o1zAsI$aR9>`GHs29er5H7;jgA z<1crZMDDh$iIX<4IfYoaGp%s1yK)y=_VOegCpcandlOLSxk}Z!I8*Qk95Dkm9#C=8 zeC66nzPfMHJ#T?`96qr-&=&8a>G-S0*S@rD#fBlvbkD!Kf_8x}n6ce1$-PFxQ^Z zo%quID#)i+U@_ z|H$$+m3)9O{V=2M^oH-nTVC`yU=c|xZYo)u(+WRHW6!T(|9cvC%L0uh$|3DOr&%6o>U1jAngxQsJJ~09)J@sQ;Z80)GY(YN?*v5)Y`$P01 zbPUFfcNjBtL8u)PX7XV(Bft^#ZLN;S>LbIWOwiX-!B%k$)Z>a5_w&T-0TI$L500X( zsFDhSAH5HcDp6;n#nqnOYXlkp>{ntWBXJY$f-$KcHu+ASZVRN@3`? z_ryPlcE$%>QsQt#CgS*>cilI2#5XX-ed=To{F*K#wpV$#q_A#5m0z9R+Z*Y0CcG>k zS;Q8Pe?SnsZozVp+K1oQkk&Do4TYt4jU@JaB@h?`*O1oSL;|UCdZa^hz5_8Vwl2s5 zIJ^vo095?6RDz?db3IT&lKYg+q&U{&HL)T=giu#Wn;2`c zBv-FCievFYn!ks$y?u=oF?qMW^kjb1l#qP;gG@zhMYyAC)l4eve=IF`#TG@S<&CFYtGqsa~R9 zmFB7YvAcWa-T(}d$6NC_i^2Ckv(QljVWO!i|KF@(x zv9kaQBYQayG5z5=cyF^wa4#>ZqB|%G;SYW*tqmyu3aD4R{C)O#>$EfozcRepkrq(i z*S?A{VSMdtZN%KxBmCkQ?_(9-lX+U$X)AR3<5jVI{Y!^U;;}v?O&5X?JQhoSgL=x5 ziFw{a^kz9O2`H#r5Ky)Sl<#0;*GBK(Mi-uEl_ zqF(0qP#3N3&HFGB+d~F{|CrkbVmAugt$6AuW~x zcVHsiFL1#uLm6uSv7{ZC9lL*N?ZEBGbSP@4U55=v+qu(v z$6ks(s0~HOaEgg5_IEvhuG#*KiK`Ry3L6%bfu_BcTB*G1K#=p;AAD?wr@Go=C4syV zbpd*KEqd628dB*rLh+BVgj*{fV->{lhc2YpgW^NAZ(dF9Tto2hvD>tJ-+;gTeq745 zlhpII#e4~R8U34>+&?c4^mSGHTf4&RaH^|w6VJsS>s6=dG;|5aQPu#ZWPs~QV+NB6 z)ew9=_PFL|U;e=qq%XCP`r-X+WI@Qo*b6E72qIoN4=M}Rp}%ag3#Xb6b7h2118?Nu zkji05-9$7q&N-<^;0ml4Y6M(!NUZG@2oi}OM<1OUgkiSS- zgO;-I{hmgp<(~@WjdHKV5VY?OVomK{c>n_ZxW^aLl!NsCR}>A%vzjvu=bAW!A=zF= zW~zSDH;lXd%z(0k)oO8UW+{(d#<8UAt5?ZtU0>2#kVP)-?P->;y#mE%xEYfIn6UMN z(;~U&o#BtnafRB-R5UXlZxf{NXZ5$vjj>ufReS^8`*-A zC$kw)vNpMQpk9OKMTewcVRq~?@y+S@2K3xfZP9alESa7l;*xxqb`M;1czY1^eD5)X zo>eG~%V&}bkmk)Ko4$k{LBBdM`g4Lzv)0EFe}dW~rq_?kz&fcM(R}}sbN>Z zcRMTzf!xiKL5v{jRj%M_6ilGW&x0K#O>O9$hAVO6{b8{AXH*3SHhZuS1~%>UE%4a% z5}-Lvyp7>4NO_-Pk<#&95-GcbemD$y(tZ<}%O5o;Icx_hIo714UmX@@cr@LzH}`}@ zR@Mq{gFTgf&Elzhk?$kGvMx|h!Cp93#o#I z7=#gb|JT$w9dr}($a6G&nXTbQP14KOaHPb6GlI`5#!}6zqz#DOk3@jrgY=F=9<`@e z&4FBV1eq`>st+_CV%Zz9DnQE}jh2l;xx;_PGevQKvjHr&K-rAw}2k-_vcq2nQcBt z8O<5<8M3FUQs)>+`eJs?B>jX`)$}Ks5pCF0$k(yYFAvTsQ5OsPc-)U{T#$|92HFJk zfmpz705%#ylwMFaNXQhwcc-rBHKEU0xn`5xv<`iU-H0@tV0@)FGTz9Z%!VxKY@lKY zhA89k@a=bi7EoK~Q`&=Q=T%umtNkVs7}*KHNCZN^Cz#l{Tl>?APVV63+M2mqHe>GK zgz`M=cX}#!I7^g0V$YzmK~HNeVOnGR*j=WE#JC+X#oS-BpEm@F%{@GQa}G9Uj*7#b zAt8q-Q-|1WOs|T>FIZxJ^^#q_%7bb1ulASWL{H}yzq+6p76T0MW!Rt_g_29k9^dkV zSa~|;m*BAXo&Y@fOE{fSu$u`nVqpzS>S|ad$jQff*VU|;f^mm>#1;XqJib_OW5FsM zVC$`mwt~#XhG^kWp)zSKC23-M+*oTKeqwLsjstIo@f>Z!mL~EWyfOGRUO`{5H-&Xc zL-aBT3OpPIHbNPmrgxm7r*MRdU)iUrFVp_xSHTQy_&I|sXj5Uef>Vnt_jU}9#NQ5~ zlTg15JoBat?V_&zw@Xn|WEh%Mey-SlsA3;>a>QAU82K^Y%JMEa*9})=e6hQELT|69 zP&20x(|dZQiIUuVz9LG5D^vqexoD~^Pji%y61_MROIe)dp!K`u0E*my9sK}mm`uxl zVx7k0iCst_UfPJm;qjBm+2P0NN$3?Wtk|0#ItDGlX|g-`Qq+xa@s2I=G&8)FXHr@E ze45OFqy6MnmtpG1V(RD0sb2yw0%qU!Uz&aG#y@8ECw=j|XFu}de=z&n;@>s=xA=oX9tu+?l7E8Fc+_N!TSdH z9&qd1-`O50Qh%24_>`>@q~o`4Bn1C~~ef zMb4wR2bDy9tY2e_oCViQ(8WW=A`vT~4w0j%Is*(5P)~=+?-FbT6Von_{`S9+M{jVSoi$4#!0Om;AXiU-9eYH@NOWat8*aC{B}%i%AX2RFl7Bvj`lGA7CQWq^hNy7T>>9T z`c#GAoU%%OqeUZRNsOj$C-=Ee$FCTa3sEeU@s2?+gDt(vNBGboG~OS{zT?vQZ0{`G z9h>M=*7?Asd>n4wf1`NR3H)goF1_WedAu~ApZntTx$@Rt{Cu1?_(wW}>%<6fRX2R= zRX$~mW>XzH-t81#?JkKSA_3wgcYE6)t(`0H#50ti3Tmf#&h$*v8aKiIr0ZYJj502| zS@{I*Y|5t@y&2Cy*T+b%7#Z#%$}zw&fst$+Ha^~zPotCN(*XBM1Svs0^+^#=NBauv zQHMpH(B*X@q9#K`jRzN_LJZ1MB}pm9visCohLoaVG&jL8x)ffO9>OxI#HFUBLL3en zJfKS|FAfoc%3rr!N~#^9(&!zypoHO>P1@>XxtOevb`xxlSRA;?yUX`>adn3!t~j*y zp)%<$JQDNC{fREFI$@yW6!h2-S3Gq>D)z&?8o~~MBLHNY zS3?T0k+s7VS8E@HxH>n!PNB~a{x+ZD_9$beyUiW;qouerT8jSwx)-lDrPbihpHf<( z0z$Zdf(~VJDV}U?!_(4=+w=N`B$ zWL9hzoifHj)b?tSa2Gv&^Fqg4Txr7rm(PfHxH*J7k$&A7S+n2TM6%j^ zdk^7i#I@~_EByY(rN)XdxEuy40BU=F^r(A94XgzJo=zV$1|iZ67>`$A_7~vEAQtpo3w+k9RX>Iu&kL(Q6OsFdQlMVwYm7{2wscD z2z=e#8`=lCrtQRjlAivTlsY!;A+gl%xyT|~^~NNk-N5km=h2#|S0i1=X~eizzlyU8 zH?cXfQP$k&oZ{%=_S{4CDQWFJ%GCByKIM4~7Hp>v^gA@jwFclApH$9De?jcH6Bf?I zv1jB(#kouRq#N_RV4>CJjh`fT*grb32nf5w)Hq2n?j0hGW!tz1%zj1C z0>Orl6G0HFCT^)JqYLpQx#yimQ&MxkE^zBpN*$j1QWqsslxY+)2EiR3gZCm10llMD zj^fDq+Q|=KE_sxrjh<^COQNSA1p5t|wm?r&t~!B3c7XztLv|V*QYtxQ%PYyW{$9`; ztioyqfNy!V1>c|EI~;rkIcc$goZS~#XLkL z+1rB4?j-dKKR3ASg-4Q5@f(QX4h~VltrxN*xD1OWI9b_Goy%AW09^LXOPu)$ESutn z%3KSTImA|OLfL}-eJ!tp6VzHGj?X27F-m~L2bgRO#xzO@UtLf9>{s?`_4Ami10Zys zX96Mjn)L*NmFy9^8T*T2^cISA7uF}Ze8*KL5OVZ_RTqP>(Ls2yoCBOTM#j5irOtSI zB#GcWdWvk+oBwbU^+=xIpkNEslaki1bza1vle7*}gs64Y7ZWI(nI{q{!AhsxV6oEQ zQ67u)1nVP{E;uo1{9tIMFRnBRm+fgx<{&13BoOX7<8q6GPQ^7?OBx%a(c5lCW#Lrq z;im|&Ymc6wqP5^m@u$i7exz^)xP^_(1UI*^*C1{Ib5uRvg^(9_72m7nS={#R`Z8up z9jKnwrLfUmd09Hb&g!rkUbi*f+j>k+iCXUBrbK7B4m_3d>`+&~n#W^;`EAG@N04nT zf(qtuj1It^5WU@DDtpzdy09`9gL%3j@1t`~1}NAx2AZ*RJfnt%I%CKmErzckt#b|B zxDKGavkQ$yhF4u-(ls~wfdnMNQ}#e|qe&Oy!#Zbq>$ayclf+XIZyOv)&8YQ!FbPYB zio+wUSSEyIx=NJt9Q5;euuC~Q;wzg8c>h9J`UBuXoaD`#^T7c)7#cysJypgBW5cj% zY=>6CZg5n(@XbjKF=5znmiFvr`{J>5t?5o|UMj=jw|CXI7GYDB88QMXA#_>AT7Qiz z8p709>_rb=7AEo*?amspP2vta*(DfS@#0CrQ9gC77YK<@$^&68yWAv9x5ob=VcMCF zdUqAQR_5id$~}k=tR%^d7C`E^(MT^_BWhA3p^4NG;Y)Fwm`5yuV2ZN^@{zABl;d|c zi4|oBe9wMiZ+`f{E;G7i?@#yu#(|{Z?uegh61-4q8S>Gu`3*G#s9%cUv8;TW8@|YS z87|>gfeFJ$VnY+^kjvk)QcV1kj4aB$&tJgVPQ%7_aaY!&8_H^kvAS*PzSa{F%(S$& z1i?|n>nMViVH*fb7@JdBo(JjP4SiCkA-wB-W<~*=Z~Z3DP3)7M|^;ouRR#y6Ha$k6aLpeXLIU!P}iH|?wx+HZl1&4!4Zw) zH&8~O`Oncy42zMV;yB*B@oU90EQ5z(E`X(?3|Wu%3DPN3I1K=lNnRzRevAlm5JVE= zuR0IB60OD`#2-9}%6?CHBY_vR^z>gLAxjY%fn61~^a=c5ga2O;q=;YzQMqG}mQ!OJ zI%Nn9Rt!}LWCVcKdX*^%Sfd9wRHOZ4WGm3Qw03Pt>n?oL0Ak2s6d`chh=n8@!R%me zBg2oq)PQaz``UM<2*-}H6g2@L&fgxQW?LGwz~oR?AV@I!7XCn6#49XqQH~;5XmH&n zR)eR=24ik~{}1zfJC9VMjvz_U$?w$UGF36Ji)8<>PISmp7tiCdauH*bDA8GeVKISs z1tpVXVq{bRC=x63R&GVu4tBSO^@qDLl7+NPWE<9fi`193n1Xt(Gbs)Cb!0M*p9fA! z+o=sOA{y{{bQjNClxZLw(Je7j#jNS*OG1fl!!P=`Yx(W{_%k5$Z?EA)IGJ zT$w@lD0Ruetjc&in63?l<%h2aGQN|me;u-!YGEgiILvQdRM~r?v)dvQ!|1CDA2<<17FmzVIMgLaar%< zagQ%wh~RhxlEbYL!4s)qLY-r9c8z40$K5Z2HiX)NJE=8B4>M?(_V5bC6heg-076$> zY(lHshI&E+kpru8L;>DVFYq30$ua!{$|5*#GmWu&L|gzLG4>%i&F-advB{H>7Ays0 zyM(RLHSR`)b0}n(1<_b0q0!Sj+D=`l(&DV5S#lDOn0zuj? zT86|}Z&{}mUgx{z$!hdy)fZvskAW7%Eu){U`m7>e_DD}0O$f8|1R z;II5TFSX@vGEIxJ1+ZgW;ExcaD_t)sZ`SHKO4<7q|yYyH4)hij^ z4HthYSb*?Y+8^ENDY`=o1Eh|0yWt)7=qSJPOb*?V$O*+?{J{EFJL8l4!!a&?ep&on zsxIwEm4J;Fu*AhM|GCUyKl^`@Z!(FAKc?S2Rv^g&7 zZCr%1;H&fnOcmF3N<)&jx&`3!Xf=u5FUsV+n%Kp;VSKs`z8zouCC(wat9ZCkl>7BK zl?#u)w(IS|2(P>f<_Eg9LT?N2!#U;nj)6vWGeO>KOW+Jf-RpD2beGubTXO##GK!lM zElhTyXxE(Vd)6dOHj9oSOaGGV^TjVr9#qJT}^C_Ai}8KAdfPF2!8UHSraUnG6;YLX`> z%9CCYOIUF=X6bgX@)u*4V&|KjY|YXV|UI!i7C zgN-TnVb8OEYz{BR|3b8S)Y<(!!)E2VZ*X8@AYap+sJNqSrl~7x*=Bmwvj!=ReKxtT zUyS>_W$)2a@kRXZNxMICeyXgk{5CUqbOCBX)_bI|uB^+6*B2fN?d-Fsa$n|rFO1uA z%8z;v*ADpaLHXYc^1oX7U!(kQtNd@5_>WM*oJA`tYxjg|p*OtPazoww$nb_aI*Fj$ zBEw%dK4H_beI1F5*pt8Jup+oO;%^J7-o~d)EQYjph+o_Il~pc^p&C9xl2m9gtTnW6 zurd-(9MfMqbqXZDMbn9(=|qIF!^(E<^(l7J3IgC!IleNGRry>}HqD|eZ2m;b7Jll! zo=_x(y>(xau-zwlc7N<~eypsn+@2ZiTF|7&SK8^jw(w`rcNap;GUtz#1pcqmckXOE zea|sIfxgeZbvXJyD1J?(uiQYmmcq&G=a#sxn z4FgIDFdhpSmjb_~IYbBk*Ks@(IGzn0x5BKWDl2f@-i~AVW!33Akgwycn?TOC0r_|U z+2AKTz5f_IPc-qoXQrLr-x;4k?-6gdK<@zY++X|(dOsuZEK;sgR1B#B7Xba%V3vs0 zc=k_ku<$_w zZ#_?^G82L+mBVRC z-R#G{p)?C>(U!5McdeGYuB%jbS{N()kCjG5Nuihe`H8Dzgs5Q-C z2i6$PfJj~C@N69TKH7^J9QbeCK@R)?UrG*ihxg)rA{R!##aAt`pP$umBEw7cXAbo% z;pP^VOa4wz$5GK=*|=ejyTjRR*fPlvO*g04;=3qDm*{Vo_P3~)$mAcM$Ce#h7*O-` zVWT3ONfuDt$vq@jkt=i|*sGJT^{irjlZJcZ@M*pdR>R6+b9_=UT^DB|($*bZ%2P7n zn(-s|5K(PmeH-|<4b-yie?1(NA#x8rTcWO>H zJr{4&$ymj$H?c~w7UzlkZI*l*X~a_qdbz6}CH9a)Tw3r0A}esf&9B&j<9-$whr)F# zoWY2n7L+PjCkf>av!Wk~{QyYF?A`Pg>7CW_OhwAc!f#ByJpO zrlEHbj%fIs#8%;H6?D1$5IVO73dcmX57ynMg8^M5jd36qKY-5Mi{rW+>wk2X37$wa z-KAZB=x6cRO^>FqL8o=!r>=9fG-*=S*cNH{6$x*U%dcep7 z?EovRTsec>QI39tKlT|+tPeq-m|w+~=@=0YqtD;Hcyd6!kn@Ml)GTyY?56$&Ut>2_ z2R{lU;@Y}yV>MY2m*^o=9LLg&xU=}6Gr6EEtjWy+x zc>M4pJl^JVG^tKC(7!!I%r`>t{3ryEAmXJr;oJ8Fk%Dh05D2y3tp0L;{s23R^DId` zY|deeC?8#3gf4&U!|C;+uL93a2~Y~o5nWwKFR3XJkR51AgwP^G8f??9fnkK+fGH8P z!=3|;m zvM|~YJs5lT_fPy3Iq@m}J`uklCUb#4nHKW}F9qWrhS!2;3j)nWjWrvOB~s{oi@#=^ zVN9}(6me}bYPQE>lC5rsZvbo+t4`vWrGLRSC`b>E2(C(;?Eiokbc%rqC?O5|GTHt; zXv!xf>?CeJERZx8oS<1;*Mn;qC32Tvd+#SNjj7A+TxO_SnH>9$srzL znZzZOsubm>dc2+=boEHFo5VclR2$6m_t;C4dG2V2d6d{4zn^)EBw$#53uHb~K3V9# zZQ8@|02#WEW~T^r#zbho7%2U*J%3i7*JUU_Y+g9`2g)wW!k$$xmm_##z z!uk;6cK?ll9_UIAd?t|t@BjS-rTPK~o@pm2(%OVBnB3YTD78?OA$8OPd!i($tbdct zuW&Bu^~SSw`#FS7cAU2&jyg0FpsHb+;LuExK_U94H27^E|mI zE6Lf-t>P4W3-n30m!AMXHES<(E2Cuuy2E$jcgg!tiz{u~F^Tv8&fmHC5ccv61eWRH zU5WN`JSgmCoTP>8ny3I$$d3I*{59kmp47HWmfJPoLoj|@d(_vzw5R$?&B z;rX~Lw*2=)I3M=`!rkznFyq|eQFtp&Id|3R;yrBg9vEA+H$KUp>7=+EOA141u*9zj zX0c|_X20m`o&O{D^501Q1YMpqpNuNBq|1$irMpaDCmb+s8gp8yKwf zGnVvPH-tvo!Vf&A;Q&-=IS`nJeJt^X4My#pDt!AM>17nlh`nJU%#@!~|4{q*DuesC zY3B@VPV=YDOV#{To<$IGDfaOVVME2kK5j<0KOTGe_fIspL^08{k1g^f+DCG+^T*i7 z=UDtSbU=!>rrImOo|R!AhrSVPlwu!WUWsegBrwN+LW`>;EodKGv}o4<@`u>RLkdWM z7VP7prbfk~FVY#6Vjo|09mw#8P6pjDelEo@-UT0{!NN?oh^aJ;@7YGfIAuK`_~Spa zj~7cF84>ELWgW>4LW@fV^>2<#zPvn@OQ;IDqBV@SWrp#_*%Qj9$y``YSZ*-RQ?XZ@ zVVu9l9{T-^!+Z=d4l{UCjN-^%fm7iS+Ds`)4M@Hov{l$}N&F=iTYr>2e5u7@pPZV) zVY)rsb-TcXu!phWm-g^HgQU&b!^;4*ml8Sd(ce$RIg*I9hfN|HhOl>!MMP?us7DYn zuI>C%5b;z4tVX<Y1dhB>h*0o7yd1iuzDqnOHc%_s zgVagJoZ!d+{Ek?Q^gjGu*&;7#8Z8o$+98$;ZNJh2H3Qh9ZE6S8p;RAhDLK3oYQC_96_6Z9tAgBT$f zCFAa!SXMjPdEjmL*FI#uSoCTamYV6`iIJ2={?Q<#k_pb@uFjEjgB3I zOInMLVH<;lL}*1?aWE%#9M+v!$(g{88*ni=4^! zgxEYsekFpjoCjeG#}H3-9Am)UE8*g98~h2o0&v!kDfXxn5k)l!Wto~-`Vyh7G* zui);TZq-qGcZA-a5wsfWmlCPtsj#Z=7#X1mSPI3o*Qlc*V z%@xEsINT!6`41!!XVPyFr++GOo;BJtiIY&2s7111w+8jK&J(;4y=u;Z=FX4&4SWso zsEe`+;@ZP^>B-jb3FXs{wJMnY{qAUkE)r!~vEy0*PR_-GHrt9U+LYd(M4SHrI4g|y zOxjHOJ-}%W;ul>6y=&~DV7QLhv#IzxVYUrldMq8*+5%p&_U3sf7QecJIpEnJSS(qj zX>Ex0G#O6vt~)IDf^`19Y7{B!zMawL&kVDOmUCYc(R4t~E~?nyH%)_6 z3h>R33A{GTXw4)U(*JECQ%EN_id-eK*=9<$xtp+?Hv&4T8ENv&-8xE+$L~oJCE7#i zF`Z9EU9m4_9!Rh_lj@J67#iwV$2wRNGJ#)R!K28uvGBT3Uv})njhLwuP?pQ&UI<0W zz4;!}ve}%`tRKHhtQwYOG-p!uL_O-9 z<&g|xCRPkXojO_kZX=Q$lKh3g6Hl)Kqo|+WTj$lLzv{E_Od_uyUu+@joI;BLZ{D3m zfZvU%ETc7Z{G)#dqB?&9MA6xr$aHU*Oeetd!nrp2CFD5*gFN!R%IWiZIs_hDdoa!q&Z%1m60J2L6wKc)L}+5pQ9%iGN)3$%;o z!p?e)1C!MzkN|PmeD&8vj$PSVImquj8imG>7UwjH99f$b#KO~!G##vT02L|#;-Y*$}`dcsbuS8T;z5yByYT(vShroK2$j9<^sPiU|n69-fl=b!-u zZWv1l+Q*h{Tn=$tuW1blR_n|))|jQeFY<9PSR}{6@|<8=o+#0S3Ym+0yF$nKD0jU% zu#a;>$VwTFia>am9z!vC6t=7t#gLI|!5lM`e$)n^z0ay)E30`%hSv--L7v_9b}6CM zRjwCE0)!C2Ld(#e`IPym{n3!@2@F?}#%~`V^BbnAlv3jmQiTg5e3 zorPtLk+|7KpO}iJn;p;3$73Ie}Lv68^Ll0qwLtSZ2 zDKnBhK9AuqW(iJA3(K@t79lIWsvh(0FDqkk)5QaIf}&p1d$%ozoI$!gC|U!Gj#Gm@ zaGNh z%7>0Vn{A=eF3Le6FJ{UIA;(+A7`m*-{1`F}68P1~-|r)1QNF98$quif_cbK?2FRX6%9fLLZMx=lx>Twv_dEbK=QR4F|K$c;Mg1e zxV6CGlEe<&x=~JL)nd`k;7|Y=hh%=Fk=>#0W(a7Bm0uw6BYETiyk4H_vE5+#i342x z&TXhe70cJpJL!TCe&?ZB7Lq?0tdoU>Z~KCEIO}8`3@h+b>^Pi=qI^In)Hdz1j!sO$ z+Sr%Ik)A8ZpcF!|1LCv7455dZ{3cos(S-9FP>ot1zd~!qtIo*b(JPkh5&h-D7h=`p ztz6v25gOxDzQjf*b}L#}4t3%~NYt4E+@yOToe>!j7A)^vgxW?;+WU9NX+cgSu!J)^ zLeIuv?G2v(eaIm)?D~Q<`c_|Xn%I<^C^zN2+>{HP1J)g(UGy!(s*)WL{qdu5Yp%Ez zl8=#bP)CJYNBpYqbwkHMJecss&{4WFN5uDBPT{6j&BcF$4`<>Hyp#nSkS z3BQdO{qgiB!rDMf<5zXOmv1J!7>socZ;K56_U7e|*eLB)c#p+0#~uC}q&4=cV8-J; zR`iR`#&!v#JOk?G&@S&FUll=S?y9@+RrGHB0nGZIro)VdvduW?su%dHI$At>64dEC zxYW`7rB%kIOwLBX`=YxnDlQVi-#@jP=0npUiyMm4LRX?gEZ|79K(5!IN8pmMP3@1` zPk)tw4`&hZMxXM`cO*=B0Dl9|O}%cgZe+j%-{3SzoLDX$F9>(p$N-(Gfg>(p{ABXQflj1brnC-h4Y$I~G@hD6vxv zHjQLYyh$oEi;Nm#Lm?h@>6P22RAluvfmO%9gO0Al&lbP>ls#VcXmwnt%5A7sH++TF z^5B0**fI{sUe#YFcLLkj#JWSlbw}eN4wi zc76uVG+=mShL$rOCOPT> ziN@n$yHKHA5UN$ zbd&ZMcvoV#v6^>B+>ZJfdgp~rRQWC@U^FIxm6h1*9j5=)(Em)f5n9TRf@3}&$IOTx zNDwSLmiV3D3iYDASNRo+@xqyi8ot{O`C3mXRz8hSn&DCEJq24NgC+X>rcDzd?r97F zW3N^dK^(fuClB_WnqR~!=_fJQ^JM5yc>Q|DMnO#fnZl-G8N!ND6tvzIy&SyAdEy)g zKVj+C|Bt;lkB_Q4|A1$bNivXx8)OU05+ouBYEps_36LQ(g z3{FP4xlT)4x3*ewE!z4Mt71e73Be?wQose2Dxg;Gc(np**pzv{&$;U?2?(|C`^T%F zkej=l<=M_T&w0-GF}#7BuFy$kXHYTzQ3=C7KpOOwH9MIA91tLr6Jg#V1c8nuY^o`{ z3U#RgCGmd38@%vAB%e?5!bvs0gnZiG%G(ek^}RyS<0Wk3$c1R1hayW1k|K6T_>jVk zb%L^#Rk5)Tsgs}#2}8(N6B(U1_cPSv(&{)m`^<^T`x5Q0gv~A`d*c!M%1%)FSMa+t zLeFG`rl4OU^tJTzJ8DXCN`b=*z`h+eUaL)0C_jG|T6=ToYr)wT1}h~`-i<>-DzT}j zT<9XAw&DTWt1PIr!7d_?F?)QH%CEQbm-*!IX5vf7{Vi&yEGrU=yA)yOLNp0t2__A~ z$5EXErDMhT*Ap0dZ|-Z5w|;djd6mRtv7*cbv_uo-Ny2f`)K4(6#>|GDv`r%1x0r<+ zajItFK5+SeSGaSD+!U9h+d-Y&OGlf@9cQmutiqjMakx9YJkN~)K+NlCCxO`qEPpU| z#u^BruJ8j0Oi!)-@LU8}5&cZCPd6&wZN(Yc1u(MRG-u>Mny26N2@IU#mc+BqFv&FR zV`CqkF3Rz0KPKO%1v#)cHBVZiThe$hvdW#{PgCq8^jQfBrT{~a*pCk{LX3t#Yiu~b zP}gAx>o(0~4MiqoSXf6y>|Fz)!qU(NU^2=B0#LHz@enF{UWn<;uvD!NFp;<48!KD> z8D`bZC2j0Zs_PN1l8XqkVE7>rN8KR7!%sC;WuwQlm+90|O=5qIIvTs{V@;wrhYTW5 z2Jt=0QW%R^c?)myU$gbl872^O;7Ic_fxzg2;qMv@f42j?M^iR-s-FNEqpH5CQqe|h zAEe^$P@GiUscO_T3=VKo_W|$wYYJ6Ha#3~=T`yKtYt=TUT5_1Y*9Ca>z1W=WkLBx> zQ02tD8xkWWo_xYUQ%8lE-H=<$p&7dUG5oC*4vP&kXakNOq|>>Z>1MS^GHh!7*IGsW zuZrt`rCBTT(51^Xttf%doBNldF}Di{uuRG*E_!3$SZD$eSJ*F6}VJo zH2i>+8k5DyWV4N6KGkWXlG_K=`jC$E#W`IAw zRP70rWMnW-Nq%Wol6+Ex6)}VG+2x?7UWgX+ z(A-O%rj}}TYPbo0mcL%vMU0iQSoLC)OOmrPg-V*2InrE~oIbFZ@8szn%pSawiGoLb z%1+o87=d7A4)Oi@QY6?&b5u{t?-n?(8|=kn zzn|Y;o6q4!7H%v!F7_yXbN*3r`3WFH74P*QhJVe6({Rh-p9uskm`ZFxn~_y7&fid+ zyP((5skXUkL#JlVOLZWpDgk@d<{$~@(of}d}PLTX^D2M11ewegl$0|0&46u2X*t6S=GFCcl1zm zS%0g446VLtK&XhU>tw|co_!0x<2KaFncRj^-SGEy_**PlDRq63L`Z!(dXT(y7CDV= zBPa#H8?hv3Gu@WnUUVwTJoxfwGuM0qfAMZWtOmy^Lw**=rIs?MLcxCi`T6>Nk6N^bC!bwM`XL$*~V1blLNgpYr zq2R-E-3%yx;1aC_6WOndC42pFI57xH5FH>GDtT?-IB0t@PF91g!aa5-qyv zVwDG;@MT*T(_RS9vKa^39|bMI%DX7gkM=E;JjYq7!X#`MAuI@P_~Ddwm%O8arK#Xk zI-nS_Nr(>!@RkSEV0c(_SG5vCsniv0pk_^V7jWdg5<)&+LF|U&lFJy8Y0?3N*2Hc0 zX;Y5+#J69hx7Dz3Vx|11wE0Hts?tHyHH72820stu=dbu7IoOMz6g)IWlw|Yan>Bdj z@!%h@PHD>(ZgwRO4Ly-Nn7?nue*W+Dx69j1e~(<2RDW;D)wD0%>5YZ4`m3bE2ID8t z0u!3YbU4O@vSid|ZEmlZXVT_4Bl_L7$gZ43aq0A9v-A))JmAzP%5qgtfGZ4BI97j~ z&Ru`C`2eOkv{w$HLdJ-aOxivsxd1v^K@8ps_P|!y&A7CkrB0oJx58;($aZNG;%7h( zOnopWr>fKFih8zw;%OvB@acGDmFy)jydv`3VpvS1ZTusiV2Y5gOc8|6GSXZtH?YkFI=7QwH6)hJ2TcB6yT^JwHr}X3 zd)7V1o;4?*4>ZfuW9=C*aQFB|GkfM_b0!%x(2T<7Wb*;`9P@$l9gyeFQeJP!a|2-? zv-j;53TFb%)^svx_N||2)?T+{@SRgAlj4yc0mJ2t@kn2-4sQF7179PqHIGC9M@BT|wR8v-VsZ4L zR@rPh0pED`6LaR#CScmH@QZUEMXEBarW|yWbG?rTp(b_j@Eb5qMy$x7$F)0$a3^Lw zenyMeH{oseWl_mf(A=AIkw{K(y(_L5fRHxdT#s;l6E9TM!W9SHjPKobpV_3HE(AGX zj}?%+zvn65!H1qyovx*0)`K*CrMJjE#;zvd^6P*t1M` z0}h)A;T0x>p3{MaH!UAvcoYLbj)r(tMPle}M0( zP=EnE9&V>nfB`&yp#24ny7E^lJ>mf#$CiTC2w!AabZ`@VIg4IYSIXf|-3uvhau>&t zKN&_|Uox^4N>Ch#?$av4I>l6yLOw2Z6G-U|?eT<{t@m=SQ;x=RJMMtjX`)gQMnghk zK)6CdbeCMn%qY zWM-&+FX4$EK#KiuwK{UubY?*Ym=|)Pz4W~@J7j^Fky$8R8O2CbCVdZW5I&^Xl>6|& z3r8CKKUqW-qq6JKj<-y;c`3A)j5F~C_bn`gBGTFA(bDT-+^C^c3cV@GLJk)ihW<)7 zWuA&gXqM4>JnA%7HR3Z`!1=l#D<||ml8KU7e*z1;J%Huj4-`I9)meq!?W~qU#(_ca zVs0Gq;~lB$q0`aG-_X+*nxUfoy_c!TMN4RZ*=Pn)Aw=iEkPtl5gu)H=Ro81Q9uu=d zhL0{f2WKg)FK+VXF|2;k4F~GMv}UKZN4hVYuUu+{Kkb0DcF^%C;iS`Wa~W0z9Zl3k zZi@D88A9^L2Tw;wH`)dg{k3V#^on|OyadHpVvNEn;O3m>AVrwM{%yqj*jnVnOU6sr zpe9_*kgmi9xpkXM)4;GN@e0;iSnH~Rw!Ba_UKleKA;s`jaUnv6BF70<&v0fTj)51( z%n-`%V4<3d&LcPok$Yt`_@TkoczbyUFR%;DVBjshnATA4a8^1mhygric#Ndrawgvx zq&xHvRBrMqx2f{q+{Zx;7FXmBS{xgEpzr*Ism9L-&5VCYl z$msr0CtL5jbxQsw-=O5(GeF5U3MDVauU6>yn2CPx7pnAo8y5!sNF!R4p8%foBGVT> zTB~Xf$xvh29X34sZzz$>>m7Zjx6#q6o6%7^1PhT_gn#4LU-9uplFR^b^PPy@ud6%S-T@^h(yr;OO2*) zr||7H@OQ5xgp+3JgQwvFM3KJdQKUFtk)Mgc>w)7Xje-F!KbX4T&>dV zd0c2TQveb{8_HDz54C86nPm2t=#|vw`j`Hc_O^DEE-FiU8T7uP0-|y~iHc@uDWX{p z$LzPp%L^A;YwrJ5TK{oj^k2X$$@~95w5dB>dapxyMz1TUq1QK~qlPhUeLVTX)Zd0H z)&Bki7e;^IX|cZ-U_-A(6(r#QdmFmOsZ(xDPlIy(ZUW^9#-(+7Q3#Nx9}f;t=@rI> zMlb);WU}#7+soI>^iIw1VRUK|qQ~RL)>h@;U#azNBX$wl-0MYL=zW`*tZ$_EY%I0- zc+E~C`aQXw^vE8vlbNi&%x?fYS>N4g^5cjqmmgMay*vvOKW*0z|;Q>~3MYDPABW8-8Ou7f((^zFT?;d)u zvc7Q(>_VBEb%n&h`IVLG7JeN-TXe*yOn2kGbc6n*MVo1Pqq7`7EXg~#95{{#-de$|iXFsr0-l)>Wnh{aE-EG8(Q zM1MFt569fbX8r<;O6Tw6eN_HFjEm&_C8;<+{^q01r2H*M*0EH~KZo;T$5eH(;ugk& z)00iB6=h2qi4d|0*e=qljlei>O41mo@k&K~&ZZ_%Db`H5Gq@SyXiAr+I#$$2-QXQTH>I zP<$A3^VRX-7r1C)JfMSX=*Ev955B|JUgCK06U{Yr3qVGH4B(43w*Fr-3oslO02CM` zbu!r6aGk-{Sff8fH2@AW0PT|*fQ?uDc&^5qcyeg6*@{f{5t%|59oE>-#Y z2VAtkPm1n1FMeKzG86e}%&)M`kD}E%mWlwMe4fRH=*riHI#~)N?Z(J2+A^V@s z;B;9{unu$kUbr0HMRGJ$H4d-icPr~@^Lk-so+>*PxWL>4TwsoVjWp)Z@$%$H z`fFvJ9Ids_VYJUMd_FkU6$c#9Ba$yHi{v7*bbkl*DG0MbF+slHsSC*M|5NkBD3DB_ zl=CvC$%20(!=J%shr64~pi*2Y0}H}Dyy24J>dJAr-9HFt*vGOc3&L;1wq4@d(LYt5 zN_2P*b5>aVmm&UDIKW(s-vj|kzbRCZ{)v2!Kgbn1_P4l+L!2!9AJSE&|JAs-aQgqDfYJXubdTsyJ{zJx{nqK<4I?tqe;Be5 zoFn}K%8_hkHV&Maa+a0Z;9Odnt%zTl(Wm8Dnc)Gg%*wGc`)OEtd(R7EC1v-C-+xi? zQR3{|s7?b`_5zL7q`zG?atGvQS1TU6QsY*wh#BPu&7 z@S503zjb!j;}3*kNV5>0q_Y$Djj5Av-w2OG(WchN!&p0p9b++o^07CZ!89XoZ#YA7 zo+K*J(e6K%>eNz<*ks2dg!~$-Ke3AyV>~(8Nu~D@TwM5gawAZ_K<{tRWm2DS@tf#P zzm>58cs|@Oop?J1)_TKpn>alD*$1Q#n z856U%Z2S>pP<;G6PlGu?=_(OtDB9YKp7t=P<+Fux3)St#PBdaEho#m!)x%O1 z_1H~3to!p>8Sv{>x=}_)ju6OrVf<`?Ux+|I<OpO)K2M86AVvxPAW5g5`gu%f-i_a@y(L+hp6v4od5 z>FuR>b0CtS<5cA$R5=7khKB>WQRMBaW3Vj&H4XxsqX3?;i>2t%n3#tAzDy;C)(}98 zuE4-2zm6@`z{2)e$d=muo8`L1{<8CA6n~B=L|YfgF*daqAoj44@4p;@FJGq#OWSAR zF~H3btk@obN7JPh2s~mzeVw-QEc8qZfHs{RE6r5!26^EW53sY!v3AkPWo?1tBIfLb zZwS11I0mA`*6?AcHBW(4uo{JD-^L0zLf8R{SW)j0ZEewr4-V^%7&eT(Hv+*(Lnx#Q z{b)=55SL?4Ffy0#KO6n{Pg+I9OCis~-ipXmZRv=6T)q$BH%(<$Btx8PcZ$Cn;Hg}g z;}pK`cVHet7hC$Tu#6FG!^;o>YNsg22>Gi3U$#2hD9yX%MAUdlZ9tIeRXt8b$B9|P zUE(ddUg5ACL8gelLZE7qIBrPTX;1T1*1GEs+PtZYawt157g~%G$Al3@QMjGShuG1s z#$dGN#Yy%P(G=X_MW6kITPPZbnBQ@Br|^jzzjNG;&T%Y+)Dhhltw(ffj z=zZA3pn>q6=&AvbMy|Zm?+@hM*o=SN1mZT<9-%Zw9-(3ly133A{N#I& zuy=D6%9k2TRk%46-!i5sIhE4QO6xTokK_6PhZ4U1@JMh+5-b`o&So>cKlhmM;dbg8=Kp4%?n3_ zt$|O@1Wu)BG~%l0$QnSF)>^RdB)Zn}!G*aNAD!YBTut#*WZVcB?Giquw$oE-_&#uu za8W??$SWWP)h+RvfR?)f8aU-MT?0G4?o=aCt5|F%kS_`->JvsyL90p+F0@$|&ZF+e zR}6_*ht(Xn;k0z+(bG{J`GgEb+M_z66<6h@PKd5`kSc2pdWx=6>l5XGtD=us^rBh_ z9hq`V-*W%PBP1@V$!~xX>f8F_?ga?k8I#E^Ct72Vjxz#b59w zU=fI;%)>T(qA&eTD5<0lJ%=J91Jr*8m}pr7B>h?wL?y zS50$i_bjJS@vhG)4eRht)G1cHOU?Q*fT^_KT0`?zc{w|4inu1!A^qnfnmgfktGKKB z$5boTE*CQz9z_Oth^rwkm=B9(nyG`J;CLtXMA)ZH8Qg-`QYJVrhw&R}kCqN_&?rGD zehmka9f~yPx-=pSk~k>S1z#hZa3Ei1c+mVu)PowMhteX{TZ;oET-7LiKuCRDRSEkP zXnkC$kX;r_Gupy5<>L=5G(3QSXW_{IX0o*E4&oO9%DsobAqVVq4H9ptFn#6pmC)c3 z?uLOkLG{6*6WxWFaGov{sJ`D~RPj`vCPsyMGNNl8!W-Cjk8FlC6WcufYWX_J2AQrr zfny$kF|3yc{p&OY?E@mHTc~}l4T%HhJHp4`@J|Q$D{QXNSCBPoYS=N}E7ZHg{CHQ` z6?F>#34WgH8(IhwPRqe?SJGaXhRLqDG>2|r`n9xu4(?!vv@|CVcly#D z90qCMm+lnc&Jem&fICA7WG>k7z5hk%{ML^Zod=h3B3Hbx{XQZ!!t^`>&hy}^Do44q z5Z;e*d3-TPA_e0@mO~(YcGbYVk>ZCk5FH)~;2*3^ONHHB)hhHRLU>~8`Bf5TF0_*F z(my;ME)rbp_vYx0OT=p&`=~=u_ zuoY;>$Z$~}ey<%Bw&l6QBQb_~*Yjcb_|oQvRNnxX5OD+#r2;im%n<>-E3_9D8N6t4 z6d(2f+bMj}@0f7?yF~K26NuhLIUpZiE@}_zp|?KJdnwV|2YN3hdiy}{r9^KZ=)IKa z?E}4+61{z(_fnPKu6Mupqcy{>`$#1?&SAVVOdSQyWXFh|jO;$#_cy_GWB#+;9$CfM zM9T&~N4ma0RtN`C__zPkhuG|?tZ)P9j|)A3Z?K|e+JM#lTdDDMn5;C{5nd4$$L9$rg=Oy+@8yDT zQ<%Rv-eg{_zHtOpj1yrO?U)12-{ZrFqrokp&C>aiw0nopL9tHXZl7bpNusSDEPdQ~ z$kYd_lzY+-%{c`{s-{?P5KcMm>qAW@i%R|9Z&0j{+6i%!T^aK3w<|;5DZcItTkup0 zcaNKzN@utP?VaVA{=!fkv=IcsL`aG!qg0rb!Bb~pHFbLDxuXPqt`OgjS)(KR23fRG zu%zU8F6?s>+2=4$D8|y)l|h(r_Sd3X*mHiyzs6tn*XHuc1sH>Wwk z9Lf+^vILc5u)xi4da`pHfPN$=6@B3p zj+jm>;G6FFM&6;fUyo-19;62j33uhRe9C*GdB-uKguP>FM}1RDGPuyyOeIpqF<4iu zqV70^-%x)XjjOaisGjF`3PKH?u%>Rf8&?JJi~gfEnPUreBhrHv*TEy+i6xi;XS*G5 zL5I>Ym-7tm$5pk#Yk-fyz{Q46EC2}dq7#k#b{rWKhw?Z(v@ZqR#jHL&?3sN!gS)pa zCI)9>Jg~DRb7&7&RZ6we8KWRwG>#lkt-=Z#vR}%ua{FQN>=xdO?m`NBls8!~4+R-$ zthxBwEj+}i(71}IKxfI7?sFlwu1ZHILG}IL5vQVzQ%Bih0yH0M1|6}Z8``dd0-5MW z&2mCXV*uIe1B(}u+a$Oc)55Ctcts_6PX=y@Zp;=ZEK~qpCIQezJK6xUZ_5M5CfXrC z#|JmArP6r;hvKjsWbqWA;HoI_7c&%IcwZ8WPGLnszB4W~kmgJ!_y;}t=v%)fQb@f5 zu5>w$sXfrGqp$O5zs&#Z}FMf*9)Jr@w&egr&XjPEwfZBqUk@XPnL`A)mk~w&i2FZfFpj zZd9G3Zjy*_p|5d?!@Ur6=~%QGojXkDmblPIxF1obnjQ1wmFP42KAc@QLRBL8guw4* zkm;|1bwY~d7Pc`(GE3s`P(DPy@;yU^8VALw5R0CCgbEA6sxE^7y-a;~l(y1q0L3E&QO`7#|8@`L@4iS~yhILJ6d14er4+Jdl=D5F>D&TNq9% zSRJE+jMvBvL0U*B8C5MzD?CM_sxX_dk|HPY4{cb&Ba& zFj8GbKhyxMXVEzaa1QNgF7KJnRnf6QB6Wl?nHJnTrdNgpF`C6#B0AHal( zA0wGeDNACLva8nHWcE=_3&Z7?c!Jd4@tRI&1fl7BhpL*s7k^XFwc(QH%fH*LD|Dyk zLQ-gWTD388KUYKB*Z{E_6LrJ01U+#!K2wqTQ3q**Tcjb`d9a!IU>^umBVYeG+0- z&VFam{)XYuG3L|ye3UTv!fD>C;mp$$_C%V&AVOAww-6&Nc?HKq^Sr{_nD6GZS!U$d zB!R#WN61T)kl`)KMqDV575SD_{Psy44LF2W zG+wpR5@|#4;si8UI0ZiUN%=YcpLNJgo&n?t)%;=@{rsMwgjRt>@Xkz4Q&AI4UT(H1W@be`{Z z0%c(Dg<3S#_?{!&5NnclC>$|bLpG9}kKm1T$E!*-GRov{+2;i@ntMs&>#3r`Ql?-kU-1` zB$Q|dBhirn!mDu4ZG9KmBl)?WVw{-oiyKPo5hz>rXDBUgb336LUU-omQOI-|qOu0C zDIa-(=oPQ94D&S?3wH@DDOtydZ^~1mUQHho z6<5&|xHW};M*j4l(-*z8x0Kj)(Yqbc+cl!>VyxDJF5z|LMEEj|Qfk9+lE&J+pR9c=%8{KAmX7Cr< zHJHHZ85kb$&$rrH<5Y&LjVl%=f!*3lEj@wZ?`_vx)Tx-Y$i(pM7={zG|L;pPv$gq+ zf%i5WdeWdt6bT+s9(HWO%$C7VsXOaNcTDjoab;lR7@+7yNMFGUK{k5n9+U(8^P#lB zrNA79Q8-*0`b|vn3VMQ3g%+R3%12@$U}xFA)-%XPiD;`X2ovbdTR(JHB4UC-SevD8 zv8`2#16T-Rx#rvf6CiArcN?V}?HDl*A{nW~rEu2A)LROw96*ZHs?$iILT zH`b5cm6L&Nc}z{+Ce1}nTC1V(aKnN}Z_lLC8svA9#FMeZSinO&zA*A%*Sz+X7uZopkf07*5Y5K?JM|_TmWX3{AfF^Qw8!TVa2~n(nPS3Y> zwNqR$z+LG=Zn33l7FY2Z)a>9!MxFhlzQwfe&J|1Z1lKmWr==YyY1USct)(V>k>eJ+ z*)Y7??6liRv$@6JAIBEo_1myLMA`KK|6F${jZYne{gX2oLG$>HWS7&Zh1O$y-KlOK z>nE<__vc^j6yA6CJ2QWnQ*>c}@a`tLlFG;OqshJk{YS7cs|FuNMq<>{UUL;6=kB3} zN~AO070zf6hyLV%AW7gd3{b-*rz(ankO^uLalyNXY_xbjnOAYkQgq0Tw` z?R8qCsf&wJ7Z2ep_tLg7I_eOPqrLNfMSgo1cDeF4vnH1E;m1#)A-5{dE_SbSY@n^>m*?jf>F>QGe7ImIY=Gk4PiHoo#lu| zD$fTAEG}UI*hy~K+pt+0=hrpZsf<^^OGQ5I30RfJu9kFrBAj6zk*-d7g~)^YJ3&i_Y}$}F6>+Pbx&!B_L6QtseDo)=>_ePeq_>+M>YR$&+4)sh@HQ( z#OnXKI*0d&IPDPn%s-9h_B1`j{$py+M#?`bg?nP`Yb(y9gyPqA!|V*v>CdT5tQ6C$%ewQGODI1f#v}|qr_q4UayK|< zGjYXZHc_}=&c>s{{ng`uNt^B;0+l5vQ`@1Zv1H%x>y+R~oQ)ckurfVL6#l#?k*2{` zwcR&R%2_}S2Ik9Q3~|!dYflq2m+vJlU&4|DK&vOqGj=Ahq`TE$1lpEZeeJ4h{r$wUtY{O^ zCl~Z2DkHULj)f+?o*Ybpy%H}vbFhi#Iw&J*W|@Qy(Sxs%1Yj@CD;$*;ETM(6f9QH^ za~V=53azBlkH zdCXp8Z!VMM&PHFD{Ir7qOvb~&&xewXu*i4CkP*@vW1pNE~H1uNsmKRskjsknm56$i}4|us9q$6)aVjzL+Z9>nl4b>9tBUYCc zoAr5jc3lrz378;ruj38K+#E{v-3en?DO&)_0|*1RfNsh$K)P9Kf%d}Mz^3*}#8QMS=9c zbaD3};VcVN`X^p+hc~aMU&>jbBAZlNsU}z?HzeXmDE6Nv$i=K9|I_b~AJ;bpyV{xl zD|vAq2ATuX^5}Q8=kWC=gW40jvvrs5uK+re)&rK}RX{J4L~YinwDWMY0{tT{$&yyO z5%YrMGi2~7pBC(Zts`PQX_Kma3HjVGE5mLsolnrVD3#69NLNsiZXu?m#O4-#Hq{)R zxtKJ%fw@Ps@s7*}P(V_2w5hvaud;$sY6p}muZy*R>IQKs?Fqx`ag?UEIN$Cc;X!~a z{AEk9_o<%vNy-MCX#*Qr3=?Iw)!E<Ml;cwB8Af{F>jvrfT@pw7i9~vqTNlTn1T;Cqg9siF{`${B_)7fYKnSvw z!4u^HQ$eIhE=G84Y#mg}zrDzy{MU3+L4k}`34b|?PPCa$w_hAb@MN-Hu9Ezd&p`59@dwHJ1EX4&^_vzN6kpacLDmUw zMb%kdijT5SAjMw1FYh#H9xKn-hwSO8oM)%x(d3sy&Id|%2mo6@;;B;nY_o(mm2svC z=h+tH7uK$A<opuml!xl)`*wbDEH*DY&N{Y!zRzp@T%6Z2_&I`;0la!j zdgMPRvC1Uu=x&%N>ly-Ba71-uqCgE0!{!hi6t~lY@p8;R296O+`oN>qCk8FQdz@n#NSTK>z?+{Y6?_6~B2I=)96eqG z{r&b;y(xou))ZjzR~6)t(>d$`=r2N)5Q*AZv{Gd1_+|&D5;l0at#J3qh~QZ~RT6%n z1z#P;eUv%_m9H{kPDgwtkE?N?)0Ws2kr7SN7uogXD3Q+0u~;hL zH8TX9`A<}Q)N*@pVPDI_0*^Qlz6`iO$L0i z(nHgkvGUQ}=lQpop;w%k(`(>kng)KF3{oYm^sMFg-Kf<3+ zwWs@gfs{l-gbQIfU2vn)99TJxULDlV%2&h?Zjh;6f9M!PINf8c(XTz4r_JYErBAxS zz;uOy*C2U42Dg?O`20%-ecH#i!(iZ=_s#T4k7uAkp9K8*%hdq`lOr}u3d5&V4WCj; zI`V{x1Eo=DpJH0`O$}MyA=b3|{qC3yz*o@n2)Tk-24EcJFLwlyl-Gjr8H8ZI&&Jh( z(*B!p7~@Hn2AE#o9h)ijmA@o-IUAF7!9tju1$k=5Jx+KjDR872ek^U~4f> zAFxZ90iOgCS$G85cPEX8>HfQkaLcZzzBD9DnSJSpj91^hVDM^6P8_dR#41b?)?U71 zMPaZkldp4&6|_9C%lDa8=ZMO+wNp)8YxZI7q9qy5fRHR!D>ifOx&*GBF=f?&Z5-~1U9=`)3Wcc)PKG5Y zR1*|xy`oUHQm>~O=hj1^h()xY$byN2wFmuwM>wpS$@?K<-;<1e+I~f>J=6K;6^mfc z5cjIY`S@mdtfz6R@cY=Q;bQ>o!7J_2@{~4_MTf10RaiKM!dMvwK#IDf>yKbd8 zk~7kFFO*8CmmgLmN95nA%$rSi?=yvYRP#Y7f?TC)U9)dPEdMq>pJ@8r=gdEb6$%#i z0t@+*jD=L?GITc5j;UKznz0Lfd)_6^Qmmj?oR4EkWChJkJBt2+k(>P9p zX|TYS$Cx-H`=kFLdKTSHYr`fYF6RG#GZ^`4Ry-r$)e6GaW;m@ro1Pa)sV~v#Oy5+r z3v;e)OEu#7!`@wv8uEmqg3b74VOuA6TIhf2p5qv^;Xw&3+h_AHWRi+zLZEj^Rd7j1G%;ti=H~SsdWK~b1;A-JX+6Sexs&lS*+W%k z=~x<6<*3GwZK#`qRI|TS`LU0={;?oP!jFBJFf07nNuR<0^PIttiJ9^IAm9#G5aY){ z#;*ct-iwSM(^P)UUd{N?r0@e3B=FwO+0_T&$XCL^p ziWN%7r&XQl@DBLn1b^V}_T8$>vaUCTLW{Ph-HwXDqEk=nEXr>*SahY8SOn|@MR5!c z>Ab)`n+|LBmh6g~AEX8X%4?*js z@<7jU3JWm?tH;~5gcL3LD^%&=g%9Mmi05EOp6bxVMQCAL-x2J(+5P<#k|0(`Z(_P* zlitLu(Zo%xiI+*;lqTj<6F0>*aaR;F4dS|lpQqas=B7W}tx3Et?OJ?^7XJfZHEcJ} za(5LeK|FxC5VBGkrLu5d215XAh@D-5La|XrAl^TIV{m%}YtSep`%9(MEbxpDG&{G< z^E<*T!^B{)yK*`mgE8eRHT22uD}>Ga3i9`JZo>(wJy3m6VfGt-%j4lm38L#Vv&4^lGr|vj}X&G!*rELwW5*U@bm$5@Q@^8%guf?)3-$y&X5(E<`=Ha++ z4(0yC72UzE2u?>*1XRaNmdGqCnnL*+8Tq=iD^Nu4Kv&dymIx-e2-`;3S*e8^#Yp0a zPX77V22~@7!iM3H_a)Ge$v^hw5moeaxWnNpL_2DIJ>d@;TtmIa>DuT)OWUul*{_)}Og4U}g&=F&sq2KHSAA)pi5 z(oOKnfU;gVEx1!Z7wSR6sIT5~_gkv-ZAyzU8O^m`?RMmN)5;Ps}xz}(=ORDXA@ z$4be=29UyI(v^o%`)jl(IDj603O5sSnKrqFbQFBzakXGAhST3!BL{7gu(Z%H^YRyv z1ENyopW9-?`%L4HvLC_}(A=jCoDPBKAj4jg;jd&JJ0<<$-(+#HCQTypVQh(_Wz)5m zVWzv)8av=)VN2Ve6OpmCzrVkOx>ca`xu;wXFK|1G^u-o2)|d+VByntv?-A{kPiS8`F2i zWnyr2?Pn@SS7} z)48(v%dKV>$JsMw<*FRiR6KIw5*zr4;4c4dq%{JPj-HZguul&LCyc=Bw=?Fhe9VyN ze@6q#lwcD(Bx&*A8oPw;#`x7sUBk-7Y7LV?N%;|C=+D>-2V$3|J+&G%C$j$%6Gzz; z*|Aa`{;Iud)1NnOF7 z$nE%>=r@FY*s3ue}j@yjJr!Yx|{1 ziKl6aEpDe~JXy#L*vZ|3S`{?Y~yjIotnDW)`dQ zfONi!homBzIbxN}2dJ1lE4!bFCqYO%JA>6RhfnQ@1h^dsH)6hRBa6tU^l_)JwE27D z_g#Mc_w4)^>gRJjI0J?NkOGge!(-h#8=l>c+(v4IFo`qoWgc^LSJcrzO~<&Y_-UWT zZA`;!2zQE&CuHqQC?COk|IPA2UzL6cIkRzSk}U^qvM~};vyzf98U6L|yPV(ma2DA4 z{#jk<4Bh$hFN?$X*nz&F?|)?dG5moH*cgBMog@FJ)e)_J6#tog{eJ$tyMCNjL;CC&&dI<#+ih$|w7*^6!QVglXn$_9*dYg#D3C`qZ?e`l0>WqhgXSva*# zRQ?mMQ2DGJb^IjzuJymmh4g>$+4^s4Y4BJ}{b%h<+W*1+r2YS`ssHh%Ch7mnN%~K+ z2Laq_C^wjQAM*)x3cnE>c3(?&a?l?^*a(a^*_E1w ze%LP1exxjE-G1!9&!EPLmfE=ag>%%80)NVqWHRSB)$+lYag<1;`PhW|lF$d!I@s3> zqt9Tpw{`lwE*kXd8Q*eEhX4G3=SUx_FByHVH`Vf*d{+8gl~7+CeQ0gN<{!|XN6u^h zfxPt{2QO=#Hjh;sv`LL`wMLtJo=>VjO8LoX;Wm}}{1<1X#igwL#Qy8^uk-6avu|hX zzhLTrd`tEI|1D|%mGYDJ-&E@JK)g|i6rL6px`hVX1r}mwd|Eo>?k8i2o|G&1_ z|G~?W_TNliU6;PK-deLk2z&Y9o320XgT zpnx^Ltr`Ua&mkT-VZNo7pNsrT+Evv-cn6C+R;HmKV~0#-FqHKV<5Ed`tEIuS?c{wfv<0H-&E6+pSIM0R(?zUhy6eQ{tr&x z|9edRk8f3y{y*Jf{|7HWOaDzZJ^4vX{b%LJ^*_e`|Na8(|GZ=x@RyYa1v2B?l}LfW zQ!VO$&b-zsFw9ibs6> zgDv$RQf}N&lZn)_=A9v-ICo)8hwP>Oaai_djam%$q3s z{-x%BMJ_7>yTf)7c@^k)t5`WLd_S8uzRVRVfHoG(!7{B#w#)QU?DyEez`hk9t()Bw z8z%~gA#J9qK!&D<^8{{y|ERpIE{)DEb}CQVx_T?7zu1Q{?YqU+hy4K7-yIj&-yJRY z7j9OCgst^=`?>cQ<+a*hO0Xpsf&4{`DzxRt$MHPQADj5TA_Fb=DUOF{EiW3&gR{P` z@TBGX<7k>#9`^23DzW~z#(zdHwC~5gua{3;ZB@SF%0IXFi|nGujyj6E#2r0NwqL^d zr{te&<$dG)G>cE8(;WG59L@u-;Ta|7?oJ#jvH5)-aX1BDHkadcsSmNh?&8LIix3nH zXsVNhQiXH0I4*QM0_frr$IT*8Kr14z(4ZX3ekF8l$AB~tx`i_h?1-ug3dYb`00Ded zy6#@=HDAr+)Jyr52=qkc;XQOb=ZoI#tfl`EiacWx{8kW}&M~d;LMKdm07TuCaV{jU zHm}!6|Ml}?O1#nt#6(kV zovXTzqL{)9a)K+etUTw!3H-wdI3r@(LI^4eEW>I0C*{9O&HWKZBGgB&Qlg%u2QOtb z1#ByBP>8rrSDXZprgm1pYC6pJVCb96V6yfy4)M&7Z8xFOXVaNUxT_u40jyy~$WQ+!qn z6AO5Q8G}#1W*lT-D?Fnx@$n|hia-sFf$W_H&juAo(_6lmNfwQWbyaZ~|ITjc+1S7(rNbZ%O zP$3D}h`tJusEvtp)je?91>*g*HV&iB%f2_iEM*K-(Von*xCxdwkiUjFV#WNICN5hg*B=1 z^r)+v&$4U})TM7s1(DwQgjFrh$qjY(Ws`N5{&4>fQ38QDYkTU=@uzD3>cNicu}bkZ ztoVaC8xGW}7=*_#63O9(!~ZT%;RKXSBa>m9Ywzw+I<4P=SQupG8b z5qJ&A*U<$COkFgnjVVBgm^iW#g%Gj5mCJKHsY~qAQ%}c1W{eiIdXE$*^~O*glM5Xo z_PyEX1gDGuYb`Ol>7a}%7BTbDSpMXQlX8gOiTqJ{SxsB%b8^LNEPDc5)42_MxF_GA zr;vB!6AH$LiM+{+19?l8^K5E7z7pkz8Kk(B%W?wF#EJ3$D$1@}_X!XxC+CPa+JRry z9%)K~r?dT|0r4BeQB=Pp+6e5RJiI;kBM1y&E$ZAtJH#P8G*@2_WuM*?z^G_o7T=%+ z)h~YFbTr!N5SF$>^x8r~iz9>+vD5~Y1!Rp!Om~NY)(jvSU#5Ho&FZJ7a>z_eYHCWIS&26ndARG4ogV)%?7lLKv#SIgcE8@ zp?!5yPi{lgMmxku`p1gXQ5I{g?dOvQsAo+$H%lN4a!=C8y_LufEX>0o_wpQI0OH6A z$bBYwBHKS6_;`%mVC407MMJBHj`6|?)o0T!cN z5lOorMBge*%7hqA0a_Q%o#DU|g$iaWN8?5U=caQsML8LVpnDpeZJAqWPA%Ycox5@o zjYgC#z6DMV&^QHfm}HzX9g?Z2Z-rNNt?=sgbLQ1=i9-ixfmf^Os?Q(6tHp7=YQG%3 zx-G_hQhvr^M_&Xf0e#VnS+Bo-hf`WST*LRnVn>UllHl9e47XNJejb|Ym`RUrC=GCR^Jd1A{G89*j zEx~yc-}1o8{(euiR_2jJwL4;&Uuc|d5p65!%@m98k6~MY+c35Vg0LRMgH&6!QtiC3 z+y$&(jyysS)FEf<_TciYZ0>h;VVeWJzUzg6g?n``5a&hP?uvS)jA1Baf>MUOUmV*J zVMFq+U~P)LldX4{{dRI2%87!D?^t00uD%WP!tAS1m;maDo6H@Dc^1T90F<~|bf z(!2Ea4;aVU*Wc0weJ$exC+mQ)nTcOL@F}H+*fOzADlm-Il3i%8lNx+8Zn%&+&mm4n zgQweFXs}Bd#Tx7oYN?8<(Re4)lS-{dZ>mT27*dz`A$q8OIJSrICbg)_P2aVT`|i59 z3X^;{l)j7NAJ#9bo%Pg#i`ahgm?LcIl-b)78IG&7y?rsg{a1QBM}52MKdh2GB&x#2 zmI+x_OXORKEJ~^=%L1gP^8_eb{Y3#I#`nUP`l-MEa8q}No>tx)W(%H9&fP1Aj!*Cejd$W{p(?`SxI%f8du`z4j$cl zd}}=(`74yp1F8i~^^MyyEi2U`^Hf;Y0*CSp*qC4?gO{xdpcQf-rT7{@DwDfXJIjrJ zxs+;f7ab*Z`gRzdVY%4&uM`+D6}W;5e2?A^5!3_Y$zEKTBsC3^>U(8NFD9kjJ;zX< z{ESOLir_l-`iJNbD}YYsGhrpafg^C#>IfXMy6jCgf5xYr>qO*k3?xFm(8S(;o8Bg2 z--e4KYv3EJy}l;W=1KNunfXofG_W^oO>eGftGr1tnZYyQb`D*f!UbiLQ97!r3gw{M zGJ}Lf#ua<}6S|UO2rYSKF43IjUVB{#AwANHR0x#YgJ~aVM-L)K=0Fs&ubq(MIV|Nyh|m+ zecGEr?ajsPO>@)lz@052YWj3s9dD?EE#X2F= z`^O~rv}YIkdot>M@kf^5V0!H0$3a-rX!L0h_$2I|M1bpJ<1G|%w2*TBd|0o3uJ zFCReBjhN_lzIg?f1kJwG(pMiWU0p(eMDIL}8L?1Qm*jjH5{ZVhU!v!tt zcLvX7EEvhtd&A0Lx%kSWSK&pCe$H2>u*EdixlI*tn6!oG&W+h6{-ZzHL*-BQg8GP> z@GhF%fS>P7zv-HOKE;oDK8^(@rtIRvtcu9Lmi4%S2X)rq#kvm>*PWrvQ zB64@q@8LlR53=+_5ws{q^CFkABFyuD2GX7qO(j2ABO2IT#*kJsfua!}HuhFyW&8K7 zM94Nc9WwNOc4)e5Enqj`aJ2$khp|eZ{;TEl;VHRjz{}lC4R~rJ^+8!5u=Pi)_3ymJ zsQ+gz)xR>*LjB~QoH!n91i0ExwBc4&fe3B^IW@k)wEi3XftmO{IF27Z2n-a~4*1qG zaE3ynL~jaweH*~nb5%4~135;h&4JvdJy}QO$XSmBZ=2dvqFoFy_p;a0j{J=t(Nb=G zy6ks1rsK9nz7rRi^jPFuq@E~#y;Z&uQ4xrmK~PlfVmH?}JNIr(>?Sqg@9d|4X|>E7 zgsZeC>8cOj%zhkKxYM*C7e{^u)XJTS_>-tgF%_95?LgXn{~mH=rmwfrYJ;7M))7^1 zl7Mhry{0o*d<%Z&;%5nds_+w5f73PnyoDcH-;i)(yEZ)N-aaY^g&ibB2Wy(y^NHiJ zJry3-Z-&AopoVo1*HYK95Zsi)XyU&P*|p*4DV-r~=QplL!5lT%x`W^S1^?O!{EZ2! zh3~Z+o5J7{ORPJ&RF@aYkE&2b1N1%$j}p9xsbH8YXokYXtpDA@aTOMU@O?#~g#}O8 z{Fn0KC6LBWk8Yl8*=$3luhBo!wmHp&&+b&;OZQ{h$lj}?_lR?^(Ld57%6ns7g`a`! zh0PlSba(O#-_Zsd4`1;x`InHGZYjPZM{_z31Er;S86eZ5SuDjjA(>r)OMK5#i2my} zz&c&)MFwg@_Z%*k+18c%yF@en9Z-B#?ZOP{isu2An(`xT>enLFP5%ttVZ=Zdbn#9KtRKR=|$%M608CkKb0fN1lM}sQhLjm~Qjdble%4P-Xi&ZP5%~myW*d>8+SJ>-OFA$@-Hi2S5ZljnZ zj%dCASUr1Y(15MiH9Ua#AtG$o;?f`io8AfxE&PIu8uKua8RdQnrg3Uozng926=lDrlHZ{uk#>wxwwQo_^R@%4e z-qzapXFN@4-?L~#Xy$SxsgRQmiV?0f0U!*y{eGlQz`L{1J zu$A^rYqfpDleN#C(7xlC6`p_lp1r1(_HDvUpk?{}GtCp??bEYpO|1M*xuEv_qPUgz zb!)YKXI3U@Uz>#Xz4~p-^kdoMFDApzRecFhUIFo6$y zG_O6mp$0ROi#~a%xp@9xs*yz;E8DTj3m%= zuBTOc_71d6&kQ^RJ@;L2(6eMi96fJLPS4&3J*i9bGNLEITNF&P%ZO07#87vhR*6Pk ze_ z-ZDL3#WT=z^(2FyU%nhi&jk5gc&_qUs1>VGFjhV@X-s9)orgO-65(no1>+#>Q6n?m}0E8t(jqE1N)h7VCPZ7Uu=j;&Ly z&T^4=BisKm3%bFU;d_mxEJy^1iQ!>?y-uMTY-}3$cQ7LrfmigkR$gTH)3ldcAt|j1 z(aKjX|2Wb=(%P*GI z`8YkoR_RliH%iSF9`@pRLkv4ni;*%XsN&gip&HmBf?`8@=>B|;yLjia%dt!>nxW#E zA_fXm&d$$bhz1@awnVEI;)4inbs<$*I)!Ke!g^{>HKH_-vu}9h5HS`GhnG$xofCrZ zs;1z5^$kh~;lBv@q3y7RzS_H2n)T;n(Q5Bre92Xw)G6NAFFY%@U6S<`w{M5 z+q~9qy~5}2ehpmk6%r8&qvWdQp$TFtvi@-QG~g0Be^NcdvL-Kb+uD;nod_DdbgFH9jF~gqIgAF62=nKJBi)K&@2>=f1iCi_zg;o$8 zYW4Sbhkg0I_~7R!h;(*P1=BsiZ`Zhma!LfxTImSfp7w)0+8tg>uO2=j&3;6APwx`K znY5SnkHahA%|JFe5wnZvR;exe#p+FoW@^dWsatrz7A0roZq8$TI3^wIO%4T@1tiGp zip}a}O`wN-Cx%KCxKN`j^-DVZCu&H8L0ile+>N7Ht9kMITDLG6Fwe^ozVa~yRk{}? zqbx^*vq!GQD*!1OdEluLNH(Z)Bv6_51FL+sCl76Rtq&}Os$33L=}T+n3I&5&5lJ8R z5CJOA=#92p(@ zkX`A_MLxu7oXLR117Maf-aB_EJTkQ`+Y*Fm$ZNA98I964=sePSLo7K z5n26otbZ5YONY=5M+Hn9#f>0&5wiXU>+SfS+c1V@6e^<7=T#JBM1-l#S`EK-^bnfh zy$K}~r=aFnqhJUi!&03{sRzYWwzvdx{d#L)MQ-tmp1hLgH@9$4;dVz2OkC7exLun6 z^JcQ{57YwfGR?OM;e9noXRG?@cHOAAU3&W|xSSqA43*S7g5A8O_+Bc;mAo2l#c$?s zB+E-bSO>A+e^9UKZ~7UHpCs#D8k5{YGn>%goY!1W&b6nD308gBNc&ui2Yb-`%F~D) zvCQo#?Bn6|TbJTPim;pDP^{0D+wpaB3bgM=d z(Uh) z7R8*Bt5>uuxzhhEitlRMRnlg`W6TC%LLj}5lx)zrU-P2c@K8B;O8va=8&)|Nx`}S! zF)BOaHY%H>S0>%^{PAd{NO|pGgc5&Z)Xm4=2Dz2-5>npfGWd!y5V6e-{)t%q!Si;I zQS!G|MDBuw8U>i+#oR#C682V?Qz|z&n31^`_MqNgk~%L_?g>s7MoUuXb|&UfSUvM@ zFU*0r|3Uf-&Rh7UNASTFxfWlx^Z;xG<$-O&vjiB?zVnzGO5>aHn^MMk#NKG*iCEEjDsB!TY_9WToK2V`^`!F2X~3qiQd;cyneCc48X`+cts4b{ze9 zgmpDV91V)Nb_w2n$Lo+l)Z(MaRIxmdAI7Z1h-&XXgr9Pu&3JuX3Ri_R&Y+NY7cU}% zdhp=)l)kvbSjykPRnd$D^VD3Cw=qWclt&@SYOd(Eq0xNZ7b)BZ|31F>n12a9_V>eJ zwu>x>kSZWK9oZpM6dz^t#>f+yitZ>m11aGkA6%FVj;2v7!c&o44k5BN)ulNlXd;f4 zplL&C7{jCzQL?qZh0IVPg~%@XF$$N-k~<>zI-=w#U247+jSeyLhAVa<$erfT$IIxT z;{oZPv%#70u)ruq-(d05K6@qr<<4d20=(hd^W4}UAW3`qbL;`t`Zf}nb>tv)k2S*7 zHRScXq=rS~mfM0S5J5sQG13ptlhH^zU6rA($oKRi5j1$B)So3B$v;y9a=*jwp1KGw z3(5xb!7q;!r9%(mc4QR3t&1Rl7o$7Ov2b7`X*I@9>DWZ-M16#k=7hE{?8r<3EUjK&bsAKPwEeR%#`eoO4rhf6#FDQQE9h_F5FqoG|Hd$dNuWER`95 zCjNVT*e6rn+h!;KM&Y1GMMFny8&g#bvr{)_pkoN8TLH{H7q6fScu_Q$g7wF|qrK5L zPmA>!2=8V^Wa?jojw|{KdUI|k9#za8#>MU(#v|@`1(i*j>gXzOeacf4-C#v}Q%Z(Q z{@750PS?W4z76A2jcnC|l?e#^-=0A1vZV$%?l%+y7CKs^qdTrU=W+?)le@-awaWuh zOc3CQbTy_JZC~uiqkYlpE@jox4INlofAs4b$wsY$_|Cw#3_ZENcgB4pgsV(rqiJk$ zZL5qnBiERQ)zayskr#ZGJxKh>BnCXt7jD)#eKgmbdti-B*9amlW6vW%gk-?Gf*}J@xT#@yAi6ma4Yei*a2HZ%j7@v`J$ty$$^A;)?r2RbR<`C>x0FR+ zq$Vzivmy_gr983y+>d|C%)PgMcS#T@gPPX*d3YYMw{lleEDzZdi+Mc`w>Ms5woe3G z&^Ka^>dkNyH-hla$hXzBGV-f=cSc^z$UPc)9Z3$w@9NR$CuiPAdF)0iPIyVFiS9@g znVG0r0d%NOTy@_Ryi6L8!*}S+7XiGs$&lH#v8gNU_>-ph=8o`6N}_AvhD77Q=S_99 zBD%(0g{R)Ct!+01{$NrP!}uf6b-L8UllT_17_~l)UjdqZ=LRa%ejaMTO5AN!EgtH$ znAl2x+wYJ5=qqM#+~aN70Yqpg;i~jr8vm!FGHL_K_XXB($UY5AoKRZKI&58^pN1~cPY5S|qA(7&bHqL@My_`BCGEHU=CDMGpb<+V( zg+Z^`?M2mJr+_c+%gAkq`kL*0in1ehvcezhYr~HHt?)Z0->{qhG&?U5G0&$CRJO|X z)=kgoJ$72z$~+#9xU#nu{*zMbt}OR8e_Dv(c>F+L<-696cbR-qTXbg7YTv8h1Y)BO zHshPmmvomRvP?}}ti17T8&WH@Z)2QN_G$ww0P^jtjf41-UbM(~pdsNf6sOU-cdVOq zy6%h3DSOroVj+Y0R4H|6P?|r}AVxTYXfyeKZU%ukKj>xOt0+xI9dE|*C?EX|i^}t? zNUd6UK$+R0%!H=OL*o)s>mlRQmpps(73s@Xx+q^1qOf0VGDOR9*oqdAQKUN%o!2XQ z4$R0eqV;*c%HiOBeAt8K&Q^8~MRkv0i5G=~j7A{8$>V4+39D7G*r%-+3An(z!3(aC zUca*#X*@>1#GQwaQEIM{MD7OU*dMjyC)>-HHOCnF@}r&n{G0OSuD?K*en7sQsSAG` z`Ev2;d&!q~|B@PV*~V;_jl5#+K7(~(J}1Bxo^9k?cp+q|shj1zvd%7Y8raN4UP1#y z=+V3IP?vKOO3l5Db4ERrnR_1L$k)&e*e)C+zln|R0dACp4yvDDRvaQi{A!l&L-CUj z4M58G1>)Qu5HDR^xCox;LU>Jlp|_=`H17b?d&MReHhjz0Plvm4~nnE2JqRPtid)5TZMxJ%Y!Bd}B&?nmC zH#*Yv2^_K+_4FIHvHty~xk5vYs?lUR@Ev$o=-d8kv8B4dqqhE|V_GI-GdJHC>#=^` zkqSst%udI=nF$$OHHg`RKcLLoF$=CBmtScvC%$#ISx#NYk6UYh{9?xS083_guvq1GWY9qjn9zi}Mp8v^ zk|S9EBpI?LkUCOxq>)F_J-#l40XhxaFPNV(y7be&0Q9KLj$taba`k%XVU8Tsr@yLC z_DAG0b#WyV4co8rPKA7JSmVo4vN}-`YL=tNrH)qI47=qVORV8oqDj&_#fa_S%yu%GjK`+oeU-}Rh^qxARxx93PO(h*M7$8A8@B8|i9;5Q)KIfLn zP0xMK&GYX(e?%MqPQKhcDuXrBUgsAM&!!XgR1%rpa4*{La`=}^;a{Mg;$KpB^{Wp5 zBL6t?FMr^d^MLiqsm^)826zV@2n-{gEyg(!kmA4}I}aXavv?TA7Gf7XnpB?$9jkPa znd@EC#{$+ZOQC8ssiT3H-*%W8yx>5od=i-!^;e; zhnJ}$!Tw_*yvzwax#tfDjyl$gj8+-<48pqUczxAbWPIud`}BY49Ks6sA(73^owUdc zhGR+Dsdr7|hKqThG-c7`fA+G&#+;-Cx<6q^w)>CXmhQgYbf+nvxSyiV076A{KG+Eb z_bsLg^}nk;{!{{!hFO_+3u_9T`66b(rx3%&ENm zEyRZPJrqu04D3bG&V^|vob>igxZy27wU7UiVZslmsJ-?lIZU`wRPV)uKR}kGojo5( z^J6*?MWfSF(@}7j>&ic&<%;ZuEFW_|UEMI>HD|55$QS zqT`EZb9@mxL^rSI99@(;asnq8kC-nxO>~^xo9+J|%w$FEU1-G*2uyoXa! z`fwoIxx@=232T~hD9g-G#-7F>6_je4&?;BQuIb@z_-qdlyu7wx-e?{Ep_B6(I@(u< ztNxLltcbj-Xq_{FChL|OKDv~3s&r4HtkauXYFbNy-le6ZN>PtC1>&KmTC4hNsqF9@ znogNfrB-AVzeJGgUowhBpAx$S#aXw-{E8`HMQ$YxB@QMDDJyb{$>3zPA2>J1zQxg} z6i77j#t<@mQAd()8PkhS z^bx{`lp}STqobVgRP`d-R~i@9;K(QCi38dv+voq-l`yP`(Jr+&-ax?@(Rm!ufpU&n zHGDhD8ek`JpP_&AbxvZ1yHRhflPrB2v|spRoP~V#s@aLG@E4>&aGDaoQjz$u4X3yV z7Wd;h0D3mrJEs}||Kl+N@IY)J@+=Ey1CvvolY3@(xqShxB)zqjp9T@>diPI! zLVbobej$O(WZAS4C_|;I4Q@AjqlC0z4*4X{a{E>$$RB-9Q|U-);S#|mVdf-^d1F)2 z$b>kj$d#b1uo_C`CA7iV?+@a9>~}mFH?u;FnmXC*W@{UP&W|ZijdW7jXGGcQP3?>Lqw7U?E7u2)rxYZh@#qW*==smZ zA_1I6t|&7SSMaYuu+(cytwbfYF0N_S0v^XBq^xOamxfaS&wl20TuE#KJVs3ug19~Z z5=^{mS`&qQ>ZpGP(;OEpud5G|GU(_^vky&V205}dhJyZBKVNKquhH9DJd6;0)Fy+{ zIyBZEJP)vU!P+QQDDoKHtgZaaVSdb7{+$#C_|PB+1UOeL+K&MS3Wg`HV*;7Eg(H1& zIvtNs8tsBMZk1bu66c z8#%5-(sdyg8c+u*gB#YC*#p(*hE{CA#`JRg91gIs_J=?DU*NC;FoD0PfWH+#fWJEN z_eZfD7-#S|$=Oim#r`Aucr)RckpNMBIP>ghA9)Tvi;eGvZnn%CSTuIg>^!S`Uh)_$ z=XznnX^udNMmDk{#Kzv0;o=YI4%gT>%~f%C_@64R1C7t8HV634zTl4?eTK{{vC71{~`7NE6weL`r~z)n`~b&F+=?)@rf-s*L2UNALgh(OFz~?`J}kcp&uhJ za_Gk&_#}$+gkU$;51lhBE+ZG|ofAbW$YFb>OZ*=+9s&^m-4hJ)f8he$?x7HJ6x}JlNzXFmcTy4TW0H7ZV$)k4RvGA zw(?i1ceWL6@Ke~}_pz@i{0I9=13z};2oOubJoY+Ihb=UC^sNxf&snaJ%di`Jh{;OD z{fz18$R130e;`vPaSo$X&Z@eM&VE9Ge}~aIi88{01Np_=$l!of=pAuDOq49}97adN zBx@f&oL~E?srv$Sm$~o2=47ba|A5I6*Rc;Ue^CIE<$dh=xCJ?zedNClG`0hCwk?N; zk^hU!!#rz1>_mIWI+uk}Oc}$%G_gQHai5c1DE`p+5dg&}(g^$4XNNmbEEZ;bgP?d| zvciDbE(2!2!K@?MyS8#q5XQP++VzAZ0mGea`BGq%%biRRH}M19$uZ;siey)3pK=&b zWYftU?&O$RS?*+j>H~Qk_GD9_2;m-n*z_RDL9{|wk=m-tV-<+NvijkAtv)QX@$`Hsy-b{;vv zaFKa!x7oaWz5@&aeTome^8^80~4Q>2R8|x`$=I$t z$Lxmj_`1)C5Nh& zhg8hf|BNf~Mkkc9_)J$`@^4vd$b~560^;*=nJ}hsXzC`H`x-vNUU63s;#VN*`zl-K ze2SHF@sRhNJo8~V5N%_#vAAE`t9tQFA||5Mi%)IEXkp?qNfA?9w~Z;6ZU4H?3Y<|o zb3H#+b*p#V8V|zO)6BL0TLc(#4Qn2o5QYsG&O=*C$d0N&Cg}{4a&o6u`=jS!L^7@n zlgzxtryxTvJi0MqPm-OO!dEMTIwlK;1Ar$A0B0QT5}=S@ky8z*yG|-dS&$?)gb(e@ zmrE6GEXbd42X-rl;6Z><#XI(U>_ZOue8NFt;|+$+U_YY4rk%m=MF)6yNBalqtl-v6 zJn|pJmm~j=_&w zRDffsORKO0KN*Vx!{r7~22gyyy3@dgPKw>#em${2w+}CO&fmv6o-^gX=mEz0hD|g1 zG&N@ej3+my9SK6{Ra;7u5Buuol=(c^C%j|di=-j5fTtJ(1nE)7Ea1;{#eVfvaNz!2 z?M8LhzQ>*4Q#i^uLvZ1HINc67EMl?3j_%!Wx@TY1Ph_M6)Q`)3R52|Z>u z$%W{Gi?vrKfA6oGtF9YqXP1G0qMs!H)?WVqKQg~t!BE*Z{O{&>6y5ud`MuKnf7kq; zMAyG(etSLkAI$IkoqNx(iGSs|x3KdIU<*U|H=+ujf@?r>$0ZSpgO~rGvNO6Cw+z8})AN14XQze$^)x63O20FtTL3)(oAF>A-R*ZD}V+URp> ze`8D`;aXnftgV#|czrsKczdQr!9^T)h5HjYj)X3ih+XlEaGVR_FbTmC$blIpuv91Z z{rekkJ2g-pA0@s*EJ?Y4Z|OEKJ4X*SnLv01W)h}ebMIwVyeUwC;p+BCFv?TFvDvShTvM#Y{En1cB7k$qc<>j<*%fGMYr zqCfGf1NP5IeWi2f)FagY=Rr}f+dC-AitcW;`wlws;7}(>LM1ah8Zn_mNRPFD5frt! zV~a@nAvn6iB(F*I;2pTgMnxeupBvB2*tek}sPkd0p9xj>`2a_doSx{4_e6FJcKs7| zF0BauF)mqCY`cbL1gBwdW(vKH!$FSxfLSj`3`Ohq$axrmSQn)DB&TQuzo^m?m(4LO zaR61SzoAK$eb^Svdp57!aey3mal86D$Rj&q3kMsQa--BdM5;YJYXb3^6NzQdsg5tY zV0mV|-k7gkqFv<+S1t6%W)Fn@8GU-}x^1+})n+%`CkTIvC(D?gD?I*F1F( z;Z&<}ZZZxJLteA*?Tpi^jy);Tu7${264kC1xmewhp1V5weEmmz>UZH2Hg05(Co~>DO;#svsoYFfJl4c(XpOAEk1NxYIPvm z5`7o7WE%%6_Sei6<_b%>&7*>D_s!|{4VOFJj^1p#J)|l5N2eM!lzcRcEPKm4y90P5 z)-M`}z%92gANyS_*uR_@f;6Y;Syrm)F|ibQ?Q@W6>VQD>_wEdh?d6XxEP+_1mNZgA zB6Edb*CxP9gu81Ny|HQi2Xm>)u>i^0=m)*^qx$1+B;EA(lojfxV{|#4x{ao^GdYXw>p4Rc6}g7rr&T1!DYu6D2G`&ec$7art^e8eBlChp z)|js*y0(mQ8t6^~kgGCp>Xpz3`)r|~+rmLQt&3MJ@2b&j13nrzcge~JUZ%P39_ptl zXr&KOh5;`Hu{bipCa<^%;cKQKEp~I+dVP*v2~|4T7hU1xj-AUHUe)=gUPYyg-g{7+ z$;RA2=9C~R>fIb;CLeV0Ewg{5^{KV;!y~W}CKl>r54SFQ(sSOW>Rry6GY7A01}45W zEu?{ZUWF7cTvSGg6wyoo8}n<<9?=)D#HY-flb7tHa#;=`F>XIxL*sq!-YJ6l0h~sO zP{ffjeks^LPK?LjHEQA^|hUrF~7ywfMu8zDsqUizV>a#9BnSE;TusNmx(H8NBG zRZ7Fxv-FRYchlyO_OMhYKUbacV=c93RoliT;|2Tf>ww(oJO1dZK)laY$^xcp-|*I- z!bKmo%R^H%FB5z*uOTF3x8-?4-au@*!5Ib2hbjve`?9LRg9^0)pj$c zkq4SFC78!ssnvJ=t~?k(t3h$|jn~3H;1QdsJ=L*`270%z$;*?|{4PTTP8W%q-`SNdd zg6ZIFY3NHD+4~bz&_VW>LVq&-lT+2TfRlN_Ff<|>LPuXKaXJb*92AH?)?H|g2YQ8L zFMpu1-e7^O$XUwYpbNn~PqV2*ehj;pWu#5b1=Oq)2~$P9D(KcOuvtG#(=ZjNa!9o^ z5A&FZRB)Q+f&Twz<1ha1@gJWa|10kJ6-wa=I%awa#~JxV=OS7;&CKTX7tKrqUut6u zwTzE-a+gsZH@S6p%qQe#u3QpWb*q~RBI3qq##+#Eztx2Kqn#4ZORk75EXTUy@*JBz zmV^(nJ3O`5!yT^gEF@K~3C!{;zi-*hRDJ|+r=t2g~9)WaPQ@+;Vq3*p^ zFPbYWj^eBRdJ!u5K6<+5_FX_QPp13%bpI^Ir=4WN#kiQp7WT5&E^;4^4Qx%hBY&#c zg$pQO-;3&@tZaNM%%;X>keP}NrY>hHq{uvG7LLa8s_Wd+kbhW?6OuyF+r=GjwOfv%hf6eEP2TO~p;yCI|0TC`UKp?HozCa*c6XKxWJwe;T&K!b!h>kElmZVWa2NItdOx1c=;T1f$Ta!HH5R>)&``Fz@&J2CmKGrswuttDQ z;vM>*Gvw8%2pMvBcgU06YBXfC!W!~#$n)JRd>$3rTMAg=se1aw5>|LTPnw{2Z{F^# zw8q+-L>JAqjNddpZr=sM{nOrOU2wB>pP&qm5B~+d`kf-keg8u@JIZT}W{dCs;{Vgo{wTkpydEW3)XZx`kZk_QekJ}&Mspo}tLfrk+6xU2c zVvKZ9^4nFpcN}^TCo`Sj=i*uk(#_9iOp{~f2yUybV=R#dM zt!3oNj{M>*FJa)K-(pVAtm!J?;vhz6o9ro%xKSGvr2&S3^C3l-v+ite-dNJGuGla` zm$iBucH`PES&FCp;LrG5Lg0;f(XF^|g?H%V z$T0*#(Gh*M9AUq(PkmvtbPV+i+VXFbF{9);GL!r%|HmIQQzioDk@Au~Ug=XsIXhV|tq7ALFjaw&;R4 zbfYj40!wORg9{}M_mC+WKt=0!ed|slt?!&}S`Pq=^85xngr>0v3`7#=LJQ%zJy{X4 zAFk_Dto98n@~+2=>iPgNJ zkQ-rHm0{2v96(GVxWZxAzCXu_%7+~Yy(#TB&qH(!S~gL5+N zbya%_zuF5;bJ_~dP_&Q8UujU|-|dXQjEZ(nqarzxn{lt6$hf1clU+@_1;H_FcAO4Y z_lM~8E>1^WEG{XfqU59)v#bM$t@by1_fqu;w`zt{bf2lZS8PnlA56ThQd#pE2v>MB zQ<)R{fjEsgluRi`!YwZEAfEW+Q#Cc`{oS1!=4Ig&GcUCE;y2Df)LMnpnwc#xP~nUS zvkv=ZXHZVmIPSmADfG=b8hx(@B1J^HQz#+hIA{iYdXatNIbWL{H}M(#7|M6~u=wI< zp?4aotooCypCvedL#ilvNJFY1cpSpfh?eSn1EzF;{<^F3l2%T_rn}L^g` z2bKgm>dh}oo9ODXOnX^%pLbr;#N5* zak5T&eeqGnT;^ATU*3WyG$5@+*#a>Fu^$l)ZreB^%F7O-T)HcZC~ZFx#C7g~D1ZBn zizvUNB|T%fQ<-9O|5#X5vLnXETZn;w-K;p%2`lCVs14FL;Bkuu16gcL9*X-NIv=K&)0| z8#z+@SrNyRCu?0~IOClxGF&+cu8PCIoFW69 zBF;2~dN_!nvzh1UB&m*7ag)?FTJDliulj4T8bF7f4InND&YsDsK1bfBQ<{mw z$hy$6UKs*A=-f@{?6~F>_7^@Av^GY30}*e|(2A4Yl~fz;58W77_M}J#u@5pxo_mzb63H29AQ|Bjh zMo`QO*4A^II?4!5Z;n*J7B?q`1 zTl_4JeM>=Lwr9tNgA>~0Sim$Is&pC*&Z4oPtv_x5pAuCexd=}-x8KTVR-p?)h|sG4sLxr)xcTO@8Z?2H?w$k zFoUE=Kg-GfvXk8zdM;jFM(0RnNzy%u+)umTi8PP!(bx=PVTm(gd!$j4kVe1Xi!>Ob zEd;miQ-13rNV8z7Hu5hk@_>+p@~n&t|En|bKgEUrhXns-uBHITnk(at^y;Zu;Fk|| z;uQY02Y&6YiBtI_Dde`>*f1rbS&=J9GO%rq;<5_P9R3V@2}MK4|7$m4TgnL6BD<54 zU=Mk-|B7h=dd>qM61#X-wTREn?riBq%jmB6$Yf)S6OzRW%Ls+5aD&GXU&XbW>}DdE z2}^K4N_qGb8x2V!vijJP#6XZk)(3c%^x+X3DOu=4R`kt-2k#4ey8 z#$&@bgd_LI$CYt4OIHuaHN?$wq7oVDzdh)GEEufZY(>@R8jYFyM*B%7Q=zGkqz^*geDwu7oJ0;e ziKDf)Z6-AJ%XB9lnp%v65ASJCY;!_WH!IcCn#JBOzfsSRiGEJDR^wkL zLUIeU<*vHCJ0!4`{L~PVE#G3YA)dt{B)4Npo*^Vsv54lpA2WmmSh2$Lrb(>lkGqN; zNQYGF9Z1KdbPM3w2~@A?Ip=q|q(cDr9i-#feUgsAM8?^kbR-lC5VDcl?T&}mo|6T6 zyy%Nc<<3jKs$+|Q5t@*IU=HC?hHMUYajP*p$SW#*CzWM9Qo`rjYi_i6m{Oup!yWuzqOr2_GbOBQ>}AbI!cEP7P_+)Lre+lLc|ix@7ntm zN!kj3rE31wk4oY1l_z=@=W)7kfsk#7`{QzBt;NHI%Rhp0j4x0p9vNct`-yF ze^H12T}(rwf5%XV5z=Nj^bh74!aZiCGQz3Y_QC6z|b=(EdkR$cI1A^3+|&YayB34@EEEI@y#C#gn+sWGLb9GnDXG zE+uTWdlTLtN*IOIIpd0GZ`M-0c8940Usfe3Qe3?1#GDp?by~Vb`yr%HBf=d*R?##C z7D)8s1tszi?R&<3%;oxklz7#vi7c5NW*Q+Z>uM`3h94XW-nW>5uw8=F;F9ma^+mCQ zbK;6*-D|XMmZ0YYW8IyW!%x>DkBD_yrl{!SEMY7Ml==Ue=a43VM|8OosS7 z7CND(#BccO?&+9w;wxmA9*vC=?mhL1=lN#${S6H$bfV&k+`+H?=X*$r@|2^m+6R5W z6t*2dQyYjKvX@=uf6YVU4cud;Jf(mV8zdPNG$1L<@aKfH_A8oG# zONh-aB5{L?OZk7cOCx^uT{PmyzjA2A%@nrR9V!735U*(qL}%sD2wz-5i;3Y(p#5NR zs@2O(sw0iZIt3sZ?P$c9#3_KBXv8>&YFOdn>YWibA{9J}=wBN)G{W2PEqkmOv&10& zxJ05oe{>TA0@6MfeQ=mGTwm>9MrZ^AFp5S*A6nA%;b$&=@NTOSftW@*bL@obx`-EO zG6zl{|HNOPy0*Nrehkd7@XqHJP| zR`LK!5dZ1`dloX4(JviKqVX=UH!i1MshmV15)$lOx@01H9j97cF3q~BoVN^py6%@w zM6dlw6cKXfHu8HQo*vo9>bTU^ABoLZ7Nz%Wa3Xpg=Mt_3|Huw#V@-NM_7^_4I6c!@ zQ-*deo`|5=)IfvcTi7Y_Y<-8L`O5eGD^A zyl$_p+#bYW(YU&|lX`;rDZ}(by}mXiK~3foulg+O)q!}8!ZaRFG(~SQH#yUW6<$gu zwb7FkzvVZ*a?**Lm6IOKS-CFuUyetevYoNp6`Zjq{>4+8;LR7o15p6IkL(}+!XbEl z|IBK(C|Ca68PMZ7_U?l+xY?li!PDCkXL8i;%o;ce=#Cd85x~GdD?8kmiiWpI$^k?;m0O9uMcNzbUj-(IU>O&Kc zGZ1g|4MaJ_&O;X?xzJmZA1I&;%u+^;aV5o# zEVopRI{Jwg9<#FCOmgfc%VnH45+(gJl3aWGbPKh(^rw)JRAOnxT^KnRY*7UsFFOJI|y&%_bI$(x|$=pRk*CkB{w-F zYNiq0mZlk*hZNW_qbLbIocvP`qp~JV4CX%N5`y*iRfvF4x<7!>&Hy5(2!>!(2E|MZ zRz$KtIC$H}EdM}2E{K=M1l*@&o7tV+4S|z#mZ` zhK>?gKcl>PkTSUv7#L#z^Nz1mQqypY80z*((EGJUOEXWGjyPJHU2`r_s?pNC<@2mX zOEW}TnvF)c+D=Q8_zjJ#ThA>3!hZu|n_IgMPg^;(SH3iHLxC1P$UI~)P3PnGe^ER! zo#gM8nT{tbGSe~qEJ1cl4bA!YlKXrYzj{vp>&A0Od5HVVT;J9Bu&eHLPQ&bvNBrP5 zB6%o}%nhBoX`}=@*<$wn_Lq^o-x=O4SN&;RDzhDM{F`#x@1JhJ?uXm2r}7_YfBL`G zzV4fM?V}z4DokEd?f9<%@jQ%pcGWeQKU1Xpk#<9ghLLVOKjT zj+7&JeG;0GxR4bVPc@$M>TCEinsh6T%-~u3?UD0^HfxODLh@tcJpSnH0t@<*?DEVM z{ol^~+r9}}i9U&S8R2^5h^v`Ob9wI$W!T!v12MT7i z#GcLKSHt@Jed5=s{>+^;PKUW<>#-XgvUR2*TWJ5GRcM_4rrV%00@dpoIX0xeJWl|?kp^J;_q2HRa<4~l=&>BeTES^gBRi>NQkohTr`RH z@Vfp+eYn9887a=85T8C(q)Bo%9V11>a%$f+%Bfval*Cp^QNMPisB_r0Z~r%>D92tF zs@9GV+3{sY1=N8Lc?_2kM~Je*x2kIrq#{rj2~r_`;VX_a;3PW?Hu06t06w>Op?(xd zt$HA58g#z}JjS)MvlsvuqYPWH2r|fX2nmV9_~Xn-mdnuOi2+QsxCytIS#FRmg87Mj=eaJT{Jb zdmXxAwbLJ8bhSbF9qY3QKTVoaSAPr&o@aQH;6)h%JqSn?Yx`ozXslUG@5|= zzk$Z@-OvA_40(wU_)%5ORArh8{Zg-Ucun5AmpzFDZeobxL8A+Z<5gqQoesp0d}w$* zFw~XfrxhhltgeaNIl`UWDZW@Q!Xp@2R+>hC9brw4W(IQv*wexh(ZGoGIbPR#eAleT zZ^(zA>zJ-ZR#;rNFLvr^qWbpmMSGVdz5u%Dz^b?1S?kbpnccL&S=9q**=v+B)WkGh z!?3ZuJhF`1tMmtZws_UG-%(GwJ5Dqo*7r+(x#U;La@XsfA!qhW0}cxn*9-F*9D6!t`$BQ@j?0( zOicH6Z9#H8TXnMmM%uODsu^RpvOT&np}G8tK2f@s`^Ui!_R#9 zQq8_WTg>0*aUD&b?Q3ab6;mh$>0)rdKQ^3lHCEI;U;td_JpC@`xc#Ltf)<#&#C#fC=%W9Xw zeLkC4t_|*^y=LIHW4Af_d-{-+8w%`H4~e`B2#{Gv-Omh*BDOLpQG4eu%(&Emt3_?IBnoK=a*P8|Lt?9g2Q zdYQlAvSuw?RATSa(M5dNS#I`safLHOl^gsQEOK@*>GM{f0;ZUQlG8OwV@yfi)%t9Q z?A4CH`nGY!`55BIi!K^g4@~mE{HxDo2xmC;IN+up=r$xOx>~@sZ!hfa|8$o``MP1a zzIXp7PqdbuPR%=+M9Ih-vTdeyT+_7^t%0R^ zA0l5)Y302%{y|>eRik(+is|WSa+XGUBBgb1@2x&-@MgRunVP!UCCMH{U&=)1vY+}& zhfXF!fjL`BT!S0xlF?v=kAGYE#|D^M$Un(;`c40PgXhftp!i*aA@mn{!Tw?%OF~Dd zm0_{bvkc$7ZOChB!-CWXO;PC;+P>B%UqP7$$9JR&8&en>WP%tYAp1e?rg=lX&w`#@ z1=c#JfQ;2SA!K1M`qai}VqtaFQAiEOJialEjNQb^$~7&?HVg+ikP5`FB+SiE%SIK? zc_;KNe2$Tmm!;)oDwU|rwW7M+`tF3}J_bvOGBa4~)@vC?dcZlO{iAKP0_Fnd^oZfm zxYRj~j~RJAHn}U1`TXbZ7F7XI{(wAOyGw2^xZTu^$H=wBY$--0&yAme{k*&~;zgf5 zBNx_Y#nk|Tg<|Xz3X@iJ)?jm?cT)hQ^*iX?XGw<3o}RdnIA|U9dnSGbabCUwH-G(# z%Ot?1cq;1KaVfso3HDtf2QhJNEs>iK=c8lcG|q(6=vs!0`pMLBcDjySM#C4os?0u9 zrK8QunKdN1bqe9$d7HPZC-_*h$RuVK-qAng%KyIDc>^<~2qNDzd;NIP1;-HALC2x{ z(e39~;P)E6unj48v*XS@XM|?z!T>X+IoUQ=Zp_0b{3FOQY|#n&v8wSP8CLe5QmW=T zDSHx&g-ebHGs#=ug)GXE`6T1W?3E*PXgqGUXRE<@(ZLi;{=^?`_BU+Yt#&B0k}`by z-dWsAVK1T+nE)9YT-Xwz-**HKao}QgY zxXf?a&V!TP5%%RCXRK7QPnBdDh!Nkx7|i#1LRAk1kFYAMjed$%4kpd5Ts~nxMLV_8 zol*!8iJ&(66;Y-jw@DbSKBrA%LL2@mFR<5bhTvSjg=fgr$=);Vilf;T8rBTgYE5^7 zxwT)fi4BW-W09}p39ljuLHF(PS4*M2)(~z<@gsRR9z-@IOLl=$FZ`WnCnA>fJgPWY z2z@-uyBLdEW3r}$6>ciDB1s+~2U9>>y!5v{l?O{=-*^l(S`}SyDqZV~)z8)w>JDfC zUxIVFL*ZK1`j4M7FAR0qRL1AJ`8OVg3_8x_hlP+YH56tv+zHAOE`_GoTywUhUQnSn zBpt#J!o2~4@IDg1o#|Bx?zA;UB%r@Q*6{C}lZb-;x*C;qYr{IT2w_l^sdKc2{=}sA$BX!sh)A~#h!w81w5!LacGNZvc zfNAA6z9SDpKcEX#Z;-@aKYWBQJ~|cpg4mIkPJVu0 zUY-P`13}Omg{QQu;H^Rs0eh+~p&z8Q&>4nm(TpU5e*T6}c1Wza$+WibLDohWLI)Sn zw}oKvR9P4v>`M_^>I=K+ZCC-WRM`Ysn(>ZIgXQ6Pe`^*ZiU&Chi+sM+^lO`)yv*!; zR`_-jpjXCiE>tS7Mobd6+fS=6+>cQ|GCy>pe9h8Gd0MvKp7#w@z57DSpHVAPzd&_c zfhV+oY)l$A3&syE7@xt+-7T43_B`LIEf8~Kmc$&)3=H}d%(QOMVN}2ahwWgeKRT^H zT6E&T$QpehAM=RBfJS zV3YkMiP&3l56X$;W*)4F4z6?O;^ds(-+t70%tb^}zqW|s8}J2|TfGqep4FnBYp{MY znBFp)5ftVN*%KoSW)A!H--Eh+Gks_4Qwn(JTqAuj8Fax^PhHO0Rk^AC-4Cf<79U!@ zZ+ke`cy3Z_AiojGU)2--9_us>$@hSfg=;gjU;5Di2SzeZdHXrwYyWg>P927nP)BED z)Ae(jG4p0ct~7nB&BL9NC+069@j)HKty+X;|D3k2?$DMM{xuy6yPXU z-z1b5PHDUF%EvU+WHgQO+O||1AIv@QffyGvfG;}N{zG0K?%Ak=pn~j~6>MzJXk$wr z=1q-jJu)w^Jg+)FIFgq)8g|3Uv%mNHmyCmCbWO6@`;4H=ySS4!DV;j_V-qs?Fygt) z9QM5B$nSuGaEwyk_~~p?<3NPXY*K5z1ryk$CS*`y%bILOQ_~ggbCddMyG?370940T zaS2<+RqiI03;t|1H-C^}3a%m)U-DfYN&eyeT_`S?p~aolGwmqnvH%I>69b_;o7^qw zC1*>TM?2@!&MexQJvjOETmd;7KhE6`hHJgJX`rR1$vCn>3yC!&w^^JfzGjw}o7L1! zsPWKmrKR3TM8?ehVEOPo8f8&ifh}!Nmzzp+@!kTw-A2&%YS|i_HA}b{B>vIR1oM14XN(wdbs7MJPwFpt;SusSGTgW>TbE^_B}7M zggN~L8kQSZSUM_b*vGAKJDxSr@VkJ4hUNBINe3Dx>US?_PzBfKgf|Jzv7b-{m!y>o z>9z009JBVz&Du+BX2x^}o~|JNEpWcn-t@WpTDz2RKqi=#Oa>Dh%}Tm1ty)@VZ_v`} zK)~KLo(&1bGrMV#VXG2nnZ*nO6UAgn>s{xhKawiDX1xrfC!~zvvpQ5Kk*myPATj|@XOZpaLbzFB{N!Ng< z#omBkhfr5-<6}cBBsmXLL*2x1z14Sz`C>wbU-@jd^KbTZ;Eb>|>imRQ|BBQLuw0uP zzR`tjw1)LXbrk0e`)};K+6=diI|i2`IqsmBmHH~!38P$Ikvw%}URt(H{Pc0H-?Slx zP8If*rUE<)2o!_@hynNte4~BQZovNgE1f(UWC7Og&V_gTC{B_fG zS)w{*ACaytUiI5-;hu#mjMOY@b(t2Q=-V!z`>T64NU(o)ZIoR`N2C=Otc=(|L( zmnlOZRy4|3byr{CQJ!EK{`J?%A+~F(6%Vqxv!yQbHH<3D3ts4p1JfGjND?c=|{u+z~&c__SJTG`Ql9-kc_?PATYINNW1A_{3>X{1mTZ`Z`?3ops z5#$O^lUE+3(_}gVimxX-RTID%CC3(f^*qOrQ|BNJ9~T4i4v zT;`}zFPa(S!e5?Ib^*6XuE^q2v^StvfIL^TUL9~QO)xh(=308)kc?y*3fF&-c;MW9 zip@}xp_r?3Gx1~0eYwR!^t8cQs7E)9@>n;?utOdOoK-PVMb~tq-B_<=7fvM>kC73_ zI5=8pjlJo7N9)(q7;(VTmH^hQkk6`VPUh>BVu$BxP$aM6Jtuk^hHU3f2f$Cn$iz;f z-o8p+M5UvS4L!1WjN?S~dtZD$D>>D+H(qWIf$w1UZSmrV&Dfqw{+Sg$92kFEsFT+2 zKXd@R7!DI}+f~rog!JyY`cc_yi`KG5O6i2Ta!KfH>KQ~m=JW{2m_Ze61PbII|8!me zTs(Kf!n~C*+xqSs)<4IJirc-n6m2c2m*hqslYefRGS`z} z_)lN7>U}aO&AdZseQ&DSwBoYZzYnw6cb-@wG%aHNDJ(oOmGnxv&ab0%qI&E`;7^f1@2(d==Pi#>zBX0bE9K3q>QJ<$)z#+~nW z{sm}%#T>xh8MV;Da-&bV3xQD<(dNwgMry~n*N<5lPuw7U5rk(EQU*NsN476+v?)jR z;&|6BeI}*F6J|M)x1d%?q4jotnp zdpkjT9h-Ob9+ss3lsy40IarY^K&8i9UlpNnUa+&ZtY`&K(^pSV+{vM?zSmb>ObSuM zT|l3~o875udusaHqFYtU7pq#rFHY;hqQvKbNX}{QUh@as7K&vuDz#YAK^Lc?x2+{I z?VD6ei??zFf9%6=rE0;HAkgs3^E`IlO)9*0W{o0R`NB#h+=TnkVyU zMH(uUSHEF3)`t5iId5@9Kh~K|)}YAwJgtrVl)w2iz0GS&W>!ZZzks(Na1Si3aM zKTA)r`AYRXFSRHyak=0ux;k4qlem-``T4E$v&8wScYbE`GqWYq$`1uwB2DIj#W0i3 z$<8zC4@B3OTJ_}5Odr0mpAHjWEMAvi-T0suNZr~^w}!lDEqg|5W%dIo#fMNFAOQer zL^;V!#|1vs(d{eM+EePdce(!BQw?pJM@)vtRU=udLBeAqqFD1TG_QN?p8&VK{y2tn9w#4h;{)P{CzNE6a>vKaVg8LVa9>vs(f_6)xk+LHJ=rLz=e z=8{xX^6xZaf55;3v0**;EXuRjG{E%tvY*k{Z^7z51m-vq4Qv{D#kpHEx$Rsa3%A^iMEY?~s9mVx!W2m2L;34^A|5{&98yOZ?IIwG9u}RNewfWHyN59bLVa$JA=bEEgXY z-AYaVx>o|1Y`pZe_>}TO!v{!%`;_J{R(b{BxuUiVx^?CP2~l~8tFUVfQ2@6Ipz|g#An!H+P}R%7vfCtkeMvE=yhh} znrLsPayBULs%n2fFqc7C%Q(If{H_aaNgj}0dm~S<#(#&zKSJAv#M_+!E?HgGtv0Z9 z0kj8Liu1i@$iIxAYBT)}M89#)Q~XgxB^Q29*9`0nekM@bU-werk}ZOtiZuLuYG2EW z0Y5+DJCJbzATdPn^PB@eQ@}s+4@ra2r}k+Etqll$v&(=`g+NI89ZhZ)gvKz##!4yG zv!1Lb#{>u6nt1ouy`KX+DZ310jllNI=$|9<261JJm3mbiE|?0_Yqc@M&$nL&=Z+e9 z2XFLSV*;|WzCVcdK)oh$b#-*057F8neS9>r0LCa*IFNT!KW5ab-VlgB;43$dRSKsN zh(0~hylvx+jo{I&4U4teP*{Fq_s|^7Nk?((kkV*ahr+ zozL_5Jkw`g&UFy8o2qA8ZxmhDd3N5H7UOFft=)n;ItE?t054{|uKfF~niJF5nm(A@9vxVxP1yJtf}Q0@M+Y^=YN9r!+ZO7TU)H zQK%o`I2QKs*R7TFV#7Bjq1NP3r@l}(`|AZ@#BfOMxin{g=DY>F+3%YtE>jsrx+!&g z{WGeZtS69E|I9jGFajLFi?uBNB5wr$w3bC);;FOTKYNq>GB4g}Z8>*zl8=Mn>gY4N zXV{9@)5k#F4vwR;^J`y3tIiUe@x&sU8g4YG&<#L?w%R{6OT9Ys-ohT>u-~(m>sCYS z5|2=q_&vsRq%#65d@pJCLCzcFDK$@w=RD?IrS3>xyQH=bbN$@*KfCVx+usNx0qY&w zPgc0{PN<9hAT=2Ggz5zbQ=d!u zZdFt;Y)e1nRy?uJJbPL9N-u2X9M_K|{bfxnJf*isqshre}DBP|xb<2KWQv zMh<^qUrnc6{FMGdM@(opV?|5cqR|>#mZxH28lFDCoF6L;$9(k?MquQB2#?x%~%gXba zZ5FxQha4}#Fjh3etqFx01A&@H?oRDt&%a6ZnYX39CHEK8#xmuZr~vl40=@V%O?(Q( zA6#zo_o@795$+HRO7dbwFMqiREAm$Ii-vXXD#pN@x=Y(Y8XEj9H4uD=R!hx5{rY02 zU2LE$ybaH|t2(xTEkeubi#?-$*vDL>5|PZRLW;vG%~&E@L%R$#@yDL|!Sy7+SYO@8ozF#AzLC;V9mjSX8#4I_^ay_H;09V>d0m+JkB{=!eJYN_g0HQloLv-R~2 zo*;4JP^#n3puAKn^l=SX@BuA_-iZyH>s0$nazM7Q+5h@XQne@iq%byY0#7H*>FVqJ zLFge}jMV2i60RANEiiLQL)DX8*yZs$>B1`gY_14UA;kK8^EAwgeBN1eSyLiWNs&FG z5kXf=WDS3L%^9kJZ~G_;I{OD&0|zu451{HlfuND5Yb?9iZR5@4{`5Ckx-GI+Rl#40 zK(U7sdZn?Mn(fcY30NA8XX*6_e z3!3Pr)a&ZBUFCGv<-Yo?*}N#Pp=vsRA%Yh%vc&IT35L9uT$Qa{^v2r~IiJyJCJ|Em zvHyqC^Jn&7_zA&qhM)LIc=Y}J#Dmme_=yd0|MoAOHIE2X9O~MJ{KD`~vEk_!F=0aF?yC_UycVCk$7fb?Y6ZTg&cxiXJq71e5jn z(>!&4%Nq@KMSIUM`ZKE#j)(%X2kN%4#cF-+gJ?C&Pr)A?X{d8_YhV!c$N-d>8HYbu zQ(O5J{J}}tF)^MuuX4xZF9HTzoHy3<8S}(?9!I(g-oXs5qE`(YJPtwWibzC-$4DL53a_ej!p^fl+Sv?p!-ZIfJ~rfU5CaKH*%fi zJTc;VOp&`0tn{!)gENn;3FbWs<&ahEpLq6~m&8EIjOvWDmrB&V!yMV$=j>~K(7b7W zzS6ehK>LBLnBTL;U-|dY3&|5R@)7g%I5ik}@2UBD$a!Oaer=wZpIvNJDtCv!j+hg7 z7C8&BDZNp0IC%B`W=9NvuAH%7Ya3(#Y-LU)*M&E--TC4Xy(0r-dwkzNArgk(apX}F zo6M2rXST<0PEX{Vc+Nn{CLbprq#*q_J{Y56n3~DT8PY-c2({pjV>K)ym)GcS zuisVAoLz;@+8!g`aa&t*K=bFl>YuOoHXgKiaLeI~QIgZ?&V3t02QaKp!L2VBn<*<4t?6 z^9HAm(<2$^m7rmIDR!28BMxGYKHTi43o$}UtJV7E^tTNMwwekn{ zo3QSxBgx%f=T#)Tqb&C5n)(Wk#*A=M8@~v_XnkPN28niu;R@T8bFacYSd7N;1&x>F z&ul616ri@oNPq2^uB`j!_7o-0o=Y3)^;lGb$7H|ZP&q9|cLU1Lam(4lgZ*{S(X=M| z<>Zms6_Ngj^1`+*_Oa%vFx1DahoR>j-Bq+V^H`0Z(tHY3ZV7H6azvS+0*{(E9QXp+qR)`!43(meva6`H*0TWB zluW!OKOm)q<+Mt*R{U`uxZ|e6A6;PjHjciv(6H~$s(K}@qnaq zO@ljw-s^XZ&9BB|$-4Oy)*LmG`;;HC*zb|Ho~A6F0hMnG{r{5nf{>+#HD@<0|*S%PmQ z6wZJ#k}+B6#b+Qsrc=X)9fQ_;jqQMU5QlFV8&;!w7VP-q3(d+PjCZXb^re%z@!X=u zg@uFGH;yfCJiVat^8B@9J1I1K*(iByE+y0Wzo2A%eCSC=cemBvANJANYY$B;IzJ7yC6CHtzoEw` zQQpOW^Hdl*TYKz74GWsM*J$71rwR1e5hTTcps#NF8oX>0Z?d%B6{5mYzqLPVSBa!e zKLV8-g1=7_ZYOuLE!(9f&Q)B7!WdhS$rI7hIcly+Yyd4|da*2UHzsN-<4@C@$@p@W zhYNXIWKV|S;#H`!~&yp;Cu~P_VREOdj;~BF*U^s-R z)`dHm%BhEIcktLw?}zF3P5hsU$`>R$qAuxpy5JVVjpz92lmYM@4SF6E z4Gt(96AcXL5s3Y%jD%X0jzsm3SNHSyN7j^B4LV6pHDhBRh+Wpi)CU-3^j$j)Y4xrx z>_>q|R4z8X)n7236`r1__Ig3%RBgEzOYm%E7rB*jhs^)Q-uuVdRPO!%dzj4-W)hNv zCP_#_$gk0iX4o_&O^$>lX>ufKMsmb3GqQ~>r&Ml7jw3maRE`i1GH6C}BuPj}(%ObG zBn`=YU(fg2duDXb`P}#S^Zh*T&-age9HpGrbt1F9 zeCw7M*;x;}Z1YW@D~X7@*FUI9Q@6jZ{0vT2BGmPf(6N15bnl#TO8puNL&HbGsf3Pw zBGU`FOMX72mZywD!2L-}on0#0a&#~!X{iQb>Mm{5<4NBT(9EkhIU^IIR5bJoBzD$? zCpOlVlVVGf_Ld9gOY+2mspr;a%~vT4YES==y21NZ@L6Z0E?U!96$U5CJ*|?d#&x=d zv}XV55uM4+(@ibV!V>V92+<|K!_td~@EDSH8dixz+F+hNS)*e^@A6 z(NwZIj__!%jMSgBH!-@0(=+hGjm{Hg{`3kYHw}elsD^a**4>?AVc94@%8Ijc<+WR0 zDymfc_>_tKmwPKe-PPOwQO_ycC>U4;?*Zj9<$Dc(R-#MvpY82;{yD#|*JFouCslA; zPF`-#_3@0fN0pQ9N0R@1xV%p4_=1NFoo*Rg9iEndF#u0KvUrNFoyT{Q8~{>YGn@1k4Y%e2yVC0 z<#4&DPbj`-c<=hknus-Hq1_$Af?KAc=O}*0x(gg-N}Py<6dkulvf3Zv_ghGb2CdCrg<|paIR{;cYtguCumGu zS^d8Jf+eNTKaIEUxGy^Mlv%L%fbVAjV*=Xm zlbU#YRZNhJa=ih>Z}gfPSs#y|=_^q=bxy;SI$nDAQQ57Uq@!5zA+dCujB6bAYu1xT6?-{XQ9q|-> znoXhl%?V$`;pC22#?H2yO6dq`y$AhJHue=Fev}ph?H;~3S+6BFL`LJc&M3Lv)}Z9T zWR1JE;ik?=?b)C?7g4wlMCvqB;m!5zzU1 zAAY9w(SWe#v&x2k*Ey}UlcTwUU6g^meM6pgPSWtK(|T#qm?nbMq+Kt^}JYZuNjer5h#Lmw;7{JC0m_H2cdwFlPSb6=m7q&_K+_*!dPrk44bayI3m zzDd3+x#?rpSL03vyvK1~jYqHKTc7esa#EijDL!B8&v4ageGS)DWw~N4 zn;g4pHM^2VdX{X{=tHMX7gDMjl*Qm|T`NmUL{TrueviPHOBz(L^|&l?)*LuXB78lr ztf{EOKP6SYVtdoe*{JhRHiAR0{8-}L_^|F_`1xY_@!n9bSAIIQseFD?Hu`o(SvLAK z=w>5*v2vkZaJvTVlx^(&CK!F?d`a-qFF%%hgqD`KR-f0Gi?upWKfP|y0G@NJ9+vL# z;ctgo>d|iE5jzEu2q9+!^->wZX*tB_6GWTk?^zjh20gO*`MEN?K8G4HoF# z%;{aRvQlUtpo?yfMXUknH>FuiP)%b$_DiAc$RFisicfRagT8ia( zk7Z9%=k9qmqR3?RUd60Go3E+lXY*kd#jD3&18q2>^LrJe&e2V$^}Up%#Y!V_GjR~8 z-TO8gv*a>HNoSK!jx>rQ>eYkgh^LZvHY2 znoSyHai4yt4*Zb=Z9@kd>A-6oxH)t{GyCFR=Ri&OKw33>oP%aTpr z!oALrfildAdwY-0eoiUW=l4D#!-6-;N(APtC-{}hSoOqDmR*wgSF+A*20fdt zEPfT|l*MlCCNDX9Q)&c{uIYR;Ny)8y$8=A(oW!MF)_K&2chh#+&Aw4a2^qiK`dnRQ zh>v_WpCn6{=8JwaH+pJ>Ona)5k`vcPfx0)4cB|JpK3JxH?@c<;E6^p@m(#BBGY#fd zB&h4;S|t(Y|K8?3po6^v^<`fDLgpk-UgQmpdIcuNM))emozU;z&D6eFdlfDtF7Zv| zFG)W+-bFg1e!Cmhi>5_5a@wtz-TcTpjjHm59UfJ|)=1CyKBB`4n9+R;a%eXbtb5DNct#PfZ^6)BnY!eZasNw9N zKS*v-pQP)3+mQDaofG5%zxU=c?~8VG^_QGFA@3vPePqb{3Z4=8Z@wqzxH-d3z)Ffw z+-FH~h1>_vkQ1%q9o z->y(^9X?r2x0C7{iS`w_$Ev^eDJLGZy*T6diJr73vT^4U6)`XWR$)*XruTxlHXNAZ z9?+Oey;15Qt?15}9V&j@cqD2X==g%AvYg^tPPOIADqvwCQn#NSH)S7WJi8u{ z3-6#^4AIuWAC+DdA#=%eu8U1pnbAYtpXG zswSf0(h3gVJf6X=mXVgZxhXXmAcM@f1OJ#zOn;jkxc#|rG)&G`^mqEI6m+U9$bRo1 zWFg=C_9=oVWbp6BVyoVQiwF1KE9L122L(vZsJ%wFzgf zUK)?I=|&m3ZRK$aaBy-gmVV!XCv6QUMTdAiW`C|e3;93hsGc-AmDQ*kS?-SX^lz}A zin%HSlpeLdLEOH{q3dP9fmf-fXHImo=H}xp*igTfc@;Y))RO~mP>*w-?8n_qt6@do zg9?Xc$P^^xdDrYva&c#%1lkqKf!?zHDwr%SD!xB)4~^rH;zT*6P&S^>PiOxZ#U(Sm zsYlVWS(lcuk^5A3zEFKguRcTN z!k4qUsdg&4+;vqFtPF6jzy3^#e`{uO*GWS&f4)09tEK$N{5jSAq+{mKDe3Eyb8cVs zF;CMo?o_6&6k>j+OgS~~2`PnJ5uVA{hd7?Z& z`?73s$mf4`jL_%bcvQQf$5Oln-K{xx*rjw6K?x)l1whKc=aa*T)u>+Y9w3;Z(U)sDzNIh@7)o z;U;Vo03pB1%VUe6|kfw*@TC?{qr@jCko3blw=v@hpXQkRSZ z%ET7TaPHCM^Wfh4R;q^MJ9j+K+i*0$lCP&hX|}h7>5*T({b$riU!XZ+;Z)hYuZp=q zv0}<^8mg}Aoq(IIhD_y%3wj~q>DT%<7SNL4mql6u&5Se^h2p%HwaL77oa8@K9w;y0 zDKGe>L9{M)-Sw4qeciuvAGzuy&`QI(&v;z3mo(zfX)d#Z>*)?Uq%`V2nA^#U^AG)0 z{PU9O&mKU$L?;z#)`ODQc}3C4P@q&@sNLTJRnwQBcx|Zu6$M*ytA~u9EVNoVDu6hw zc5i{|8RAyuINs&DI(}U&oS$_aw`;pLpMP~ML7)-qgBlb!Z?)3z%#B>L3Wry*<3^#b zURU|ML(h7w*<;-%Vjxiwq{~=q=@j#>nA4cDZVcv)U2`Tyxb7$XNwHJ~^N)z7NY|X{ za;|wF%&)=xI@}-s*8Cq&81?-xWkr%t-GXHOI{MYK9%piIF2W5!AZ{~BTV9+ zcs`siF}4u#-N`rXPHARWPQXnziCVJuW2K(`!8VF9In1Nt_f)d`R;Vv(DkRPj`J)}$iM155aD0%KvxTi8D@9qcgB}{sav~&78Dj#i}u6v%AKvC9(YWiKYh8~c8 zT^#?f*_g$%2)wNHpuTxN?2U<=gN?+1$P=uZ)-M zU%g%D%9vQO-2OWh7?hF6kN&u@`vJ_eD4g{M~l)& zdcw~(dv-5F?FT%utaN?GJ$ZT^j_6g<<2(`$PEfzBJyjo1J?!k$^GsKir=h=dO8ZBsOh_-aem|Kt z8tW8?J+;isHp|aj3z9=_m4e*$nL@5ZWl1QKqq90wc3Hu4*Hx!>elL%Ldo0vHgdVH% z(o#dFB^`AJ^in{AE%l($VfP*nCV*vM(3-wiGzBd!$r8Ig1xioL>tgBk zM3;u)71bf#!YxmQlRCVd^UA%!3RrLp!B8}ZJW}FSmqay_+FLhw93v*JxmI! zD?Pck4#-wGw)Er~=HqNzLlM{8f2uUiST4{sXELFRd6K4nQ8;oU5@sV)NtZU8$dfI6NgC(dq_z~P`N1Ez*g zd$;RtXHIKraW+qik)`K5vo0KSJZL#zADQ*;csadga1$32h%0%Mawt>?ZByZ+V{7Hi z8KiT{ru$%{*ts=))+G0=f0E1fF(m02C24hKJ7>Sq#Z(DfYZJQWxe7z+V@f^e&JL{I zt@8}Fb6;_<*QayqRb#xYt93z7`82&aoN&!r$gIHYe9S#l%fssK;d1+lXG6uY?)C#} z>to^XWdFpdR!ZgMX=g$1*^(gB5xCSv_eWLgR1%IRwzVH9uT>t{^CJ)! z74}{=jPq(5Q{zUc0yl>YHILLDh+nm+%am{v*CZ@oH;hQhDs^X}K4 zQO@v_pj1F9F;yW|P-`Joe0408W}SrUiZfz`2T3?q9>J?XyLCPrRA!I6F8$}Rxn)cI7+ix6;XwRy5;O*b#~{N@_F!YZpm>*&*!U3 zj*ln=0uA1hpYojn2TFp4Zbbc6W=ewHNj6F+Z4%kL=_Kck?MiCg<~uNYT2ablax}}D z2L|YA8c}iwbq|%UX+wEB^_C4iu?qUz4Bp=ELxSh#NY`m}R!8@kb2A5crho6$1)FWP z$6U*5T-8rbr0Y@8otPk_^o4rA){5#q1Cci>cykplEs=a)gSaWDwO^a~|yL0eMoZm!O)k8zQ!6G%VQ5#1V$9<8g@2_Iajg+83c#Ez2TY+153C*!(}F3Zs^ z)jY@2g8t+fEyZwJ*Gf@GALoiAQS`sSO0J>!~;i!GzGBCF!({)~%v zq}2`gk7|*P+67(9+BY)BN3_&CWXa|kS~Z+bsXNjS6`af%U!kQwk3&!S_cMGIvp!C1 zjV~>9q+-Drgm>E~x^vcs^zu_>;hm&5!%%pehVRfY)hQ@2-CB0jmvo2pKIU0Btg;?{ zjBjwgxwo7*cj1ly^N>%vTI%P&%#usxB+t6OxO_9@GUqq;&8Xcnb?%K1N8&G|$^sQs zJDXCJBC#$_)vK|2Q>o3*LpC)aXrsMZX_#N2-8%#I3<7LC%2bCPF zI)l|SrI54Gmpl!Wo=<0q4PSZ_RZEU4W6ELZk&!ZA7g3Xon7~CG{zB=E3cA?}#I=*L zlYKWn=R1E`a9Z!HF^W1B*VK+xb~mtV;WBt=v`Ca|53vHOyBOACDn(cIbq3<*jts|R&NVs}E5Jt-EGRn}{i(VE>fc;$ak0^(i*%c~R^ z>KuK3J6S0kL$}#XmOa4-)U;2JSVO-o}YSE zD_mB_FRy$J`4zk%50zwkDDK>kugte5Uq$k4g6P+H2n9kfkw+5TXZ>Gs9Ee-;Wax^` zmEUz0{2NynsQ!#K9CA}D=!spL7T3Q)?|t>_LWxK3aY~`oAKKx}ZGV&3lT5XHSy>Jgt3Qu^mM z)^ZBh@cfE<=_=D#?KZ3U@~1>K&3TpP(%Wip8*W{PkB4lw^3SQk119+~?=nnsUTvx? z(PBbdihVMgO&Dk+$%-=6NYOxpn{)v|x)DlSv32Su3bN*qe^x%J6x>&?+Pmon{L;7= zO<#5zep$$UzmGc=h}*A}ZmlEb?`9}YWh;3$^~4b>r(}0|*si(*=H`)X)Ik!Ch=$I0 zt1Tj?g>AY0C!yX|4V!!L89Gj^tyOIU^jtn1wyL!8p?hm|wU$xbG?BT{+KWSlV_Krz z+*;1fbqa*FYfg;PqQE6-jh)jSEu$KPLpK)$!)aw``O#7zahuE@&1{uLaAe> z4)h9CQ?Gy~F3oIZsUZ;8uv`ejC3~%KySSC%3dsHVrLsE46P?Y<3w8;OEIn8MXj>@u zHbgnPsAT_EXGB*;pFevk&ny2Mv$acptUzOy7+sRHk!#Tl_;?-enbSqzT)=kcH)#G} zN6h-7lLI*I8L?BdtksRtv*Y3PFZ29=8XS zJ+f!;JIDKV9lGljMk~AYOsTt04Yp_g@>5ALO*YiOkYjEAZkmhEs-%=f8JMY4mu&Z& zS#z76Ft_v33tDILj_9n1v=1KCaTTm30Xiw8U%K~uF34Jy)DaOp!pm1qxhL1p3WK6& zzVd|IvYK;EIN|B=mFW~mp;BE97%vQ@@V9nF)fzX&>vCJ~aXZZxy~et)?K*QG`C^h2 zQ9<+H1MOzK!mjrFH|oSX{;~69jF!~R*|=1}<4qu5^~r_ep1I$9^?uywhB4*m7i)Ft z`Wli~Q{ye_`*Oy_DlsV-7ameDm?P5hNcz{Ir<{}P5P-OW7G&phtOVK}SMn$eurv7c z^Cen^Z-vgMpv$CPXE$8Vn|o!VHh@qt_c+JC&;iwqmwkpo+%x)Qm(Dy<-a4-zDO5b; zzI;snZN=FVXX2Bg%G15dt)U3L&gxGaWj`+~=Aw2Hd5JMS>C|eHOSY}+bbn6^(FfvI zyr@@Vbxjv4EiD|>b z#Ylbm`{ARdVJW@2R;qkxS#s{^@5_2pRk)A;ov!hLWub1ght;SN{HsL$=T_)Ca|0UP zVP8NF#0@X!b!i9tb69v&*)UW-YmIrg#_UcUoBOdmQ`2Fo(?Ipwo89s&+(q9GAD*Oa zbCWKKjcn}Gv(Pj zl7dRU&#$HA)3ZQdHoM!uU1M|^B3d@!T#Z!jg`Zoh3lAKUH^sVU=iBXEc)`Zd4GWG_ zYIRcXP;9NcMKVY7ga*|AO_wvWvOIK#i$e^<_K`1lO99C%e?hku`!o#Xlt&@SyM*0Z#qA%DZ~`;6bs?-8#u zBqFazqE-~`p}MgKIOO+8(tB5+_D;QPl`Y0SI9N?zF)Mq6DK|gPzR#&?LP{kIl_^wI zseP<3cRo=4#SNAllQkVd6Y|QON8jkt++U@W$)uLa(cL~#RRR5-D4kX(tGyi$vf5NQW|bT$Q;^pRNz$qD|hz$ z-Lu;y4)vS0`AGRmOilTB0!A)>6o{(xzWW zW&N*aU1P8wJnDSfmQvL_E967xq++dlH)R{a)2eq#x0N4?W8>wy{?hq0eKpNVkrDGS zw^V~H)gf_e-DFLQyyM=S`7Me#B?D^$cJ3palC*bvQjY5#M2%`kHa*UfyWAsbPu`QU zp#>wlDyxGw5Z8X|7|$kkczK+;#a8bAbztZ;^1sw-`knf)gK8C^W!lEr|Ybg4(KIq5fSrJ+({vZD=fz z^R}J@T0UO`Tj%8dbilv8{A9C`|E2M-`LZRgrD5gXmaXS7*^`6C*3*APm&j+}Hk6{Sh zIR(;2>gEip&=kA(o7ednT`Jz8<}m!Z;xy9<+{Sr+{e0O@SCFI$O%tcbke4!<%-^$@d-BYVkmW$!LCM$;3t`-`@F+@c$9Z=rY)3&moy2n@KC#|JT+85}p3DI`;RVy_=MknsrqH%P9?-cgTnbDNLtO%VAiY)RhbC33^J`o$pjt32rNyt8Yl}w@+>N z@j1MXjQ{Hy-J_&;bdO(%9$$11O><f^=fVU0@T*X^;wdq-rqVFdu+I!}t zG}a^cjPrQK!jgi=wMK=?>JoRr#!&g7u*lK=Rg<-pgo2~|n^%#0c=*B6q@h7PfrT`RENx=FKwV zx-L{rAibkpR4H{qt+`8-?#GagSWEwn#?$3^6DsqV>fpR^t6ntJEbDbXou;ymP(R`58C-2YgheG z#Bj>FV*f@ym@uVeyW%-LcE-R2tx0-Ae)dis)DewX#2CY1kxJx@3Gs3^-&$bO((PgU zw#<|bJ8pPdJNp`jyU?p&Yh*a1)uo}&CMax!!eI+NAZdl#6f1F->Y-1*zgFE*Vwbh&@`ND`ux4+oQYD5xX16A9HE|1RXXDFt*htrcGEov1h3c8ynQ^qwwS zQFFwZDoYexEBPH*z1HH+qR{D`uQxTFyoXvAZq~C#O#v8}-7$S?Dk^HMl2eEEdPJ$* zyWreu-lYxDJFDFW72P9TZ_+>0m5%LKme+D-TAT;&pFic&AC#1zdqQRJld*cG475AQ z#XMH)HDAQJl4CkNOoxMf5v(lsgA?^rkvsW$LRJ>Jnk%cwy;cqF{;itSLiC>(3S z8|5f4rK*bX%;KuincFFv=E|36Zq|8oBDVw?@~jg^a6-2&-|L0na*tPm|HI|#aKPnj zVV1p++uAVWr^GkF_AajeDtNGa{3iH*mv4bth)wpJ!E~XEZ-;Mpxix%~%kALWE_Z~h zxEu%nV)xOT0J8|M{7HhpbGavcz~$cXKU}^a&UN`gc(uz9!ET3#cQE{hd;C%O4=z6r zXS>Y(E10O0jscz(JO_*vOadMiWCH^PGlBaAuK>($ng_%Q{tRdaigziXDya88K(iLT zYXE%~#k&!R5o`l03vRnflL_=eF@`iMrPoe>?&`Fmgi$*}_Q!q* zr6=d@O;+ppWQA(KN;vvHlMbxVuy2ZhU*(n?w^?q9&N?cK%5kh2EnE7!eNMQtG)S(^ zALWGSv|&(AL#qR+ERdtm+o+}X zX>+87MP(ey$BZ^uu=TuE_4EvxrVCi}UN};+H!7BLy!$-vn-7g2*Sk|Pwd}cyr*cm< zXL3W0ARnykcZc5HC;!j(|BE-tjG=|LlHUAF>mxeX|g^`7gNp&-^WK-ueHqf93uD?_!py>a8u@{>AqzY5S_> z3%}I{s(b!otpmyGmXA%oZ9}Lj^QYwK9#>j_#Y6KZt^Z*ymzUJ0saF3l^kh=wWmWgR zrQ?z3zERUIZUsSD9mbqtny+x=|Xlr_mmvX*O@H zP<7*JhQ_JAqwN@v<{Ifu`i0%jToYTm+V0;(U!FRL-$o6x8xPx zJ2)c?!LSyU7SxcNxX!YysTof7r&U|2ZgtJLxxdpmYv%@PI@@?hc#59wR(2kZ^E{pQ z953Rr`pvsXAX4jbX_+#A(suRTHjHp8&e3o^{|jqrHPP!?&p>~Dxm8V6h0X_>v~_Qw z%U#L(^toQTRqvny;Ll9u(n?;TZ-I8>47aH1Kri@bob|eKymiX=0v&vOw-(^qZZkg) z6x3Dp7v8DiYrF*JC-JVP33(U>yeAf0R16;dtEecM?Z!iz<{*{E!CkUN98?)ys1EE4 zX_`Z(i2eB$z4TxG-d^^0RIa}u^gZj#PQ6*~Jzb`7C}tl^x++1;nO&M7x_jKwi?n|d z&YUXAIc-@;CT%P+o!5Yv&G+RVjrD!VMNvCt0oB}+Sm$A-Oif|oi)%!x#o!~P)`a}T z2A--OqV*>xcIk>v`VTl?EY45=&#k+P_}n zn$`a0G~IEbM6ap2`kHQO>qNNy!EF!NcUZj~SGR|!*f)K9`?YAS+P@y$-&6T55clIf z;d2DqeP%6Q?X@;<=b5c&u8y9wHS-6rlEtSoNzPeF8sMY3gEVhZIc2|c%5H1&R8mVQ z*{dXfosx&9X(Qjw$2p1EiGJjAR%*WbgonF7J3sBs%-J^&UK>ofrQ+Xb@XK~txH=W!M|4veMe;;i%Ilv z&HdJ!`E6{X|D(+BD&&4wv&z>TE2xq^fyq#F(bd?{g{8Hr~2~&>BS>4te zCvrStN->rAB8@!!M-@E%UdvNU6SZ z^oxGlpaRuD(5}~Gwf@5wv7_WzzIUPA>h8+kC4C3%icT-mcTo5qoJb!ux?c|Ry%R(B z{NB-`%(&l4qob$xkYTWzT={PwrX&8iqkk<6g?&tAt!xmk9*>VskIs(NFUzzS5*tTq zDBgKH&CiweEg_>VXA`DedPy##Up$}#3h%9Qq45486yBm4lRcGW?)RP$WopSU3kS;% z1haHJ-@8LcIH%jU!~~Ok?|L1hT9D}fEc2VAnHPtqKb`OWs}5E*ul^{?jGHUfC8fzl zL6>~*H2u_#)R`ul@$;@RbKMFWObvFi7ZG}9-{v`3Ip zrTO0e`o-<`dy~zyrVzI}WInM9!v0uC2 zDl_b{h0R!E3dRh^EgUv4zYn`TrtpW4?+MwB(!QNGe#2q&@_UYl?S+qr{bJ9?yC(jG z&CBoGDx8=xq#=Af?7m3H!|vg*`LFl$%DMfu+5gV(A^$J@oA_U_%k}^7gd^+*_wIOs zxX4G;(ppVfVr0Z4&SfR(tLk@wxIIH;eoEyD=7(e+UX_)uy@^lKMBQ$N?W$kVZhf{= zuM?}X67xZ>`AFA1a-__sVNO|Ea?8onY0^`sg{DQO=S>a0=}^;Qro&A~ zn5LSJG#zC++H{QRSkpAqai-%0;9*rb|tinJzbd*K~#HO4C)QYfRUgt~cFay2*62=@!#%rg^5@ zO?Q~?G~H#o+jNiVUekT1`%Mp;9x^>_deroo>2cE&rjF@J(^IB}rbVXbOwXHMFfBH{ zWO~{3imB&}rGL{%(@LgMrd3U=nbt6kF|BD@%e0PZUDJA|^-UX^#+o)VZEV`aw5e%x z(-x*JOPzw-n4^hC(|ybT}|UnyO}1Mb~p8z_A*U2?PJ>4w4Z5;X@AoJrUOj} znGP`>YC6nxxakPfRMU~BqfAGejxil;nr1rAbiC;V(}|{&OfyWUnr4|!Go5Za!*r(U zEYsPhFPqLWea&>P={(c1)dD9D~#io}`FPmO5^%Pn9H;pu{WEy2!)wG&v4bvFYnx?f(>zLLxt!G-_w4rIN zX(Q9drcF$nnl?9WVcOEPm1!H(wx;b(JD7Gd?PA*1G~TqEX`*R&Q=e%s(`3^=rhQHO znWmWbHyvO)&~%XL5YwTi!%T;pjxbF%9censbhPOh)3K&$rsGV!*r@? zmgzLp>83MGXPVA3oo)KE=^WG7Oy`=;Go5d`z;vPMBGbjDOH7xVE;C(j`mX5;)0L*H zOxKvMHC=DI!E}@9X45UE+f4IJx0~)T-D$eZbhqgq)4itqO!u1}G(BW`*z~CBG1KFw zCrlmFlcuLk3r&km&zYV#yk*1YQqfD!sRx_<(8e>}1w3cZd z)4HbhOzWFAG>tWFWZKxYiD^^Q=B6!7Tbi~qZDZQjw7qEu(@v&cOuL%Kn|3ozH0^Hc zGwo%XY}&`PuW3Ki6x05u155{+4l*5LI@ENS>2T8#rm3bQO-GrIHXUO+)-=s@oauPe z38oWGCz)oLPBqOkon|`SbcX3n(^;moO9=>rFS9ZZh3$y2W&xX`bnJ(;cQeO?R2@Hr->o*L0uhe$#`d zhfEKf9yL8?dffDcsbhN5^pt6#X_4tU)AObmOp8q~nO-)%V(K|(>EATcw32C*X;sr| zrZr4sOlz9fGOc4;*R-B#eba`fv8Iho8=E#UZED)ww1sI)(^jT!Oxv2aH|=2B$+U}U zSJQaYZl;N*-A#R_y-br$`pS* zri)A$n=Ub3YP!sHx#_#6D@<3Kt}{w!*r+VF4Ntn zdrbG5?lawQdeHQc>0#5OrpHW=o1QRrOi!AgGA%SMGCgN{-t>ZLvFRn#%cfUMJwI6b zH;pu{WEy2!)wG&v4bvFYnx?f(>zLLxt!G-_w4rINX(Q9drcF$nnl?9WVcOEPm1!H( zwx;b(JD7Gd?PA*1G~TqEX`*R&Q=e%s(`3^=rhQHOnWmWbHyvO)&~%XL5YwTi!%T;p zjxbF%9censbhPOh)3K&$rsGV!*r@?mgzLp>83MGXPVA3oo)KE=^WG7 zOy`=;Go5d`z;vPMBGbjDOH7xVE;C(j`mX5;)0L*HOxKvMHC=DI!E}@9X45UE+f4IJ zx0~)T-D$eZbhqgq)4itqO!u1}G(BW`*z~CBG1KFwCrlmFlcuLk3r&km&zYV#y}1w3cZd)4HbhOzWFAG>tWFWZKxYiD^^Q z=B6!7Tbi~qZDZQjw7qEu(@v&cOuL%Kn|3ozH0^HcGwo%XY}&`PuW3Ki6x05u155{+ z4l*5LI@ENS>2T8#rm3bQO-GrIHXUO+)-=s@oauPe38oWGCz)oLPBqOkon|`SbcX3n z(^;moO9=>rFS9 zZZh3$y2W&xX`bnJ(;cQeO?R2@Hr->o*L0uhe$#`dhfEKf9yL8?dffDcsbhN5^pt6# zX_4tU)AObmOp8q~nO-)%V(R(P(!Xh>X(iJr)2gP`Olz3NnAS9{Wm?Cyu4z5f`lby{ zV@(^GHa2Zy+SIhUX$#Yqrmaldn6@=-Z`#4MlW7;zuBP#(-AofryPNtaO*0*5I^J}G=|s~>rWvMF zO|wj=nNByIVLH=vmg#KMmrduGzGgbtbe`#a(*>prO&6IiHeF)6)O4BYa?^KBSD3Ce zU1hq)bgk)n(+#GZOgEcuG2LdGXS&^Vhv`n!U8cKD_n7WA-DkSr^q}b>)5E4mO^=x# zH$7qMn4UB}Wm;%jWO~l@yy*qgV$(~emrbvjdM;S{H;pu{WEy2!)wG&v4bvFYnx?f( z>zLLxt!G-_w4rINX(Q9drcF$nnl?9WVcOEPm1!H(wx;b(JD7Gd?PA*1G~TqEX`*R& zQ=e%s(`3^=rhQHOnWmWbHyvO)&~%XL5YwTi!%T;pjxbF%9censbhPOh)3K&$rsGV< zn@%vDXgbL>!*r@t!?6MlI_^&MBs@@ZOO?H8p4q9pHK{77wURRZ3F7ftEn$q4`i{jWr0q3@vRU znhtG*CPDvzSQjbvYiJ~N8e%1!RL`xV{!ncw8EOG_gYJPkKo3DJAttK@8$&Nb^`JMP z80dYd67(^|SmD$o&^hQV=c>^>c`x;?!dhww5vVzI8j6K} zhU!2!k|wJ`w?h@6u28Z1rc>{O3ZX}!x1zHNd z2`zx$hvqyCCKqr6xh| zLj9n{&@gBoGzOXtO@gLDGogvle?ViQccD~h3p51U4W&RQpkB~JL2(B|}d^-Jr=(2j~w_ zOXy9gF%)~3s2+4D6aytdm7u=RfQq0N&zG|oq|R~SD@ig^#svCC>H7q-2run?uNQRy`eVHAgC!c z5^4xN57mNZKvkjnkOz7Xx}a5?Qa3@Tpgqtr=s2_=DuP($DfJgfGjA2o-9+o5de92! zc4!II1)2}t54{XM3QdR7ph-|Blm@*Fjf56KL!rMx{h?ea8QKkXgT8?}Kxd(rP=$L$ zjiGCydeALU4Ac&)1SLV2wI){TgU~tXafmewQ^!Gvp=r=w=v8P3v>4h9y$`K{wn59G z&!I)ox6oYZ2WS=)No_p~ss&Ae8bf2CcxVKa3=M)tL;WCqwNd3C0^}AC0K!wmyh&8=ZpMefSlc3$uOehbU2W^0sK`Wt( z)Pa{m4WI>3S7;7244MJG0A)b)pmEUWJP}7h=b>TH^*kE~Ky9EtP(LUUdJ5_U`JqD)d`u2s9E(fhI$}p!rZdvJCLhL!nDWqUWF@=r!mBv=TZ5eG2V?PC?tD=$@iYP#b6! zlmsn<9)cD^zk^5DJ(0b@aXa%$Y zS^|9l&4)gLUWUGbrb9nKlb~wJqBN)pG!p6p4Tbta{h?GS8OnmXK?|V{(ECtJXdBcR z;;S{mdeBKI2Koi61l8^>x?Ct~3Y~-EAqV2iUctlA1ZXexACOj!RH+PYhCYGTKu4hE z&_!qw6w^mE7itd8f_gw%&=6<>G#(lQy$X$hRzicIeNaE>GUS7r-6!e_b%)wQsZew1 zMJN_}8>$0shpIt`p$gDXQ1NNeHGM^eP*dnQG!QxnWk9>3IZz(74B7x~g;qjeLrbB{ zkd~X#d)fV>IZ#_@29yG2K+i#%xTg{X8U?L^hC#a^EuE_8FVqLRwx1{wx&zYuG`&$l zt)PKW6KD)nADRKxgcd+i(BGjer$nDY=b^LENhsz4(NU-kv=6!;+6g@kZGomiYoWhD z??U;|V#tB!LEaS6Z0H7P8gwT#5$X?(h0>u^Xc{yG`XiJAy$kh%c0=*d38+2v3)BLt z^`NK`)Eue{b%km`eW6Hb7<8#Xlm-<+)1VX3T<8$=Hna!Ig|JQC_lA#SyH|Q|b0lEyegl>9R z)EMdx)q_StF;D=i1ic4c4vId9&Ot?x1JxQNIt+D!_Cf=p9neH*Gc*rc1APcBhmJ#w zps2y3xlnUx7SspIf_?{0fc(%HXc;sD+5!!NjzImOA0Z!9ZHTBV)Cg(|b%2^fDNrml z3aSHTL)D&=M#L%7dfc8O|&`xLxv<1qA)AQb%7-qgvm^B@s0ca*oq(#=7af8cL3^OPq3zIMXcLqUt%9aQ%b+FDLg+*2 zHHgpA24_MJG!?o8jfZMA5RHaB`U?(+ZiEIxouIyu9w{pSpl6^i&`hWev>0j%{R3(U z1)*9{g$Pkqs4nDzSa>0LLEn^3?F5~I?t_j&k3jpOG-wwz6WRv-30e;^ojte$+5#JQC@(x6#TCX@xe4o!gGhQ>g-&IeM{`JjfCL|vgfp|+3@Y7RXC z#X`?Pb)cD0HR#V!1!yf)tnWjn?t%)TLWu9wP@}M+m12i342`z?} zLM-+WTmT)0=0LwdGoY9#Q3li+8VB`(MnO+N!=P!<0BAAP2U-s$LMNb3(9cjSD5i?2 z3DgCu4-JHBLSvyQC;(kKCVCS(53#UG@Fa8yItmp-`=DA?MLVH8pe;}`v=$l*y$ihx zEr#BQ=0Q85*-#Lg235XBG!eQ98VhxTQlST+A<$D$3X~1?g62c<&}yhXvhE71!p+nH0p*_$#XgjnA+5|b!Du|i4!DUbb zXd%=UdJRf}WlPP6zUH( zghoTPplMK5XaVGbRzeq!iavo(K@M~b@p2Bkq?LL;G*&``)5BkB(|fs&yfP&a58)B&0ZwS?Y)8bhr79jpg^ z0mVS)p-NC?>Lr(th#EoXpmvZ0`JltlAZRc2G_(WCgf>I3Lu;UA&~oTYXc2SIZ!Q`Jm6Bu22!w7OHWbs5#UOiiMJ(I?&@# zHE1$a0eS-}J}lY{6+(xgfpeE2Ts3SB0>I3zG9)%L2@lYq|C8!njCe#G_J5(Rq3DtxgC<=G2;!SF!9CCrXgibvZGz@OtDu$8GH55X5GsIPgRY4c&4ijm zQ=#tAcqkPb4ZQ#jhhBjOLaU&@&~B(ZbPnnQRlZ5o25Ja3g*rhEq2EHapr@d!P&VX& z{tR9CO0)$!1qGpFP_;&){ZLbA7jzG_4H^!uhhBtMKyN}zpj>D^bO3r8DuSj%Q8$Yw zLAOF_P&a5K)E^oOJpuKHo`;g5`A|1#6Vw4Z4z+|THx@O9T0-@p2cQ@z6{-YfLYEJU z=0oS8b&vyn1|5dZKzpGYw}^H?EuhU%60`;y3N42wLW>|iqY|78y#>vJ)1B4T8f%Or`w5Qp~&{4I?(l)R)cPZDnOl} z;sc_-P$BdI7|uT0w`PCeV*ieJJ`iQB9}`6a{sK zuIv{LfX+i>pp%dvItnd@_CX&)JE6VM7U(3j7P<_*3)O8QS`4*@=0W#Cv!RjDH0VWW zBJ?L{EVLd@$6+t_o6HpL31Xa}QXK)Wx8`=)t32lOUL#v<>&@yNev=EvNy#}pb^20~9keW7VkcW43B1=nskO%4x zUDzjj0y+g{LC2uQ(0*tuv@S^|xP=0h(+FGKG^)1g^+h$cbb zax4w{5gG|a4HFH8>O=jZR!}nJgStT@pbpR!s3kNPY7D&()r0b&80agg5>yOb{z7!! zW1@3V7s!E9Aij^A`V6!e`UA8BS`Tf8c0y~QClLnEL+LxZ4Ps2_9;@_hi>-OcX4X=vXjv@iNF z!Zl!VCHpIJ|0aj`PmX?URQmA8A9*(I(XnZd41Y9q{9lCfD);|m9*WPac6EP@*YC|A zE$GJm%xJNyTW-jl<2o`fzW9OszN2QGxqJ4);?^f#_s3s9D!0z4+!1%X<|E=GF1{70 zBJ;VUYi4ea9~a;K}ZmA-KNwkZ7MXc|A)Jab04dB z=&j`Vj&Jl^)cwdGTz@=8A^*m0K6r3f@g2d}H@=mnB!h;{9ztuJ0QV5jM;zPea45l;qTGsui!;Vc<&x9)0JxS;_s?x zi+?HJ4wjcT<$siMxx?|XeOq}lO8-K3BLD55YoS`TYAr%rh+6Ple`P26zeuVz+274l z;%KBc?wQJYyB`y@=bk>Gji`K3n_A>NgS1uEma6R zty5^Pr@8%Z8QQDPX1`U#vVGIgzFBCmx~bp zKeE{U9o}d3-)!a?BR2Q-^=%VzPfyqSzt#vH<`zc1eBxzagq9=k5V9AU+&jh7LtDzg zCr6Y^*#F9#QcnovzxAl9d}~$J^M_|@MpVnVgg+L(9;AYQ`&a7qzxDS2c=&d9h^YC% z*M!Kzm&9HCw|^8-Y_)PqKD+$4!h-`=Ddzm_5_3d|A(MdRj6*iv#RIy z`rk$TKkS_gfQ;4O$Degu*6ne>EgrYl-MHTw7K<#4#k$07E^CDyYYAbWN~Dwr-4i3a zs4$2~G?ZJyMru(Sx{y*sid^5{=ZqcRvf2vum&45Gnaj?c=bYd7d(Ly7^PGuX;buQn zp|tA7=5G@*Oe!lkwu_r`H^ULt>G_B;zUM!!>YV+~4Cf1;w!S%2FF5DAD*IfHmwfZg zT)r2p=l9JY*TJ`-?)|<6tFk#aUCid(9P_rhd0!6K&Y5-elt(n}qr}4cu8!rMAKw}5 z{CdZ3?WaC&U#2nZeVN0z_;T<3RLirdl`rp@UYb6*r=EXwxU;~ZmS(|ziO= zl-zo>?#f-X7S2Yv3YH*(_FA?0yKDWezEKNZCWmA5sU9dSHL43rKxH>V!nSK{Xpsn zQcsY&g8x)~g-GR9s~MuLPg)yPq|*_y;@5u{Hq%Q1A>P{hcdgzN6nUQZP8EvQoF+Hj z^dBjdEB0SSN@RyCp84J8&2PzO&wDi}+enj~sQiV~Pf0h4?WvA<{>iU9KbjWh(4KlN z{G)lDe;gB}Ws=TzW;#tId0%jL>|M+-Pg*CTip?fXSPyB!GSD0cz6tx_+aTWv`BwPn zzd1y{9sy53eAT+U*DxwmiIAy7|@eg7-D;S3Adim-5%+xB24Oh8u~_8QZyL zely$35f`fmWx9Cr_yD~5xKCA>w6#=2HCs*9U!!LplwLJl^^+-XKAo@2_%~eY&OIMr zQ9Hwx4VU&N@^^c~OKB-k+7GnZcv2pen#L=khNilk;Temcz=x3WbU!FWKCN1<5N$-W zLqTnI2jAmY0Y@9@ra)}|udCpJkDd&wbmlR3RPA=lj2#A~Tbvot^`EPkNtIs=YJTs& zKn7c1wO*(XQnK9G&TY!wmRWClx16~zW$U>gy&r5olCo{vV#kMHR7%&R-9Hpq=@( zq3`U5^X9qz>wM>5dceH!&I#wm$ufd7r-Cmi?prfca!+UGb|tkeu?L)4tGuXX3(w~Z z&b7zPUcR+6`wuy^kgQ{TAv>FxIS-%rVai;O~r_M65&ueAJ^>LPKWoYH^4s%wh(AB)7$$QSQY*Vy~C4cc%Jp8s=9+3G0xkf z&&ZUPBl>v5n{-QQ)w!9sb^h~FZE70cHr^poZS!UFwtXvKN;}_I-u92Jj=FPSkfTHF zTKU107;lFKXQH}}YT)hq#?+Lq``&RxmwzBClN?apkbhSm99(VN|E+S+&xnQ`xADuW zVp=);+qiFQy8o^H$BIGM(8}-P84sJVHu7~yTq{a!L*g3}`hz=A*3lKdhiY6esfM^4v4~Rw}I)P{fq8Er}Ai9BQ2cjQ{h9Ejp6fHsYq$rw# z=nA4Oh`t~igGy&?pf!@{4WK!Q?jYJDp+ATQN$3!wMTj01MUy0SsVLfn=o6w*h)y9| zC81Y{W+A$TXqSY3AsQy3V~Ca^dR7!olhC!IXd9w$h{hp0hiILI-XWTY=pLed68eXD z00|#}cmc!@Af7^|c$T90mZEqU#J?29!xY8G;Qx}Bg@~!qje4v4!$B>3JWTdge}c<+(@*{6rL1zx z^;G9yXK%V#(A*sJhI8}YW9F`TwS4>QF3|S>5av5uA<=$z!;jAF_e?UgZyM&yDU%a( z#YXsYZ*6YodHjSk@9xf~9yZ@u{H>R@QbiMdZCiX}wp~-!*l{~?p(9;g>yLAFU0lZ1 z^|Llcbcb%PZbkaIx{dc5-Cob)>Rz?JtNW>Dt{z>dxO&|Gh7nUJ+KBnoaP>4!x_ZWR zb@lwYp3&>AOs-z1W*faLcwD{r6gB$n2zT{4H`wU=yxY}xcV3qxF~)GX#=GurzR|e* z-txwP!b4pHBDc8)9xG@JD$&3d_xAlp+;OiFKck{6{@qC9p12g_o+nSbhShCq3>!Mz zNXYq>E1^*i!@0M!YlQB0B`*2ZNIV>4Bu#d?lHS~CjE>Ij8vW={*O{iG{7@qm&1T2te9O{I({|M9=fSu*(V;>FWn5dktB z=5N*f$AoIzKR{MR4oT$5Fuj8j{x~gdlnoUy*gHW32^>i9C`tf9f(Q~wiV{qafKrs8 z;)4k+MF}oQfRP9?NT5N24H9sWpo0V+iQt0-prQmJBoGxP7$E@(2}(#{LV^<#ppYO{ zlt5LKV1)#%q694@a1|wZApxu?L98f&3<+jPKr2d6D@tHPf?H7n91`S;66la%SCoK< z1ihjJzM=#_L;#8+0*DY4MGO!@D2gZ`!cY`(Km?*FB7q1+QN#ifjG~AJA{>Z#AOcbp z5kZ8cC}M&LN>M}w5tgEe3nDN@5g9~i5V1i7rzoO>2v1SO2N9s6h!7$~MG+%JkPuNq zgb5KRM4*ZyQixC$MXd1tb`QA}O@BTgG^!aqez2oIpOcRHid_cyD@FP-z}^Offl)bp?G^5=75Vqx|ALYF_EuQz{CJ$`+(Kc9;VS5fa@6zR|B z;_r8<*OwIc=hOXmbM@GL+@H^7)?xMjW$)%x&%fE%ucJ4g^yhPBowMrsl|%jcT$OXa zdjG11{(P?9tE;8PMS@M>8|C+=8e6F3`PrbhOO@BV$?fRj5{O+Uve6FwT_l5N_ z&obsx_f3Jo=pYQK@SUtZnt3RKcUaFy9-?ZDG&n=0w)#EJ-{rUW$T`Tqe4@`eP zKP>&7di}$W{(Npf7NZ{TDDThb&i6I-{+%bvtLHzOF-$%FXp29ey9XCk&+ne=&*z?I z@2J=J4E5*p(_EF*<4?o=`Aj{OqTau^xIdr!R*zAy?>p?z=Vz0@R*yeh*Xl+$ZW(O^ z|K9sD-h_rUk;b$c!<+BCu_Y+Da7#^+>WH=O%I1|RSRQaAO_Uqkg-yAe^T{aZ+G|`t;Y! zc8J!?HEFGvuUb#95E`c6k*la4mNnc8`?-!)@#_j!r9FkM${T~NDsP^)sxJ7}s`kV_ ztNNsER*j^0EZcxZR?WNi>a`Nz)N40gqu1&3lwP;w3wpg;WAu9Gll2BAp0FBx9;-Jz zJKAcrHe7GKKgMeEazCr-nnqT$$t|qr&xcy}LFKF#lN#zR+hn!E2b9oTRXA+54nMEA z$-32wDEEaP@xwQIyUgqLc00D{?Z2F_-?{iTy~Bs^T9J=W(>uN~&+0UMxE?j_L926* zN31SG2U=b054EB@L|EO5bhNrxtz>mSWwT-mwb5ff&2RPmxuV`{jeo)Eo{E1!PX zo8RkwlYi3tJ+VV~^xLDyPB?1a-TW=R|6Lzi14=)u4{W;F8kBv76<5--;*LCR4L+Y} z#cvsF4f#CUy64s2*3eBO^kEM-wT8dkRZkdP+Hy{=tB>g1L{A)4L?2nRl%CZ3SAA4I zO&?vOkTu$ONFS5ulr<*heSPc?d#!Qqm-YL0tg*&FyTO{U_yud?*acSdQqD_cCAsU6~6rxp#UKK^N5Zx+@ zb|LzOXc(enh?XIGhG-h1YlyZX`i5v6qH~DWA$o^s9-@0i(LO}~isAtfAAooP#19~z z0PzKgH$eOW;t>#^fOrMOFCd-)@eM`s4v2p!iibda1mYzSKY@4(#8)8R0`V7!$3T1r z;x!Pzfp`wYcOc#a@gGI;Aczk^ya?h)5Kn^m62zMz{si$Th)+Sh3gTA~&w}_C#JeE= zr6?W-@i9g5GKil+JPqP&5O0I{8^q(_t>$z7sR$Tg)yUe_>sGf_jjU;dHDoG|r%<(^ zkVhBEZs!RfI4UW&su4MGX#CKjv8p$~dNt{%AbBa1+-}}%uc!Ae)6Ty=j4Y}Ab^Vv+ zZ|;gA+UY#c1@af&i_P>>R(XNjEk4_8;z=#2{}`qNo9U&Se~k512TQx)Tt$Xd{#y1(FK;{_$ln7uZ3<@pw|WFMs#A+^ zR~hW}Z_D8DQpJN><`{fAgDu!hFVVT7Z=b`Iy9e6r9Q@(pY3BAh3CxyC?CkUl zMb01FVHZeg>?^a*ykMZA~RY=PcEGIV(`|_=vzwa|`P7!a=xH?gpCj9En+&eBMi({fU zYt!#jve_Np;L=7^cB7>?ht@SEL@VzNIXERMr#G87*ZaAma=&}To9CtGDR~!Wb?B2v zM&*0>up@um%P9p0Z*>%GUnQkb+t(e1tMrR1Qt>fI(OffAie*o56g##ls`&9oy(Loa zj0*i|n78E8i75@t)`p`<@jsp&$hBA{7m)uzW#nMnKM<|uU2X^QA-pr2;7#Na;XI2vSOrl7f^Lq{JYl1}Qm3DLqIDLP`-*l91AblqjTBAtehb zT}TN-N*PkpkkW>fIHc4eC9f!@52*o2EkJ4lQX7yOfj6dB(k6CWZ*K`|`OOBtNQG>- z2sYD8|B+FOsXI>uwJP0`Qt<1zReA-&^MUA<$W>AMPwTkn>8~=T<5DL1zi~R|({Jne zl8$dot)%IAURf=uRfj#4w+h)V|F+)2(YicTs><731`H{Z|-nW7( z2kEja#aay~{1uYddgsanr8XpXn|XRPe#e-GCOI$ZC4&mZ_HezVQUz zv3Dc;nE_J@RLjjf=(~6F&p}OQye9d(s(lQMO|y?)*F2H(59EBrj*>x5Qx*k^Hlj0| z>7`pHqNe9A8f4_1z<#QTioE8j(0`y_Vpn7hYUQ{qkiibuJVp&1I-Bwbx5!a?pS$)1 zHJRfMlt9;OR?)3k0&YP zWy+na-_Y5aKj<}FCJD;*dS7umQ0`^5p`T}}H_2cG!y=J#%iv-_fsbcIq}RBY)s-B4 zjeMK-C%)>^_2n~<+k!IHxqLu-XKOwuz4RZc@F{&y1hxMp6Q!W6I=WSQ1;X>x2)Eob zzcB~oA2h;Q;En?hnF}fdMxnee=XoU_WGberY8G+mk-_1~z$a7Jd^#V;H^7X2OWLXp z&wtbPNtP@ylCUj2>kHKiM9bZ=Vkdcg@xJJTgQHKFp? zvQ7Gxa>coYo0h-Xwax_TF}W}2PaUSGm&aQsY-Tms9#r_{7X!O3gVw)EX->$~>^6^; z__P2bsIv#h_ZdK1&r|uAM)C3KvqqkV1wOG^DUe6ga%D zg`RfN_L?avL3eCw%IB-#i@xgYTaFV*W#z_pK2z>khHg`%hrOF)<~TO*FYEo_P_%d3 zqIlnjhws$4FDznh-%wcF{-Imn@nT&~EzvjiORs;4zQT^&o4@eonfiv)zn)2PXW99U zeC3){^p&q#%vT{a#HZFF$r|QtnUvcX-o#Y%_OEu0j#{?wiZlPep8_Z6$fikVFD=_g z7e<+vv)ED&{1Efy_4z0q9#cSyQb>@3f)o~{ zz#xUDC7+7~t3X;c{*WD}ZAX5}7q+sFY#V3lZ#}qQpQ_zsYh7>pqEcPG; z&tnQ7QURntbMeFtt(d?(^Lt%xaiS03))k?j?4wP~9j z)#F3;8WXfW){tb6=`RX^M7X8n&mR)cRIGaD{_ z(Q33Q!E8KZlGS9%G_C1~K~}Tr!?otU9@Om#QCf>e1ND}jYH8ucBlK1^3Tmy+RMOkz z`9*89FQ*=HI=|WWy)diYrzg$!^K)2tzV(UO;eqcgwNk;|+pSLbK4(U?Tw-;0yrp$1 zJHzT~e^!gmxmfRJ+^2Q>&eD5mcWFJgCF(JmQqs5y0l%!l#Oju zTczwOchb2lHp+fxS2y>CRU@J3ieF47iu>#s&K;q(Gm7C_wRL=?Ow@VZpbgT^7V4sE3{9w-BIY6J*@KEwy=vi zJe5Lb+bSLS&Qtm5L|c`0+dWlxKj*GCXNjl!^6~B(6K8mAv--Mg#x1tj8fkaejcFULB+aDWZ zyL0wVPlrz?yCcUh^>kc0*xjkmEKk%^?cJT5jPi6DUDe$+w1+3UdmeZ6xrUzZb$#yc zUw601l+JC7+1S9|^TLm|UN055_df8Et8Bgq#rS7|{ zedg&OH_JUB_d3tOh*9o=$6TJcupaKX?GJe3gB!Zz7Y*>`9$Gwxo*{JfjI3fa6Bl_VtQz2+*mt@o`I$CuvCN>$UU;>wY}tcv;y+D${Sb#)1EUyS z8|etjuI_WGXQU$_&lKcdD|+$b{m!70YP%Tz+))nhI`)uTRJ7Jowp+G})>^ccjkdBO zN%}JWyA!Z0MM2IOuj1gjv5QBu6B*Z8oW(hG&h-pHM6Jnl< zVxSNcRTLwIn5m)|D#TPF#tJc4h`~Zk7GkszvxOKg#B?FX3o&0sF<^)ZD~b_A%vezj z8Dh#1V}_VB#GoN24KZqX$*i+vy7qbm!8x+u#D8gS-Rtff2pe)~sH$y8K>3>IAQrwOFE*l-^>fT<{woJKShDa%k-E0VDrJf2yJ>AFyp|J&(UX z)zWrmSA^@rs{ZziuePyi&$PA&JzUY2X-t?s^N3dNEV1F9tex+0XKPWx6I?U9JNU7F zo*ep7caBB-?IFGo-8sG6Jh}FMYs>9fyTqXiuFzfO-6b~!yGkv~ z<}N+&TbD7qp{>mQ+gxS4m#~!^a>OWK_q?q_`wxse3VmS*r30V4 zD<5?lRo1=huDW}gtJ<7-?&`~jyJ}2)&~2L)<*FIyveg<{%T+t#0b8A}1zmN+2H5J= z`o&d0xQ(qrXaS?a;fl6~XMZ*tZ4R+D-v6o5#C?am>6+C>Gb_8h`SZ^k_JpJE7L(p` zwe0kvJAA;iu2wY`yIZ%q&(->;gSLoj&lnNA-?O#LJ?rJ;S{o@{T4an_w z4~&SDMdfC?_FMbhW( zV2r3&%$AstVvHUND;x8FVX^i0>dIcwebr6#$? zPn_$Xu&TRjV&D7S$y;l6<#pz~H zDYadW{uJl7T1bDYh4iOXKdJ>Csh&K0Cta&MWlPdu?^ac$cXYX1)uJtr(H^|qt!ioG zF*<}wi)^4rl4ug3ONcfh`h;i{qEm=gA$nC5%|djmDB6YS7ouT^jv-ox=ozAEh^`^p zhUgojafr?#T8HQzqIrn!A=-!NUr{_jQG5X61rR@gcml*1Al?A+2Z%>Nd;;PX5Wj$U z2E;cY-k~V|0r3z;@ezoZK>P&aDG*A3;0`;!6;3g7_1}qaZ#7@hXU4K|BlMTM+M36#s&Fn4%LOfMbd==uY5PyYuEW~FaUJLPCi049l7vjAT|Alz4 zqWCbxixtI>A)c%#z6|kZh(AL-8sgIsuZH+FyyV&cwrviI#*Vxv)~GlvVPujKn=>9otU*i|g0NbfNrCg^wSGAqqywNxlvdewu)zhxC z-)FO(dvt=UN<)XVu zLLOJs_h;Ceb@aKS9vo=vY&3KwOFaGYa>2iQhx|Ort`uVaOK*^h`LsnOYRONO)XvDM zg+OT%(Ud5pR28LUA*Bl`VMr+}N=ZXXTTx0JQtFVBhm<~~1|YQnsR>AJKxzb1D~eJx zklIm{8iLdkq^1ZHY70_hkXnP(9HjOjH3+FiMX5PX(BPwOjfy? z*u$f34Ry#D<%mw`A3HoLez^Z|x5YJu*i8N)o7@VTa`)oQ>9&>kb+Nxye5-p^spzOXZSCH#JnP1UxZhn<)b8mu-M#*W7wj7vzh`@IVv6Ve z&|lme9a-!fFI2W|Zc*Q}*}KHH<^Ct^A4JY`fAGU(&yL88wjJ(cp52w|x<3vd;5pee zyY1xMUpzl&9cuffmTv#$o4M}O1;Rb2H}AIndh%ZTncel=XWy&qIrmOi+xa)T*e}ek zYr8nDjy-sOdw2Ho39fQatZKn7y}NByp6y{M z0l!<>9dU0Ccf@DOM%yzly4$@IYfvSeDa_cv|93tyvwD z5sDHOkjQ{UhoVFXBuW$|QXtU+i5N)KKq3bcJy1mu8xlnl@EVZ>i6%%yL81xVN~6eZdq5eJDn7%&luJ{}W+iV}s8NQ6WqOqQ(uGZ7gulIVwB+UhaV-_#1V z95rxw!bqb7kXel=6EuQ_hB@5$*&Gnc5^uLnRER*{M-;-}n#?~JkpWY=>#I@P;)p|% zxf0>ANwLFX6Z^|?V|a9>#zy$yQFo6@k_T;-wfw<+)Ih6f%4gj={gvC+a=X8R72o*& z$}MLt;sa^PKlF0DYjS;$cP@2J=%7f~M2>WBO4nqO>c`(c-ubs3@BBIc_-$9@`W)|E zkBAI(O?nP-Y3@~YP3pBsj2pC`k>8CoV|DzyzMpr zu-8aj(UKEekobZbJq-G-*Cb1w{@JmV>k)qeXBjZ;MQuqI_9dkKs3D`q8Wr33%*gOb zbNP!~$1NC>-M+$A@s2y}>5a=?ry&$IBpVn*S%0I(Py*G1X(Y~e-yTDea$xA5^7zLG zW+l`_J{sW$|Lg$m4H`?i9-$fVl|DoEX>YvJK=v+ohghRae8Ldvuyp8>5o@`%hEIys zv4?Gc&t36MoTrkzt-G@Kp#93zJ$82icZ=@L{?^E>IyZF1$n3l0Z%~&cP&23~arQDf zopifP@{hZUL>MkYltCg55^a!(gXx{_Ap&`wD1_Iki$W(k(9Zp}hzyuXkFZ+W!k5oW z=5j?296lgnoOnrOum7Hx{K2W?>(fQ~|INU=p*P7(2Hf_Ne^C$RFP=KSF+G#(5s?8e zY4pe$ZDGh-@shk-{0zIcK*&7N!Bd?Z;a%P8)PDZ z`oKJ7jO63nCh~7Ik-s+{n=F<3XU9mcNBjjWqyK{~wZ)&76v-Fv8aq@hqheQ?X3`<5 zs?o7?RijJCj5tT&fc%zmjz1bNd3&zAMP{4*Z@S2Dy#M_hWF&#=!9WscFMS8z9&Eiu z#!Dm=MZ6l}2(QNxju_1K2+e@U^sM)Y_F8B)$z5*gmKg0v$z8>+?K5gEay`N=Fg^DC zORliA@sfxVp0rcM_A9Mq);U+i?k?`O$4A@SEwAHl|51!RS+x3R8weRQ@gJTtuap%P>Yq@-p$6uH!i@~T$!dMb#FL@K*Hkg0NU?k9_J~V<&F>UBXf{w?(oe@g_^8D`% zM1qm$2}np#LIM*KoG@AH`X3F@fX#HDa7g;EK>W^etI(;ZQKhesVzo^gBB5#_#_o;%k!wsm;r zq9<}*Nn6J$2R)t4i?%4|1$*a?Lv3B6y!NiuJKCac8|>Zk*lgYP1@`WzI=FlICfj2^ zt?urbGT7ehE#2LF^(0T9r%t%QSIQkv8#rCZ1xx4vpTmOc+JOfIv zunjEwgJv!7kdG%iR(0NPk!yfMG9)ABUd&1zx zZs(9Co)K+Jx)a;a@Qe(*=uWCU(laVwsBLseH_vF_1>3zx>wCtecx_`pDCQaG-e9|L zc|H4hYk_UTtfKab&dIjq#4~{-W*Mdb=l*4p3sZeGRdO%eX&0tyvf2-;DfpjJYbsoE zVQM-HAxcaKQXtZ4p5mwEvmg=AJBWHn>$r~{%9h)N(z zfv5$d7)4PHL^%-kKokT~5kyH4H9-^wQ58g45OqNm22mMAX%MwR6bDhAq9_kup1^o% zwt%RR=TRa=jSxjbR0&ZgM4b?YLR1P-DnzY{qF9J(6-Bua^+FU3Q87fx5H&*-4N)~j z*${O@6b?~2MClNh^s)H1>!Cchk>{Z#AzUI192RP>p+|b;y#Mv zKoA#F6eohX5yX)ot^{!=h&w?X3gS`_r-HZ@#IYc*1#vEjdqErw;$n*8WDqxlI2y#& zAkGGHH;BVQTn^%N5Vunl4`2x9AN0FSS^kpa(G9B8td3ekp=xAJ8w&{5u(9M#9X3L= zyEl!}-hOQqd#U;X;VsxqFJ+P!)T$=5~ax*^)`x1ZD|@7pRFDkD!A)r?LZjfyRj;_pegCw918 ze%Y~`TzZ+17(3KR_xj5m^2gjrmfYAbW6Is_<)&{hH+_4#>D$Xqr-&EaUT*sKa?^I= z;P!IUJ=~N7>-NLj%T3>aWvKr}%S}_qmr@26zGIyC(!zK5g#ObD->LPo)_&<HS~Po&L*9H-4hD`>r3SYR<)8?Ad~|aO-W4fn7Dw%1|&WpF#?GbNUXqr zdg(pljeHPuFj?yOM#f!WG=0>h7qw3h9h0xj+A?-$6MjM9IJBGbF4Z)*|+WJ2uJFSH+^!vZ`O>Pq}Li**sL8fNUzi7v{^T- ztzNIzKC^ysWxYX(Q(A+=x%7r-_iBxP&Tlnd`H`%J9AY(H^MZ`%d~Y>>K3PU`c33SY zJ#V(`)IlR8QtM|UpM1BvwPJEz8>0kGp5jU&KU0! zv**v_oxMCW%-(zYI{PeKtlhQ3?(93&()vAF*6D~()M6(#^WEJpTI=7}@C~R`PaD`Q zlW$P|E@oWGuY7SQ>X?JiZ}P?ODr^q<{8isQOHZ3aH*Itdo3YOv{_-o%gc0wU&dF1q zBYN%C5(nMm9NB1%meeNFIjZ;z+UOebzR_orwJ~|`^o`jUtBw7!ns40O;o5yW^ZLfm z?`KX}eB3wj!4_unQh~^Ygk&JHAt4=zd`L(LA|r^D6h%%DNkL=ZV<^qWJf}J5c!diAVh{Fq^KxzBq2#fktGRfLgYz8q7a!vqzaKM{2!2P zh-kQ;Xt!!)9R?HCpkiHqm1JQ)yOx-@f$W75E{lvX;1(S}Y@iItsg^=cyUND!0Rt0b z{mZttY{?#9nK;A9jg(hzZ0Db8UpR2vm)lZ4eBuG`_D{;D>=+;E-TC~>DJcVoIPz#G zym_9OmXh~r&8sI3Psum>kT-vHR7!z<7aav{&7v}6e=^rLv;Uv0+F1g>k`qMYSN>B* z{`(zUIAz51>XZ?``5-PO3(wZJ$vWIYtQoHE)A6gTW*pxk^N<~Y>;z;-AUgxuA;?b2 zPHXI#qU;=G2O&EN*-^;OLUtJ5ke$A?0{9D^o!VROwR}wm4g*Tb+b$gjBqiPK!+>Nd z%4>FqSaW#V-|A)u_K#|l6{(Zpt=`Q}mVNv?CF zD`w5!N{)Auo5!qOozt66G|wEfe#}nChKi+A--}u5ct3kk>c$4M92*aR znYy{m67S~C8&kIi&G2r0<(1SA4vzG0v)+&S&|cQ7euHV#h^S90opF4!w|#1Aj?Wya ztE;B&{dS#W-?MpA_wU;0{cMac_48%#cn`$vO8sKy9Iv;^}#1&4wr~^9A1BK%#pLUUnen*Dn*i zXJ&e0&VD$}aW3)2nBcqjJAzlIL=}x4;VAlg{ith3#nldcGiUh|e?s^4;>AT#D0bPa zn74E)LsSPdkGjvV?h9ky)ogXewCQMu%daSeNBKLN1d^Dzy3c@#2jUA=6JwA#gTxvn z-XJjti91N_LE=wQVh|FCiV};EcvO^_gv2EzHX-o|iBU+LLShvXuaKC9#4RLtA@Qpy zF${@gMTuodJS$2}L*g0|+mQH%#5g3*A+ZjLcSy`b;vN$Fkobpa0HOm$(E>ydilPaK zE)+!@5Pd*20?`Q!{Gx^Eg~w<{QFH^*j-u!Xq9KTmAX8t{~ci=nJATh|VBd zgXj&SIYrSOM0<*&KZph)I)rEuqDP1(A-aTU6QWOuMj<+dXceMYh-MWELx+xEC zkzX$Pbju-a&Ha(GL!r{Gl@595a9K_#;ogCXM#qH2q`^kl!3l{2{nM+j{i`NrXN;y^7inpI^WT~`glwG+Xo)7?Q8Ikec$)l?VlC<(ev5rINRrE%h?Y+|Gn*t&tJ8B zqg&WcK9k%3LkONk`>8xt-KRS@vhza-XF|N5GYhl1&wgLfe(upn-6glqwwD_7wY#({ z++)=K++F7Wd+lX&e&V02w`!KH;TOm44ZkhvPL`Pc!$w5fjm-w_#^p}Gzm=#hEk&J- z3_t|-8I3&kTC&m(`_5zbA5sR8a)6YDqLc@uOcbSDAY}t7A4nNN$_Y|dF!1vLQf54+ z+#qGAcC_^4oj*zm1l&930{PxIfJEUA8WeX`^NEt)Q83txnNqO^_GFOyxhspBU zf4A%}%}oi>9&S<{6UZ7j-Kg9a|52G`X%8m52+}I8^$TBdu? z>zPLsH?zbRv$95=Gqc&xTEVshX7IAoRu0``=2)~;5AnTd=Jd|9a_xOrejM;YE6?hA z@}qz*U4QmL`7yu;^!#H7%8vjJ&^R248oo2N;4_VchcQI>BjI(UB>STNXdD9PiK#r;U0vDJ0W2y5L;0c zYk}B{qF4;XW=L2K#BLy#1F;>5^+4n$_)(5dahy_Ay5MqT8JA_yw#1<9B8X@+mC>9B^Nky?rh+UGfOo(lguuh15 zlCV&SjgqiZh@C<#6=JIpYlYaWqF5}%W);P1A$F@MmJ6|6i1kA3mxKjFY?y=b(69RA1bJVac+zPSAFe&2JO z_aiMf<{K#yBQjx>tl||vT#kv_wK6J>Oc<3kScV}xb-6Sm$pPbk^Y>b=e#L3pdOUyc ziuOy__g(tEh1532e{`E&x-&~M+5Fhv&W%)L$(e0zE3>{U;iRsK)E}fN5 zJ3E~&gR^B1PWQ!(en{Yb#2iOXanL=v27~5J&HD*#K z?Rnl=&1Tag|KE|697?6l=;6c*7ybketoXJ|$5`neVqH}axFVW>=^Z+u5ne|pe9`Sg zkH0yuNwiEt&k#*3-aZ7;DTmvKAWxW-1EWUpuN;E>SG_OYdw0YBJGpE>VmhA0TOEY8}W2@8PZo68V z!Kh}hw{!IWJKfW0dLwt^t+_o-5<=Zg-=Ax5*71V7`OI8)dv&k7#guIJmPO9nxL7;< z)EBnak+GiE-m~tAd{5XT-kNV~%hC)_KV)mq(hTN2cZau=JdutE-5sCn?&;LdWs7=n zq`k8d;qKDEo4uMJ0iEbVf;V``uZA3h; z6ZMeDheSU_0T2~HlmJl!L=iA;2?LbDW7MH23W2CZQIrBv3q&yx)j*U3Q4d5x5EVg` z1W^-2Q4m!@lm$_jq9_caGDT4uL~V+qIEd;X%7ds6qCl7|G5yb}FmMWUNa@qsyPZFm z4CRlEO-e8#5)(#_OfUu{7+psVRStgbizF(`UviSM;7cp_ISNnS zov%)p&m48bs`%=@uQ}?~`p{WFI8SNc!&1&XPgz6C8&c+wa)*>X zr2HXu0I3H^T|nvsQYVmlfz*wn)DMX|Qj~fkQCE=qB3-Xp{x`Z_FD=-xF!`AFczA2c zc=^^c?Q>w_aHDII%nXlB9FR6+yz{7d8J8U%YjjCSQ0nQ<+tW?iDbdo}teqtREaw8}cGGKism4On7DqC{fFzp#{CnJL30ds6%pN&dn*tIebWi5@vY ztyXic3U9BodW)>HDp4qP`@3~klckQ8@^5-XraLYj(T0qsmpGo}mTShzD%RQe>U#Wp zAcrM8d)m6~f`jWsNS^K+b z8@7MIAF5X3&YoMG`&XxHavpQubNihyZcEbUKX}Twp!F{ErT%+;FL&Lmy;A6D z=c~2XXs=#a?t87k3)*W3p7g!`Q?mBPx_f<#cE@Uq=k)X~Sst#rCpPvio!!q|78m1O zKE8$dW<(?BiazDcm0_XIx0+-%S7p24TwUU@x%wNgb4}JP+L}!pobP<~jkb2l0pGg! zw`lK9_xL=$KGD{@n>aU2nx?(iX_D{#0mHS8H3s=MMLuF~&fC_vrP@$)%jtp64{~=j zKS+&mZhQEG>7SjJ!?%0XPuj=!?|gf@?a@9lw);M<`<9lfE%EIw^sKhmJHxl{!U}W0 zXQc1515cZuFSMKo){Qm4n40MH&gpF)jE{C6n%LC*vRysrSA9#HU-xL@`zE4^cDQ~i z-;uCV+P6hC-%%;GqrV*TefP~F?fXyO_Z{2xzV^er2c17I@tVH5?>Uc8-(a3de#!Y$ z!UFSTzbVe2J54r!X&&!9Rb#Np*z&J=+nZ;y$NA2jj?>N_Y3Dna+D<#arHb#usw&#W zS9ANcXL8GQoF9Fe?)_1w;pB2=iOp$djrzfv&3?=bwxu|O9}6>c=*yfr7R{GwHcvQn zdS{ur_PTw!J)_J#t7rQ1E}SXTX_9>TrY6ZWn(lJWr@Ks_Y2Yi=u7OOODefy$skls+ zsqZY7{hUmbDdsGGqNrKo;8|zrM`z5E>pypvTKbt;dfvNEV{~4b1~boDw%c);{<79r zzV2?B_A=LZN1+um-Q|8?*oBYGN+JDyl@2U7D<5s`tFrD%v+C}>tYgS+0%2{J# zPt!K*4rk4{(Q<8Uc4zH~80j@1b=D1QqDy) z6KC|fAhUbjRnG2Tmy+orANyi9GA6sy*K5HcIWm04*JslEG7V&$ukV1DW%@@SpCfXE z89QaH^X_U3%>Hq`oda@DHU~yDbq+i>*o+G+?Tp*r-i!|pa>g&JY7Y74OXodLwbO>~ zyyzP?x{6HSIOt30o?E7EyyqKH_eYto@se+3p^s#m#uQ)Dg=6OE1`C{{59~C@6rJoG zvu>$5_Vi%qxH+@T`%>FG$4?w(PFPjdIk9gKGx?c3&I}!)X1?NGS+ZX7AY%hY|CV>j z1uGxZK*;GNX&~ejlJuNb%d}hn@t(Suo)6EfezzR=rJXZMyI@DmEpW~#D7_{HALK>~ z_#!UcH}eG-#2+CZ3GqpYS3>*};+YWNgm@>!KOr6p@li$bQiz`_il;(+72>TBe}#A~ z#AhL13-Mcs=R$lJ;=K_6g?KQ;hap}J@nc2tWQZ>-iZ?_28RF3ppN4of#IGTq4e@P= zcSHOe;^7bG4)u38Greubj+Eg=01Md@Qe`WcGS*MRglAbk!J{SHXqgGB!W(gz{Y4}tVWNc2Y_ zeG(G=5=H5oK>8<&(no>xQxv7I0_m?n`Ye!s3#9J?>AyhwFz|Li=I`}mE-#!>yLv6P za7IlQ&_A%KU0|uR2ZEli6>@6nfQ+ z@vgOc{``p9%QM&Ny=SP|XW={gT`M}8eW%XR`#oth9r30fJ26t$hq+tt-?xUW3)4y; z*esu{2jj5fO8%t9ooHzdKEFrSe<^Pb`TQ;Io@Lprp__J_!)6?@hQGYROc?Qj<(&Mq zIilBLJ#o-jb7Z5fdQzL-=BVPY>!WLo(MF$nOdpfCmo{c!f;%XkpCY;P9TzXoo<{#dCR$z5d;WhHwx~5q(pFRAdhE1c5%`7lEd2iHdnvRTaxZPhjXYPi$W7aE`&`xk_PMGX za}CAyh{(X1oiy_hs`Db@U9NcMcbg&d49#>tQ|{&;DIA%vUOPv=w}wX*C|t!+;OVHS zu&2F_io;i?RJwPAqtb@GDVJuiNC!^F;cBBDxfkuom}L$%Hkq5T$*%30oN{S^G6Nl~ zKsFFb{FKU(knBjVG_s^9*@9$EQL+cgA|#uTtSbJs>|R>@3W^rmZNT2CC@_^IITK z{Xk**uPu-+tPK6iwpww4PO7@@TCN<(Kv@Q|LK*hWl1mv6S>iF-f@BSnJ(zZx0NLa* zS%qX5UU{YUU&yv<)kCz8oBK4!fof7j`DKS#-%yrQ2~U){x(UNGGFz7pk7}=D@67buG67YX{ahX6Y5T3*Xygf&^q+K+kF^e4jug}rFJty}%p3M9M%>`!5 zjd(1Rwzl9237?!-%*gdOf<1_;D-(^L|2W^zKqGjItN`}>cXw$E`#IQURRR$m*t{|^ ze8`Q&2ngHy^JY7(K;-zSg0;_Bh01+r6)y0ZRV4FvtH@95tfF5ov5M_>S;gO*VU>7i ztseTuV!h<-xq7K-mR@@N{kkzUQ7_Y{zh1UOv|g@BYrTBcdU}P>F#V2PMfI?(;a1qs zb*zeCSFkGWDQs2V7;IH}^R!iU!M9emC-zy@CvCH8B)wzV1}w5{hdbJWvi!lUDLDlC z!Sow3-MBsKKu9L)N&ka;*%vtq7EQ^JC>=-% zK}rcyQjpS8loErK8l>bPr3WcNNGU=}5>lFw5`~m1q+}tb3n^hpDMLycQreIbSCmqR zlsu&LAvFN01xQUmY6DUukXnJ%jN(nHoe-%m87RMSZzJuOs*G0^?--jDpDaxPa&F890_cS$$5qT4?$sg7}~ z#%Sww#TWHp+xJ$1_(Y>%&u)65cF{)RhV}I#mFgKq%XYPjquh{vdilCP8Wq~Vqu){JBO|Qx96jv9 zF;}G!Q?GPjr>pYOyY(vTmb$9$o@iB@Gs{(dxx=b4ag@t8tEE*lZl+OdWO=K0M3Pab zYc{KHSa+jdts_?b;08v6(5!lc!^Mq;XAkR*Hk~sX@87C7aTj$pUGuu$Z2B2j^XDJa z?FpZ`T1;AKwd}Oc6+Ylmt5pq`t97ekR_mX38xhqW(Ia-RFxurFs<&JIw9)=pNBz#( z%UvBl8Dd3_f6~=)We2NMpL<GFrE~hBkIZcROK4pDXF=UiV|G``3+( zm{P~}n2n)E&kMWtUJEW5y$`I=`%Lm0cddI`?>k_F!6`L=zgrgN&Xg_qdjAu-PY`Eg zK`7>)-0$Q7M7Cw_iQMaIxhR=?GTqeV;$~SoN-l1egOoBDLr*z8=_%JA^pwMsp0Y$# z&sOpTYeunl6vr(jWfy^sbUfp#k%nhXnEd#gkcfjs9VGG~(Fch@czNPP9fQY2BP1fp z1W^fzOh|M>A`}v(kVu6@D5ynwl!%8!y`n@uB>Eu=fT#eX1c(|Sih!sBq6~;SAPRw~1fmp(S|Eyns76tg15pn| zK@b%|lmt-|L{Sh`L6iki7erwYl|hsSQJbPD4x&0mQ65BnilRV>3L#2_s1c$_h$4z)N`H zII4eIcejzMeW>p(w8GfyU99iB@R4i3$I?GLu-x_e!Z)k~>z;IdG4*lFJLg{4!FZ>2 zXkt&-m+iV(U-fP5`npmb>zjxe<8c1Y`jN0k#*q`X^`pU|#?f7c^zXj8V0^#ylzwcJ z*Z5(^Uj4@<=Ul!KYxLvO54cVwueW|m@VHL)n{WNx=|$Hs%^$K()tKbMVSdd!$aNl|k2aU5w2I=Qg2O8(MwAC-HiZCv|T3OegsbmB_oJ-F%CZ~~kL`5r0Y?v!+kk1l- z|5Iyw2c|7bA8vYE%=^kU{bXCrTkdsb)djKYwAK8g#Hyn%t>#DZ``tO+34>Ry75ubs z)1(HF+JR~7_)$wdzU;&P-=?L;c%E8=)EuPtAT_8cwFs$6NNqxD6jG~@nuXLZq=q52 z45?{IZ9{4tQtObKhtxhK0u&_*Ad#Rb(Ey1ENK`-~0}>sO2!TWiBvK&J0*M$%)IcH! z5vySgiW5dHZ!7 z{|U4gSA3?l4NuT={Pw(qdPb+sxbo}+E5MRedl8gQFaE0P!;~_5E&^5Zev}DOr=lnn zrk$&}+`9NzgT36#e?t8o%H{p2SMl^sUM*IXPifs=EmjqST8NtRxV>8Jc#1(Shz)PA z7F*4v99Wne-ZHDj-jc3=d4kq&CgW~A)kjObH?LG+p}+*K-_FMh`h92Z%7cr?6WX?ieNJ__=Q!*AwC=0ERBfL3Y;9}W*&~g;=TaN_&TlE{&1V0?8Eo6& z2!5=XGl#yw5u(j^hWI8sa(W+f=GyzBH@7FwnP>GRZ{CFu`t)Z9dGk#j=*vI0t+zmY zgs))F%HBflD)|aG%;haoDW|V!*-DOL*^l{(XUgd)ej>zK;@~ky=tti>ORnGPD7AEl zv-G^B4r8?D`#<*11-|C`|KrD<<#LM2-3b{oj?0+)achS0bz4*DJIoqmrz8~H$z`1=`H4E{B4+;Y=jYfZS*G;+mG<#Cd!Fw$JLi19 z@7L@7`F_5i%T4z@sy7&R(ARMM3U8y34ZfTE&hs`7TeCJR-I3v#9Vr4tMWm-SG_0byorPe8F*Lt1azFZ|=Xzjh;(8J&QI-GsW z+i}x&U#EQ;-p(t&v3FVP@OGVR*t;zn?X@MmX74^LUGFh)zP;zzXuVgkND8@1ttZ+Ol!@9j%=`tHbj&^uz*8@`e2 z;=QBBKJL3SV}MtWc-dBv!0q3YoD1}Pfr^aZckrm(p3xVw{6FI z_5YVlPP^IPuJR9#p*wZ6hbwaVD%WcARb7$iPT=b;SLD5=b=6z?Oet4zMV==b+BgUY zA|8l5R}|4hgs&*#hZq3F1RzELF$0JpKuiH*46vvR@n9JIKBfUN4n;8!h=D*%1Y#r* zGl3Wi#8e>00x=he!9Yv~Vl)u5ff$aWm=45v6vccX2Bat^1Ti9r89@vQVoDHWf|wJ; zpdcm%F)D~zK@3Y#ObcRMieg?615*?egBTga%pisaF*S&>LCg(ea1fJ&7#+myAchAq zJ&5rsiupkdP*F?}VuXrfh7d!9m?Fd&A?64%NQg;7j1pp&5W|F+Cd4=u#XKPfswgH3 zF;Yb_Q;4BLOci3R5OakXEW~8tHEXnLg(Y#{U#xlm{?{i>kNPs@v)9aBb1B#o5&nyz z<|TSXP(cODwLUh&^^#$F{j`OTT*$rSGV&uHlm+tOd9??!KJsQ{uJ8|$TsY6^+Hs%b z*$0pKd*a4_;Cw!0y<_Q+ugot5KJQr8=6&F<@UJsk7 zj$@PuQ6EHs5EUwl5@BIIa43_XqfW}@_ESQ!{9bMk8Or6jct52?szGhp28;Jo8bvjz zt>a+veo9pw)B{`C!N2T&O4pQI7uqwnFCf$ubKhffqUz@Lj0Ib|_vobNKlGMulZN!O zG`X!PGawjXN+U|vD}TU|S!J9l^V|r}niHD#W|q^oH}nH-@3HFI{+j2E{cEP!4xDYJ zWi2{m`|Q9f%{z3U?Yo7wjql4$xBcL8Xg^l&=s7*8k9KSM!`b)?cT4X*pb)7-ON3m)gS_0iL{!Re(v>0Hty?ic%Ml`he64q+S%I zZXoreD0Kv>CrDjE>I+h5ka~mE9i;vsbqJ|PMX5_jeJVV6y)U~FA0nIvKOX*Wppx34?g7KKXPqziHXE?RP&&qZJyV7e$@|-<#GCd{Y7aNSsb>0=Oil1&ZSMtnrRbI2gTxIzy7V{JH%-7FxT5gy&*?g^z zx4pH>KU`sr20Ft|KWzyw-O3rh=N?PnFRD8KnDMsL%z8wYD|+^0&e6dh*O=I;&asuA zb;X1Ycg7r_<%$jJQb<7i!!z`0l{yU1v#5c+WgJ@VF&u;1YAv`3kP&P>(Y?>uXm^jc1)H>$bY4ou1{Kp0UC;W6wBe zYT7*4%*;N{v{92?=?j}V@l#nZyv$`r@)y2J?;r7#^XDH?$cwesuSs z0B70m6CgMs-P^4U322|HX&li%sC5SOv_TriNv3jBP-yLs9Gl7Plq0sro3M1{ZH8 z9+-#<|Hx@@*QoVgn1gbtlB_#8$&fm%mOlqYCY}t4iI-_8s-yN2JwoN=_jypp$b;u~ z9P;Jj4JSUht-&93_X@85lh;Dx5bCEE-#2C(c^ z_$NIQGI6nBpQd^)1ONP+M6YqPdy({o*C^Q6nY(^J`?&pl2q66=h4hhJGTc;qpor`E z6Ndagdy2rn+Pd?EIqy4nU3nGme1njuNZ12H9~KW<`}+=B`-@7y&|zuB^M#_WwtEcD zJ-if~$T!u!m<2CRsF7JE+?#pM=2~;2t@X{UB+K5=SFC%#K4aZq^KFp6`wv^|rF`P5?+S5S+H7;(bWfbM!F5|)4WrENh6nAIo7S|YkPw`k$bEj@cTw+tR2&wCWM zY7Msrc~Bmb2hXcHPAqGik$Io~^qU8?e?M?g_fIW3Zg?}g>7U1iYNhpW^)lKHt*mXk zUe5ZuR^GBwuV7xF1(+Vw1AHmkb>69Z#ZTuOl{~}s%4?F1D$A#M%}+!b*U!1ld&9Jj zM%B0u-fF|^7=hunz12f=j2oMr^VVokTdP_AGjFXD=d@ZUvh~`Zf2P&ho~74)_g$^t zs~)}nGtX(3DJQ+^Ci}3Dy$#1dV>Aj`<-NJ@y+-4}h2EfMF-B0%8+y}#Fr#VK<9f5B zO^sXDP1Bq2yj2U%xI=HTvWeC*t&47bG(c+=JKWnk@tD>otdqCx;E%MBpt|06t=(Gt zvgf^_wLdgM4}b3MaP}3W)iMBZi|K*wuB{m_gQyqJqF&d z_Z&M!>(%luy?3t=t@o)XyxQ3B!C|``j0dyF+$(6BFhb zlLKG(CJmfmB;{<^lS3cSlCxIoDK*AxDeE57r=9MvP0yIB&)CyKOHCWD&&)JyX`?#n z>5re}F7+kbihpcB(xv~pG#Wp|@$wf;RL`YhDc?~ub-T;lk?zuf>@IUjx?kx`-8_xp zFX#lK6^LFSnt^#Y)AZv8$LI&5Aq0nxAX8t{~ci=u1&F2GJQrYY@FbGzZZg zM0*hZK{N=_Aw-K1Jwh}I(IrHi5Pd>4swg^zXceMYh-M+Wg=iO|Uzj&=Lv+kBT88Ku zqG^b(A=*|HeM2;^C_0B|9in%L<{`R=Xdj|~hzCG?0OAD@KY(}w#1|mm0PzQiM<|L< zK)eFt7ZA^Y_y)u~ApQaI5QvXJyaeJW5Kn>l3dCC!#a|#EqbNQD@ft<(8;IvXdKb&BG55YJN---CD`#Qz{32=PIP7ef3H;)xJngm@#wA0Zy8 zC_V}CN=5NYh-WH_Z$i8i;-3%?h4?7MOCf#=uO&|n5UXt~mivqQVB2=qH?3~*fPCEA z-IL;@Cnd#=k(G`I43U+NqwO)49*Hrzs~umW3yEe54@$B;cwTXlON&|*E+@A?p(S#wDx>w=z(Z+hqKAfj&JugciI=_?7Z|&XP31d zon7zm?(DXxj?*@-p|ks}4(1-WmT~qRTie|0=C7Q+d!94jTIPLcSi{fEVc#4!hnITS z9RAT3bKgVHnftx+qPhQv?>HkKe#kuFrDvQ2Cry%laPD;uy6r*P2PeikqXRE}ADkxU+gE)j```qaN4Tyxk9_@@c~tr-^PTfQGV6El zGDpum>Kxr|wRz0Q51nJ{KVgpP@``g@`8Q-A9H%q($m6mPPNFkz%QV>sXQ*?+vO8oS zoV(2vALt_c;0!S*+*M!p!3iAnJiA2%;j0 zk`zTv5Jf49svydOs0*Snh{_;JgQyLnIEd;X%7ds6qCkiWAxea(5u!*%Q6)r~ilR=4 zLLn-JC>5esh+-kCg(w%IUWkGrDuyT-qGpJq6-Ct$Wh;uhAqt169HMlH+98UEs2-wx zi25N80C53`6F}Sm;s_8|fH;GqxC6u?AT9xM3W!@k90TGS5a)on2gE@jE&_29h?_th z1>!0YXHgV)fjEq!xD3Q;AZ`P39Ej^coCo4Q5C>BHOS#a6P68R7+`21iH>8ENWpL}} z5v{ELr>z3`Ou40yK`7VB&v{Vff=WHV$stcNGSeP<`pw;`>oOwZJ(;aS-<|gDviBBN z4P8Hc`?3vFzYpEmVdb(-(bs2guKC!qEw)pc@0Wb7$p@BQnI9aS-{eEn>P&xU!r?7D zALzB`rn+wQtA9E&H>Qq7E#d z*e7dUWYlMK2KMo0ghqWH*Q(FKv|3Sz!mIZAVq|vImrcI!b2zNVp094We#?=@XZ9R9 zacaxavitWO-M(wf*N4~bIri%6Eyp*x_I&fsx<22ocst7Xw5!jFxlc!(O#erpQwjG( zeRt>BKHm=<6ZJ#4Tl@UjvUk+!CZo5U-a8@crz$PkunuQ+=%6THSX}~SVnr6*NZFaQMv0K)SOl`iiS$uFtx6~FZE5^4>yD8QB$T#t= zV!LFwPBh}%gw@Y(JNUKukf0LT?OM-|Z(sIMc4%$)vCzXCvpbx9b2N0B3%@vN*DN7woHM8f^YZ1c z;9rF+_}we{y9Iw&I#x!|9{OlL?Vm9xx^!*?F)D~z zK@1CGS`g!cm>0yrASMPeGKiT$3=Lvx5MzUwo1z#T#N=Rp@6X{a9AkJ8(}Nfv#QY!z z2r)s35h{uqLJUz+Oc7#?5OahWB*Y{kMhP)Xh+#rZ6JneY^Mn{E#6%%Rswid(F;qn{ zRfw@d%oSp=5R-)%EyQdgh6^!Wi19+q7h=E=6NVTu#EccikRhfFF=jsLHo&+c<_$4$`1k9T+nvqlCV@bb2qcj}k_jZCK#~e1u_#J%fg~73NivW` z14%ZJgab)Bki-K?K9B?iNkWiB1W87agak=Ski-N@PLKqpC`k&Es36G-lCU623zE1X z$qSOeAW008$RNoKlF%SY4U*UtCAmQooT4N-NTO4eWCuxjkfaAme30Y^i+kn%{JnC; z3H>T0^g_D?_rCF%X;n%W(SoHwmtges`(k_ru4<%{ru5lM!qs}CaUA{wiU_W`}4ou_z zVj=BT3C6sV7os#z;%3*gLPC|_C|>KWpPhOrUhA!aPCfkAwcd)?aC=V0(QjPC?XO}t zg${vxG4Msx(t4`TPxbYM^&*-ImeO*-gOdB)?2vs9P=m8W2DKdCC3M zd^h*`wNwMo){HT|zM()2T57AH^@--@~W+%b_pCLZG~WKk(YDHdogMzZgykU55kM`W_e*nd2x8f zZy;|Sll#kjXKh{5hFl;!lP*};m&w0Zmb*s!?_~{H= zKzfm>zxIVOsOm&HS-K?wsVlA%5ixd2lR4D*xqr z@{26bqTN-kxkD?Tedcjj4N{$`Kum4|YyE8gmDbEglpzWT~y+iU&o?v)Rx*OBT!?yKWhIPY4yKSS@VcnG2*|ym{+PbCPB+r(g(%c_Z*E}D5s=Esg1>HGixA$Y) zHe=VYOz&>XtHviGPkQ&59yLA1onq|InxP+9o}^{18>xRbCsNBDI(jheCjC%& zE$whveeYK{)G&?&mGB-pamF}W_K^4J_Wj1!hc|kUy}HggF?XqcGJTGAD&YbByE`Xn z-wzzG|IjT$`>|zz{dAK!-{1M`j5TAs2CB!cw zo(b_yh<8H#6XKx|ABA`+#7`lfswln+@m59gSBS?diqAs47UH)M&xQCd#CswB3-Mrx z4@0~d;>QqARuo@`c(bDTGc0WAF@DX@@ob21L%bW}-w+Rn__(5YImFK)o(}PKh_}On zLz_9q=OJDX@q38pLwsLRydUEKijo5$c>t0NAo&226Cim3k{clT0g@vic>E_%}DH~(gBjY97SZJn~r^y*@dglWA3_k$QB zJ~3f(k|jD(X1mF%uv%~bmDn%>`r^VJAj)ES@LXN5zcl(i$E!Q%Yp*4Zv~9U#oUvu+ zAlnC>`WPR)HPQ27qZsYO#REOtH(aOf==8m3=X1xkk86M8`B5)p{CIw*?WZoijGqn- z@toP$$vFGM{kH6l%Z+oh@3Q4&nvC-=9P*eRKWLPgz0p&0>IS2f{h+P1{<&5rq?)I! zTw|51-p5wn^1N35#~Gdg(`+rkH{N!gH%_bg>HVHco_<>8HFtTcy!NbSp1H_&{h*`9 z4dYgOsgDAHUH$edWL^; zoXPM{jyq`hC&z6t{FCFB8ve;~>ox!6xaT$hKho~K*c!=s1Mfni*D~ba^Tma$(5I2B00>l*{&H!-- zh(kbJ0^$@9w}3bX#5Ew!0dWsSaS(`$K%4~PCJ;w~xC+EsAnpQj7>LV2oCe}H5XXVI z4#asB#eEdjEc`BU{4YW)BFse04ZasE`j5$ZU9s$N%hoIh31qK@;Y>XlT-`BU}k8T|eHsd^@L zoIh31ugCnUdVW3TPt{whem{Szo?nmoQ}z6M%%7^~*JJ)vJ-;6Fr|S9jm_Jo7SiRqC z*WtM<5+bI5Vd7p(t4tth)uNTmC6M_8FS*_@%|AoWw!arVB8sPll`8TBvO=}zR~?Zh zzbAQDjf>P*_uQdpR&1wdp1WU`{k~ggg<+ZT;b;{*%iMZ$bw``9aWaGMv?C;_kIbOk z>$uQ_E>)tm`gi{Pc<8orJj#lMF$YJ(|t_?~}S%See}eSzMVtnu{Q7@2lCBtce>h*r($Uv52m$pw@g^7o3@>-uwS z>3N|W`;wQ9#p`tyuh&()$)sJ}N|p(@URS(^Hktg3O25#-N}Ec)Ynt1tq@1P#+en5F z_*sun5z-W67)V<+9P;JjG{yRTY8GO21>de=yG*++TYaB|tTyd2t?+#s_=M?G?>yh$ zoHrc%Jd=IGk##bKi4(cjs*T znbWbRvq!>x*?YoG=eFG9%gMaObbeVSpJ`zwxz_yFS90pNrc!rTw3m*)&QV7D#$MKT z+)>VI*vtJh$Wg)kn!Uoy&&f7$^X=DpA9Ymx)a|R}nc}Ft<`G|&<&Vg+FG;@Z=OoE; zFOj~gagnmjOQOb?2-I82ICWbs?Z!qkHObB_~*C=GCOayt_*EsMEnE-N+FDPfbqiMhxpMS~B zLH6FKR?9?)iN3I%Psjv_fxhsSGh{iER=$3VA9wWMJ-{B3I?XX)mDN6Q#2pT8!4397 zox3;&Px;P1q)vUu&|$mnL$gabB11Cmkzdx6Yn6|EQ5(5NS>?NZ$w660WT9`wtPQe! z$aLSRu}fvykP$vT;yp+7>}mGV!Al%tV(+kzt#rR5CajA+=J;KX*r59M*sXmXapg+b z<6ds=7=QSXeZqopxu!Vpo0xoyEc@}fFCns$EcdbAcX!CQvdqWxzR7{xWqFU;zNDPv zj^xlK_T;Q>j+7er+f&xP>X>%=F8lP1M;$Zv^tGp^O>xZ3Y;I2*b(|d07p&!st&L5Vgo=Zcy;7Xe`plL4W_VN^5X;UO*x-ctG zP)Gy1U?VY4eKdqe6>*i#!dBHpq5K_G3Q;OVtq{d3ifSRsg{T*zV2Fw#N`|NzqG*V! zABP;eiJ z15t1xh!at8BZwnWa3zQ{QE(@SLs4)kMR6*KTR|KP;#v^rg18sN!6>*G#K|bQ8N|^j zxEjRSD7c%VI2^>~VE*c;gX|pRcobYuQJjy0`zeY8QgA_t6GGe&;)oDegg7I_9U%@0 zaY=|%LfleO924T2isGCU+*45;l!A*woRor_LL8NXt3sTWg1bT-7UHrHr-isJ#Bm|6 zt0>M3abHDoV2BGViW5WJ7~;qjTp8lb6xQXzpoVwO5Z@}Ef;bsX~L*BWQJjjx|Iwwl(ktH#z1Z7pU06M0{*b#m3$0nZCT66f!2pBK_st4iwf%iLp=oV-HvE^NkGv#A_ ze^igcFR$<)^o3XI?hRiV@9TTKp|{`SIrjd$ZF)rN?e~=yXVwmjmd$S{P&fg){;UAU#F1~(7BfK6u zfw|Yy=!Ii61JMmcJBoj?>+Sq3T-f#KgDNYdRq-a-^(bB)qgjs8EkwHz{lWpO8tCx1 zPCG{9{C{)~(Ym7O9in+yJU#h2Ro}m5dh)g6Nrk554d!O1f6nMDVN&(yDOrmv{93bu z{5lWHXnFAbve%kdGadh;L;n|hOBHvN|FT<~B+6yvFMo1n-;t!byl6?Y;ALlFo!=L2 zGj*XSypT@tOGX|^=sjnC9UF4RP5{T)rtC7a)3fRNY{5+ZhE*ka}lcj zyn|GWNlctpl>X5{@_&nT2}wuO<@z^^`!W6fn7`{ftYGh^%q6uIExi;mr4;R+YFCiaxbj72atM*32Uh<9=~0+?XTq?z(2LH3cs*Os%diWt1Bm| z*3U02hD?o1njVvwzvRiUclX7}Unr7S@0@bV^s()0-!BFbT}d}!?f{~@GkgpaxVRhe z;#^SNW#{+)!mb}w=*ka&R|w0R11J6m`5-Uwu0}o}IQcsSD7@^Lm_Mpd@8U5r66n02 z+%Yki>(jejKFiNngiuH}67motOHb6C`arhnFaR?b(QpXab%(akNrrZl(o zYi^0~@4{Z<*R$A!E6rm6m0`1&8OibU>~^P@+s(x{q%IEc3puXf70i`CmoBw!|AQQt z7nbCJ-`jR}Yn+yCnp@4)J2aK)Gfm7j8uWJ5tPo(XRWis?>tthR z?SmB@b#|0@)_wPDN4-~%I_p2P)nQ4lYrg586^;hO&YK&K|4^pEd~UwE?<+F>WxYA5 znbQ=M^O>`0K%y+n@~*Sl(V?;+%X7}=JME6(jQgA|Rt|QwOpA3|A8lLcat-avHIogG ze>8=DRZ%uP{#15h`bIW9UTf;?4v-CxpORgdj>(3{>9X6>N3!AZB1eybZrSj7rlVKO zN1VNT-RbCkYNI(UI8_D_zhDlpG)jgo%`x{qZj<3k&pZ3?9^r^co$Va3s;gt*h&ZRV zz~UIxxu0`za!JRKI>FAN!@h6~&935%4B6y}{Ia<@s@@?})W*u@;W-;+xRK9%N7f56 z?PZ5~uJn&m@23>G%Bg@Tpw(;nl!fPQ_E-+eJPE+u;mJl(1p1p z?g(KDVGIdnNH|jnX-HU82yIAsLqZ%9=86*PkZ^~DJS6NPp$`dvhy)-qfJgx%2MUsa z$by12Ao5TYi9lqcC{lsQg@R-tvVlkkA|Hr^ATokivP1~KkHjD{QxvH|RgphR7Kr zX^5;L(uT-eQ6vtLxuQrNB6mfRJVf>sqz{ol1q*=K00k?6*Z~DgfY<`W8X)!nu?UDw zD2i1;>_Sm217aJBVjU3sfLI8`MkrVb#7-z!3dB|@SPR5nC|C@{W)#J0AaBIPE{7VSvXT3kR?5eTMaMidlU$x=Qyn*3O zebqZu^xoL?I$wI-T%*&CFz-rh7|n73)x^Y&&(+k0dWAnD(&%lKS#Oex*QgE0WDR$ju`l1bUVRNzOJ3Df0~qV(exKhY zQTLX;b^RNWNy29QVsF`Kmo>1M+;5WMCKpQHvqDBQUNZ7Y;6y*n-{JPGmt&LwQ3J1m zA|R@OCiWEI zg#2QmrMmp2v^>lX`N9s4{`urf^a?Ng=aXOOz0Y3p(`UVvJhAr5Yi4I2c--uUX)t#$N$#T(+j16%SkFJy)>iJhzV7mk5?l@Ezu|6Vp6|N3{Ym%D zzGPQWv)epD2lu&~eDk2Ksk@`AnRlo4mM3nrwEtm~JM^7q?y#v9++q9EE$I>um#*ty z#$~CJ{za;3LCLdH@+c#loou05v)*9E&dnbG-d{9p4tZIzbC+RKd!zM~*!Ay?)<)R6 zumy*t=JQJ4`5z zkXVDn8zkl+ai=J;2h-)P{4e54;oZ4n9z1XCkT3t9Q_JOF za;~vCCo{})ewlRLENp5i@jyj$$&~9XrS5LxEFB%>Dl;g+S+;uxS2^o3XSsj&bX72a zS+j*ULg{$JHTg{a`^IVnJtT0zu{))x?#5^%LdcRqwU3?)uOC z$7MSCe|L&2BK0}< zfK|7<29CJTtu5&68q_(~Jvh0ZYe=1N_s~d_YiRZ@?#PgXuE;O@SflElw?u7hW*wgM zx#jlfD_ZZ!T5lOK>l^FHb2S(47*=uQs($d#P+lRKq`+m*6zpL^QrM_ki0-geK}ljKTGd)hrS zGt!kd>K=Fc!cdpQ`-Sz6{i`15e=Xzxe%bQn{)_)irk%2wmFgZA3xCSVmX`8WEL^^t z`F@FN=g;3`H`P$j>!{~9(HNoMSd+_8O|DHfxeOi7L%!F&pFHW_Po7E1yCC&HDWuVY z5Oc-oyzsm+KGp5LbKBv}*{wH1LF41_3b%h*3by0%917Vj2+RP!#ik7zo5fAVvZ) z6NsTeOa)>r5OaYT48&w0MguV$h~Yp?2Vy*mVm=T9f|wA*h#+PJF(im7L5vAvP7s5F zm=wgQAZ7(IEJZObh;b>3c|iLJU|@Oc-LsieknPLxz|##F!!G z3^8bkNy7_9U78Unm-tuK|Gjb*%KsPt z=-*OZ)w(kVD_Yjp={sdoO!O3WkzGiGs+{~j56Wxu;CUT~e7ShpxFwT+G(BJadiw{J z23%rb)+cp#E~#L@qBVVUSLV5}rtg1lH2IFos~`R0;HB5}t>?67@9F3}x23N4;z3&_ zW!2}J~!#-M^`?M`}h72S*`C${N&fy629uI_2ns_Mq5$G zf#V4LKCS?92E{#L>bS7=hIdZ+MB1%#xh;+X|FHFhFJ2GnqV z9Esn@l_1Upl{@jIkfj-LD>2xswo2gtvTKmffh)ql?@gp{)%nDksfXg5NGDW%6t6#( zq7x5fDfpY$pCVQLtut7mH<;G1>|>hy;cBVe0ymiY4YxGupD-nEa&laJe2i-R7G+V8 z`SMo^ZT%LUhVWP4Nup`iN=LJ!y?wW=d(6>%=V*Iy##Bd(mA&jO(}p{&k2bcqicOXt zfb#Y>VNtSq)=_&%P)E7q|IpsPTpbw+cf?mb%;htCa_9m*IqM2qp}(fzyk=@%oAlD( z`Mr(H0{>suSV{V|cBZs2rJqs8yVSVk8Y|MJ$oLn^g)T)wA-#!ciU%c6V>FM7+RiMj z9a+3jLk$O&`oG$z0UzP@@e+uiKs*KFD-dsi_zT2iAU;FEYao6@!E+$KL&19>{zJio z6lJ&_g&}vaxZPFU?jjE88BqMa?XJIpXBXPCdiVbQrg_$WQjgX0hwjj_x-ELzB>yH9 zml(oP(CeiiL;1cksf&9P3$~}O#&pi&9m0xt2vd!w%WAfemBcUI;_`p@YAl%g!LPNp zq@5+Lt$!8o5LUcHm}=>;_aGT8e_xR2I4s^Ftayho6(7Yrgq8j^zm}g}3oc*i0=UWx z{9n{v-5!Gqd`CTHpfnFk?sKz44*vZ^YmXWxryn;;lqy+5231O%O$`>6@kTNSM#dX4 z6Nan)?u;Ii(L~*4RFVHWzeHiz__?nkznA}dT;oqa{MZ`E>%zQ|Lcj6#1LRG$4KOXr z`j_d&X~%gve+>-eX<;Sz-KiSLtheBc%x`vmoG$N1x>ZZbFjKj#R9~eAK59-4Z1&_2 zlBWED#oth$ zS?kTy!pimX1Kv+XhkSV`$@cO3ZGE*3y${(ow(M(csvqpxT&20O`Fs^my&4;|dUHqG z>i_hkVX-?sH)k9&8V9C&f^ROR1ut4`Q}6ep@yAkWt2a<-t6%a5Pwq4-!p1+cIHV{Q zmiH#9AQ=(=7Ua!B-Z11%L*6*#%|kwbqI?MXj3z#aqI?+02ZDSk$OnUbILHT7ln)8h z<&TLZe)g|OACxl`(lsQ&lzbx8^i=gd{INntTa=L>@u0jZ51vv`vaJeAH307XGe8c-FJU-)_e7| ztNt_loR;KUEH~ZrwzENGB}>Ecd(DkPzO~%k_bqed!0ncxW*O$7oa3&h0S!UrKtzsXsw4U6^*(NN>(soE$XGl<_rCsYI z&i3U(EunSFm_xs+W$AGCD|5$9*_KZG-Zyu4*Kl=N`!93Xxo2G67X8y~OW5z~K5MzN z$G~;2o@4*d*{h|?)w|b3XYW%xEn&eAn!|R!VF|AkZw_DixTWv$0p@;-SGxM|9`B4u zeatmrRe$He5mQ~-f)>s}ork*yC!3u^>U44q9d^<=G`p@VGUQ`tSQT0xkqc+yD z4A0qVzI{oK<&La3%p+!bEhE=GZXPxEJg0^wI?feWuC6ogcIqXKLC! z*UZd5&a_dJUFi#(IaSKO?Dg4Y`oJ%f_y3sxeg6Es#u%N9!7Z)E=KgF{t{QzSJ>msN z;EJUEJ>w+`$s3n+0_<#5=~~L(a0HHV1&A|1+yNFg_7=C`=Qsw$H6YFbaSw=tKwJdk zBoH@&I10p7AkG4D7l^|^Tn6Ga5Vuhj$AP$xqBsx4eIO15aUqBkLEH%9NDx@z`Z?QT`uJ3UO12qe5I2 z;;ayNg*Yt4Wg$)raa)MvLR=T(yo%z!5C>Ki7lt@7#El`23~^yn&dfe41rN9V}8jD7ko0vLuS)LCJ@U2PG2+#hc`+*&^DIu9zXB?zRW1g51z5sA1l{$ogUQOdV2Fl%b9>3?la3yyUrdf zYt8<@nXbC;KWwd+@`JL(fka~pFC8Rzfbqc9hNZmr} z7gEQHQqPdOR+RdN)H$TyIqB3rr2Zl20CFB6=K^v*Am>C;&I`<2_e9PQ$DAX`d4hTC zn#lR$m~*Bm=M8f1Amon!Vdk zyQSv=Z|nEJ)p|sEygj?c$>sJWNALQ>b-A^u7DMDVR%!Vs6AIPs%@s9F5`hdcQp37s zK?#{+XwDyW6d`x+Siz8C-K=6*Nc&vgU0%t1&z$SH+0Dm7-aEg+`-gl6$mdX$&jR^8 zit?Etp9}KYAfFHN86lq&@>wCD7hcWJtZuk-b2&=ZmbrnyUIh2D$gf>+uk>D-Rc`ZT zo*Up^bE1ds&8&Y|_lCY@+k33MZGX*gJ^R;tSh>0T^q`J5R+%~z;PsqYUe5?i3GXDeZh-Z1FA^3xAQ(J=Xt@4>AfJI zSW!MTs#eziTZ-m$c`rm9#m%m^0rG;p zGhP&4@e5xV$@26f-So!f9sCLZXZ}TFkssxj+vJHdo99>UmF0|2$X%DWeMO$H^?hka zr&aIyI3&B{SQmTD@w*(cLG|siTl+fV%9XIkz1-X}{_r9D zgazTI_-*HX6O(U|-v7^i36Yhg*MGh5?vQV#xBq$HUIgajibAR$2s2~0?ELIPA#f)o;{ ziW0080#;FimO|h{f|o)7LxPw>AVY$gLO?@;8WPy>?>uz#eZ^P1&@(Hx(=*TA@B8=ByY)Tu zUYC%uJJ_Y7_2lY~Heut;Z3mxrgaq|5w`;xE@rw;#zQ4iQY1MYM>qJpDe7Utsk~6GP zcSqRidFJra4ISZoCY$?yQO40PbC|jR)&{1Ch3(A)UM_7Km{QZMJ#^SKC_2PBIDU(1 zNcS6^L;JsI8fN*)8QJ_H(`}}G&Zxj;jwtWj&f(ub=(yeUwDXQ#@s1J8-!hMUV}N7S zoDB1wk69ghoWmTQ7GWA4KH5BHR7=y?roGHDU9UHdyFqux);(p4J=w!~*STG$xE+n0 z;}5JhO?a)WGk()f$HaL@oRgNm;Yhgq1E>A|#~pXy{*^g#+%(7Jj_;e3ZoR`XrPja9 z$t_b%$!Gp)PN{OcDP?bhdD^#~P1D~TWS+6Do+&$4esO19{V8Yu_0?R5Nv^N{<>LB^@6+gr;JQj4YI~QWwL9{H#_#t>?2zDr z1P~;MAc3SP!2}5?=npChJqawnUiB?dBnbJt1R~{XZ-GM4@^=YbMG0O=04qumLjoBR z%#eVl5Y&*srV!ka0H+Y-kU*yp?2v$`5cH71rx5%Q0Vs+HAVPqM0U`*9C?LXshyx-J zh)5tpp&%BBU?_+NA{+|hfe1)ZL$VL`+N5g0^d5TQZD1`!-YbP(Y| z#0L?eqKFV8L`4xJM359j2@xg*aY6)2L8S0cE7bhWPTIC;)xs*9omg9hw6F%4UV68O z$sRUS-g`*iW+y6v1Y3GUkB_$WjE;{RmykFqF4{6=N}?o^=xNc3aY@oE6gMe4J|UXs z{w2mfP#L+Ut2|L@!y!-p@~dFiY-_j6mpRj_UDs_yQQT|K{Z zHEh*j zi8e^Y!NS(VCIb06Q3$Wn`q)Mr>8UFYY@uQH;dhC{wwJa($!6ztrc zb$_bT*KwwNtS=|?7E@WiC%__o?H;R;@v5{J)QFU#o^XlH(ZJL8M1Peh>*N7S9Q$8k7|%iXA{K zLGe$w8jY8?r7Q+s?T$0-h=L_4iY-yFCPlF)3Kj*6JI2-$mJVSb)AwAHLUT8>9G^95g z(j$G1TX3OWbRRXDW_sv!d#Q!`xm|R@mWXg!geGqCn1o4_<0f4}AKY#7XUfRKOxJn! z`*-Oz`uEfR>-SDF!=!7XsxM+;Q`3N#zV{7GxlXzwKJg8T4sr~RU*j9ny@F$C|3$uG zmaiR=&1d>l-R9QOO?*zdmmQ@Qk?V4vJ^tz7a)*r(KbN-p)|e933h683k>JRuQy=mD6@16KZF|aKLcT-fN zm%g+{%--L;D~&|3)NS$ZG*@SLn%o_0%9i6_Nk1<8HCI}*mR==+eDtKTMHr_vTK+q2?LzN&Z_IM*n;vhgy+7=P z_x+;>v~49fdAF^O)b>6R=-romuTk7Czv}IBxrp=+3jWy&H|l#=<2&ciKUa}ZeX78X zaOtDFFwnT*EpXK*C;f4S_`HNoUdf9ie4Viqu&B4di7|ekID^ERqQn~{<`gCFAh8FD zKi)xc^S`+HPaOP7oBw}0Jr{a4u=E?u={KFoo=S!40`5xmo%=1=- zE~`3ejK?zN3quWlAGXP8IQ~&jqmX6B&3&hM8V5dTsBM;WUeKBbbnrCInxi#4THABW zx(QnIouRhij0mm8%38LTX)QJDBiXiAvHgtJiCMNbVZlb*!5&*kP!*$H>t}84%bqYo zYp?T!9^PqmIP3Cs-1LUgY2QCQomcG8x~v`R={omyt=pnoJ+_1eTK8FFY&{01Xg$aF zw)JXxyVko`kgfNrhm5e`o}RFslZ^06H+#ZYYDVAVY^D&^9`Fx;7@Zm2GUL5n4=GRa?yQu3Bv4 z?`^SLEm~aJPi%27m(<1|USpfEpq>%GZI@?avdNgVVznn>*g?ZS_X*G4AsdXugc+X6 zflG~~fg?RhIqS9L(CN11tmn0q8Y65e>t<`yPIt9U&xq4z?6KHV)B0&MGfUdiMg?o> zkAGoH7vJ>fm#dLWe*JIA;O>7%k!m)3xa`;^v#Qh#tGq=EnOjxFeXa8X4C5!r2too4 z5^OMUPJjd*#{?cE_#goY2|}2+FS7(A#{{IJ1SKReA;Ad=P)LwM0u>Uhkbs2*EhKOu z!3zmsNDxB;84}EpfL4^Ch6FYwxFG=!335oFLxLR=@Q|Q~1U@AAAp(Gi03rlM5d%aJ ziXsY#Fcd``5P?8M0uc&CED*s!L<12HL_81yK|}-*lA?$SA}B=>6+~EyA})x)AR>bZ z4I(y(;2@%d2oEAYhyWoXga{ELMu;F4MU)U>DvCHE0#y`|LWBwtD@3pm(L#g^5idl* z5D`O!3=uO#(262zh_Dq!+z^2)ipU{Chlm{_c!=mB!iR_-VgQPNMiaO&bVAl>Y~A%2 zE7EMQ-^BFR%D%jLm5q9K=V`%GRt|Vjw#kF%H5~HAablI0k$Io~^qU8?wVgwawXZj{ zyOwsmK-jdv!0W%KOIGTt5XzU{rW9%Fr*f7v!Hde+!j^`Ev)_S44ZN?UDP z`kXMf9A9Dkp!z7|gWdo3{QH4}dhY71JE!dSer(%j>>8Ho-EDc*_$1^>?;g{m#;1X) z-cP+#jJ-Ke==(gk8T+$l=m(Z3X<6$=>YvSt)Vvwp^v~l$wS#Fl>4(B=X>=;bA2u0ZAKvIawtJazeA5fwZ{FFceY;|V?tA(L z?Zn)r`pNV;+Np#G^zZJRpnX4Zy#7PC2<^v~{q@sL;*6iFw9wC#?`NDj-Pe2eNU)K; zr@8msmMTV0W@YdB7sPlT_jyaq-f5Jay2D$_?$b)^-|A(w9a?$IO1*-4ffitTOb_s- zXxDkC>J>koZ&dOO*DJ3{HmWS2;x#`JWn4e!Ht!A7IvQ2uI(VxMuVVy;*Y;Kq%`t9l za?V?$L2a#O`OmzyN}SVboygW}fBuT7zL9 zdmD~_#%L6>%6oI)du46Yh2EfMF-B0%8+y}#Fr#VK<9f5BO^sXDjZAI6vsrv_Mz_=! zD=WsgOuH%7`p7r&tzx@mw@x(T+l1B6Zaet3_>iCy+3i}-k8fZ0PpFL7YPUt9$7~4?q;{V*EWXFU@u@w>wvX@CvVUst zUNz%;pL)_87CguZ+nMSOuhhl}UpdO#_jsVuZ}AMh|L)dWMCwR=z^ZE6z!BYa?Xe%U zL7i{X2T$3f4XIN~A3E$!ZRpuA^~jLLTI81{yixTsji?QWyu)*zG;UwA(R)W$sxe~L z3*M3IMj4~V&hg%vVKelIrF!)2k=p3s2lO$q-L$cl#_KU*H)%1)`|GhmrL@?sE%dmu zUutnLoAvRBH)|6XH221DJ7i2uuI!z(Vxy5T%;&YweZjapWQR8~VU965@O5v}zzIfD z&UQUH^Z_k7Yo(r2W4xBK?lFDZ>HgaEjH&vJJuS49OtY3Ys*|4n_(|>JC06|x zpfYCfs$GfxSO1cXF6>2HWR2V37Rg;cSWP!GtFP6#_~qVIcRD?xT>P@IvMMF~UkkYy zzNG!oRvA_AxLPe28{!x%g4hwnk`%?3Al9TP_5`sgh)qGP3Sw6f%YxVz#JV8%1+g%Q zjX|tTQS1z2X^LWN5Nm@47l7s%n}b*##O@%L2eCbf^+D`UQ7jN*gAgl(*dfFcA+`vy zMuxbAsBn3dy03;PCN;-g~1V~zd zqy|WOfTRdWnt-GVNVfTR#bNh6R{qA2MEl2RaP1(I4I=>?KvAZZ4Y zY9Q$bl5!wv2ah9|NkG?F}IKV zZTKK&m>p)!t&YoV!|Y%*5@&4IkR3Baxg4eB+r_7nE@~Z7QOS{LsC6W)QVr3FITe!7 z5tUr#|9ZS<;~(?&?ehIrzrFdK$LF*Ad4FEd=j;9Xyx*Vq8BANuQ7u3Q41oRH`WH6p~UEC9OhI ztD>Y=NQ#A|SxBmdq+3YJg`{0b>V>3VND79eVMr=glynS9$%>MeA*oqW(laDQL(()P zRYTG>BxOU=HY`rvMW$}`B)8=DtFA6SeN8j1{Nx^~y*k}frRO9yX|z0A*gs*4-Xmr5 zgh^A9MvuFJzLZ<#`%B4I@qhZv_dkE!k{V?9`^P8$e?LK{>po5EkWos-&wT&pXTFQa zDLKRd{;uPc{`7k4jtJ7Q?POr&$ z``tCJcRqVEBlGzuUGKg*EyF!)nrq{N+cMr8d7Ep~jH#jT-_p&s`SxLxQ*OJ}Fg!ul?s1ACt;x8?a3<%jh*m;YjtUa4L+ zbER2xot3|tWv((Z$*JwxZLWGtUuV^Mfv)OpUvM_w6k~4UKUHtK_@L`1ZGp2{pF~%) zZ@TLKjjNdbvtykBzO7sVuFlSuo}K1ahM%*0zn{!KdI!0CMl8whRsC6aSfjqyuv0VL z;pGzLCWy@)aU@c1g7k3r$!aAxK}K5oEvu9rHNCr~|J?7hqlY)OSSMDLn;>N@1Fa{l zgX(`{i7{u(O^^>Rbv=|WbSUm3YwLV^$yh>&1}1SBLV zA%O`APDKe&NRUDTRZ)T!60nLAw2;76l;DK~u%ZMpB#@yBW@?Lorbti&0$Wjn8xr7( z66BCThXlK#1Uw|@6(#T?!4DAtL0^RQba6_E$4`Lp0d0@zi!1`4k)FTiMvJ;gFZ~ zjK}TIum8^GoZBXA@iVI|FDxkQT{3vNW$FF5dtYoZ)%MbuTf8qP|X4Spx4)3sSDE*^%!>1=aZy)^J`_9U2Pv-mUyzkC`!{c7M z$h$Flf#(9TkMwR1iuG)Xnr`1(rL!k1aD@G%2fX(DZisW9os$oGKeO!j z>>B(^_HKQN`}2^8vU5!Lx%bqZki9oJ&9XP|W&6JBskVK&^X&VV-($R3h=cZ4iEHxQ?0q@h<_FDx3zxo94&j&d-SKzJl`GO z={>f4t>^fbHQp2N?zDZsa);gf{2JTI`ES~PnDwOXRPsXm>5Ebz`)7g6=tAQsk!_Ry1<%=HElX>0}bHDVIoZ|78 zvgg@K+b-D4SUtAfc&aCbdut4B>8TkR;H}lEqNjF11#g`u0k*p3j(h8sES`;j$e}7; z=3I__|D<UUkDEKrHY#wTeRN`! zExyuJdqQ}SE#deud!m0;TjIxE?MY=%*^*W?w2wW!%QkLdXYcq=PkQc5^Yczvxzm$8 zIL~XJzs55$#N$m#e$q3k=6l}M=xLtRyaV>%G#mf_cimQ0ll5=8dR6{AyLfTU0@^ZL z-35#FseNh7$VW8QMIqf2bW?;$_e9vG?g`a9aU*M36`CGdIpxIEV-WL$7$C$1Aw~!> zLx>?lOc7#?5OahWB*Y{Y#V8?WsVIgCF-?eZLd+9lpb!&<7%9X|A%+SuRfw@d%oSp= z5R-)%EyQdU#c&~}t0=|`F<*!QLrfTA#1J!v7&63^A;t_bXNW;VOd4X;5VM9DHoV-q za!!37^XB6iIK;#uMh-D^h@nGF9b)W?V(t)wR}_5(y-kKoSZhsX!77 zB)LEmjG`nNNTPux8%V-|D(SF8;-N_L0VE(u5`rWmNHT&XBzXCm@AuR($%&7Xpdd*~ zQ4$p-SwRvOBxyks7bJN>5*Q?jK@u4xnL!d7B&k6X8zi|w5*#GSK@y$f559I-|I6d* z*l+tWb=+X%r|P)js!!B$qs6P#v7Tm9-`{xlbT|6j_SBo=3I5$dS{GHzDzn>lGJgV)g9Dv z(9FK-*!*}Mb=)>F(aYDhOF65KgTo`$ar=S$)NzP^D|OtVU8Xwj=u=4@ht}WgF-Zw6 zUSvVlNAV&H3srplDT^!=H%!8cY?$2e8Vpf`(Cd|@v>dQe3idUJ9Q;GpV0dA7JJafQ z4S0L1lc~p5HNZ708>O)M=8%KpYu4gxR#G6BDT8truMZBOSd+r3@BNcVJIdBWapgTr(4{A~Lz zi$-}Y$#2-Z&zWWG5xv0PGd|AND=5t#)~ly2?9?)Ec;HA+_|AWMBP(_HM6Mq1?Q^`T zr|+}#?EQ9IY*Ew4+54|;Vv8OgWw$OYZ5z-v$UboLVcQ_Ts`i+{S+WzZmke?WI8GLt+jb`JEup5E89a&>#}4fQhC-(xTAW!&iXT_Lu2#^m(|h>TxW; zVu81~$Fcb8?cbWv-@4Orefpo+=~(E2^tp^EvR%qQu&~one3;|^R;MHW&F{m* z6~)Kljdw92a*+9#9Qu zA9H?ZBza4k8ik#awRcm4)1yh1{Km+@XcV7j}NC zz8Kv^eK5iaGRg@u(g`x!2{PgdGU`cDMm|ACKPmnhE56@QXQZ@f{*Sg@`)?2_vXs?UcTPDG^#Y~Or-V7Yp3GTjKw`ee*x)9 zBiQmMHv0>uKr=1n#B2-v^;kos!N;%F9K{}s$5s`Ots)NSNLG~2WJrgyqI4?5;^s_M z8}-0|Y{;N&MH!e48JrCnpbZ(M4H>8n|EkTIzqw5o+0yu|(J0e{zYLa|Z(PvQ2-Ktd zx7G*r)LTqQ)_V<#(c5nttLDmuvbg-118e%OqaiF_&+<@#d1KPXGb`Q?>X=`%IZO4VXRS4c&a%{u zoN2AqDb7+mz-Fz}WQMzL`5xAKB}cmJwW^`j`=N)c{#VVMemib*HF(d*+3=0Bu11T$ zb?RxI%#CM%sU7IQ$-S`$09FA^!2^4()z&cJ%3O z4)v?9hknz--09qpdgraa<}P1+u6K1ccXivaPQTeG=elLlBHfaF)YW~?Th1QQ+gv^4 zpLX^NdfgS)>uzV*sV~jpfluk-J2#mlE8V3>u71(n=lF2F@3R|S{dP}vMonMh>c4iF zGkW-aF6+Xs&H-H$T?5k^ItTehx?+ZyoH6HHxvo3^{G1c!+cRI(N5p5FN2br!ZBfTu zadVeAM+JW38l8BbGrp3`l@OljOgR3SE73pFnfP(4E6JyoGik*T*Vu0=Ima!WWFDX0 zQol28uz7;3qMkgYquDDFzqqE>aXF`E ze&L#S<}v48GHdqTIjPR+GoN?O$Qa_BIbybJ)>ENQxh5!4T2^H&`d`^{KL5pkCezvp zv{4eQJeohr#>7qXD$hg6M>MrBbJx$do9d_;?B&@`*>B8q68+^FiT?78M1OfkqKEAF zkl~3#g=#8$HL1NwrG#v%Bf7lSyNqPQ8v(IBn{aW;s% zK^zX^auBD3xE;jtAg%{-K1Fdq_?y=@5O?JJaY%?uLYxxfmJr8;xF*CoA?^urP(^W3 zh?6Rcn?f8_QCt<`tPppFI4s0vAx;Z%TZrRATo>ZJ5ch>Ru%fsy#EBKfjUkS#D6R}~ zW{5jO92(-%5T}N?HN525rAy{72vXFmPx*5H#eW5s9e?6aH15mJeQEDHYbAX5?nP6r zUW=u^DqUJDp~aMhNvZkmsvZNW$f8OM`9vw%DlU8_AwHu@m+XuS?TmFNo9pXy$7p*) zo%-JIj_LdA?sV>3*H_zr&PUH(l&u}u|B&v9X{Mci@}%>}GFI&;_YnQ(%9?RzKtuh^ z*0;2?zVAEFE<0+R`|gZ>{=sCU!3Pe#;nWX|MoxdH9=y?LJo`4iNrm-B)7X;EreBTH znsq$rZ1&kYt>aG_&d`i0TBifM^iJQFFuG)&baqWP8M7pz{M+uy{9A%DDf5@la#~J$ zdA{&#PyYIwGRwh@PQ_eUBcw5E1yVDLQag|ug47bErWB>NAT_2awFapw zGXpt0kTawxX9;qqAZH8ClE3ATIb%Hh-tOjhzNULqV@+SSeMf${Ryd1Ql3EC4QW3*c zeB^7{C<|p{-_Id0=`VFQp5Nf(aNh4{EPm!&$4B!j8u`}~bxdc^OxDgFi8YKbLN=N)A&=L{cnuEXcy5Tm^2c9dVS zO7r!;;HcnPY*gIyuCz$*H7c)LEG-eIragVHv_S6Bs!dCfmPfo+V`#XvIC^WfIt55e zqlH$dNtmNVb}+ znTdw^@%E0kiF34elWIAF!^ddt2cB_+_(y0R+U<38^l7Pu*8kZQ`b|Zx)44q|ao-88 z%NH9YgZmoYHasU2^&K;ASu{&B_9sU7Ig1=UqFqMM_!*8~L5~?>y+%61PHoo01E-t9 zcfPDeRvIBQJj~Pj9JfdYe$nW+d$=QN`ZP!XwPt(t@Y@{Lh1Ki>x^{C6oP63o$ghzj zX7Fx%%=r?IAt4#|A%_~u*tpNUv74DRZ>@LO(ywH)yr;aw=e#dj^Dgg*_?IMG4)@xk z-gCswon{{uxYRK^@iu#WrTZNT;oa;B$M0|?`ZuyCe%!~ApPvC~HI&s723}%jzeYv`jS8)t;uH|KfH(%k zH6YFbaSsX(0&x)vP6BZgMR62}t0;=IK-`6b!$4dH;xrJqfjADtbs)|IaUX~SL0kyp zL=ZQEI1Jm-4B}>r;%E?8Qxs=| zxSOIl9K_`)I32|8AdUxdJ&5x`+z;Y_5Eq0vA;b+8#StN{s3^`z!5tOFAt|^d#3?Db zCB!i)xF*CoDYz%ZK_M;*aZ-qzLL3$1s*2*Q5O-A+hlRMTqBt%5yRUHkAGq@kHg!t; zg6OPt9N7)0@r#RZI?qv^}In-f(yt(~`myz4z5gU8W%OdUFHaz0Jd48_r zmPK~2CE4xhKIdV3kLVX1J>!$@y@KXAn8lLC*I9TyTozqt!SzU4Y@LPHS!BK6?*8`T z#@1CL{*4kWx`}o9Gt!hPSKQbtZfuF^{fUjOCoolMY>iUM7N_ADw}Chg#C6~wzIdQG z6a|-pI2FXLAdUrbEr@eL+zaAh5Ep|u87!ES7e}MuYKr1)6x>Zw9FBs^L7WcacCfgy z6-hOyOI*lhE`>{7$mK4DOJ2xjFNI5A$mK7EOJGI042E0^E6U|CgoYThZf_(ux~f|D!uw#f_~$_0HBG zB3`+FbiBB+RovJjnH1mID!8*%+}I)>itlXwp^dF;-`)Dlx_FU|t?W;0n5G;(C;?Lc zS9i9OQ&N*B=qa-H!ub6ATjBkPqbo}pIbfrt$;N)gMUFd6)uX0cYXqM)YBv4Os8xNR zQM=T~M(tCXMxC!$8qy1F)Z6r^QUC3CG{4tg*BU(gyw>m`Lu)jBwx*9y(HajQtu^Tv zqc!asrrp%KgVxN?Uu#~mj^+|&zt?%ovX#KXmYeYTrkkvCRKEW8& zal8@JFWeYhyT37{b$~JCXR{Gov$q!ec{O9`k1e!eYfl@u?ef)zJF9B9zj;g>G3%5z za=|B>ZR9R3ZpKk#)Gcpmqi^44#5a0cOX&8xF{a!aBe8*DBp!LvxZ^^Kk(4#f7`s2l z7`N;;WBith+MN${GbX$=NK3w>kzv0-M4LFEtCljRwl=A4LoGGz7j1G?la>}#(@67v zrA@8;voSUMeQnx_J;q(Gm$bV-*(3c8r!6&RJu*uTHYid0f3OOq3|-*b zN-gIgoprmi84&ojhXH}S(m_|SqO^2wm5}(87dqpDW%pO*n$b!h84*h%Y9WyeiC#zq zL!wwwA{i3RkcfsvH6*ej(G7`kNR&e&9TM%3h=)WyB=RBA4^aR_1rQ}DiW(q_fT#kZ z42U`)3W2Buq7;Z)Ac}#g2BI8@dLRmds0gAYMNtz(QHr7}h_WE+f+!54GKkV3YJ(^a zqB@B3AnJoC5TZhe5+Q1YC{j^W2~nn^s1u@4h)N+!g{T#xScqyN%7v&GqF{)MAxeg* z8KP)KQ8h%_ilT0a!XYY$C>^49h~gothbSMSeux7=Tma$(5I2B00>l*{&Y&pn0C5P2 zOF*0g;ua9cfVc+4IUw!gx}QN5q{=TEwXe|M`X?W%?j`x*n& zN;(Gl1sXAf4?1GbS22c!Y;g=Z)LM&e__Zl^b7gI4-e&2l^=h}}zARm|JG9#~=SkP> zo7%|qandE5ZN$x;>lhXIhA}!Z$q`>^fsqj2*O72M%}DeQbR>QpYb5zpaU`wiY>Yj8 z(lKt~t=jnP%5t}_lQvC)y}~^xy;{lb=g;DoTVxqEt~L6%wuR>cI(f)%O#< ze4Yq~L@^|iA<+zpXh>8mN@PQ#TTvn$66J~#>5yor5b=2lmk%@1qDG=L_tXqHBnF$L{$`&1yPrxC=8-9 zMNt|=ZHl5ei0UB9gQyRpK!^$v>1g9h2kazurQQMX zQ2uObS3f;pQ9i{+xl1=wK~!HSE-OJp1P$v*k>S+uW=>&6?A!H_ckptTW9T z)2uJe+S2u8U1`>oW<6=vl4c!g){tiXXx5Hq-DuW~X1!?Eie{Z?)`<3(^`TiCIzZNi zW=-f;nbT~oclNdhrr&03v$};fXl6Itjm?pqCvDyjy~T4RZ?sRXGu1XVbBTT0nPIlO z((kk1ozvAeeP*J4Mn*&1%n_0HSx=d4rI>@FRGI7kE9-OVU%B!Hdw&24xBRO~hJMOI zfs$djx>+<(t|leQc3HcM)!YV5O zPe@8hojf5i|8Df4fy6~orQlv)wMWZ5l9Ac6@B2GOwSKdHX4{NeVv?jEvHxumq=Ic- zX(Vmy$E&O#D+ys&wy83gS=RiUi^2J;!xrJ#SN;KozZ56t7ejtITvg6x!*O>@Z0wZ@-*TKj-Es+WUH zT^f}OPf%aKern>^&q&-rJr({b)XRVRBm{pZ-^ZT{`E%iwPelBNKU=lheNAtVC}B!` zaj#TS18K%fv%Gss(p||Dq*0zQb##I~Rqr2{7B@CIKLjIUD_Nk&XST4taTY z!o>4+>-WyCSK@n1y^|-b^}pP1@!OtlZLo2*rQxbKtc?~wVbLF5U~N2miY33f%90*5 zS6R}7<|<2i&|GCn51Oki=|OXqB|T`avZO~rb9JaEe@Txn9+vdz5k1w~Gd|4HD`=QC zte3y#-z~ZEcUc~?1c7n3rCRk7t5=rV5KYfl{;V$1Juo(66%Z;!O>iFtL*iesr`xQ&Lby3F! zOSlo3e4gNh1Slj(;qRSwkU-|=u+}MLy;I1Vr;v3|A#0yP)<1=;feKj%6|xp8WIa^K znyB#qQlsTBC$=J+5HBv;Wm+29hZCfpfsMJ!rAdQql!ASg7XKm3i#@&I4%3?-KFr&r z2ClIrHlHdey6n)1kf+`6H!`Y>F=bpB?p}A&YF(deSoVf~Xx)3PmUUm<3)%bDO}6Ym z*VdZ5=&a?y{?sLbQ zSkFKBw7bCvuUH#SJ>_oX9FVOCf9F=WWhxwWN7!ar2hJ+(o+UPT?I9JHK3b}zv_RY< zKjp*X%-q&uAD1q;#T967FWtc*H*$-s@LglTymQFASCkrn)B>a?Ahn?=H3F#>MX4D` z?LcY>QcIAUg47nI#vru@sX0jPDM}4OYEe;Y5>lIx8kI99Pqe>ch14vhb|Ezksb$zi zY8q18kQ#@xrVEt ztk1p2yf^f1%id$c4Crh*vvsHWtgpv?c6nLXxnngf=O28~)!>6?Ee)q0ay4@HbnC(UU8N~po8`|5^06+Pbym??Vcl$_o*oF74m)|?-}yG73IA{-oK*M z0i+%vbpfdlNS#3H1yVPV`hnCDq@EO|t|0ZLD0K#@H%Q%aE~!6A9YX36QkSr>$su*h z@hth?>qgeUsaImD{mt!tO?RK#Y+B`S$d4>HFnL0J@`R)~6;sx$F8>OgoL^tC|4(xD z7w?&9TJga)-kz#~p8eRpvXqkpHp*n#*stM`m-*)K-iwAGvOYikt1XL76Wy*6Q?{&{ z(#`TlcT@K2SiAepChe_jIxV%VEtQ!4R=v;NZyj7@Ras!GZr$cL!Ln`qH`%*_2fKHr zJ!ZMEy{jefv9qp=+dg)iQuet@Ot!j9S|VMg2DfvU)?2yC+#GEwYpUe(sqnVN=fL-_ za(UG)<=@@z^4nv67c*CsSzsp@UVu88Zn77>3Tcnw5 z^nTi1v+856TFviv*E*T%s#ErMcb)A+Ty+oM;;y$U)K&k};TFF~>$w`NyxG#we%{q+ zzHZTHl`=O@E@^4f>72P~|AUsB>h3o;3pKf${qnB4`44B@{(BaiTm1aKJK(){TrEF; z$=&LO=UuJedcYlc&umwlC&#*jMvZov9dj*hdxW{#*^(^5-99(BxAe7yROn^yP$|RG zvFt8asHuu2^rLd-PT#h2cYfulxyuKY++F{*&D?F-_wJj=zHYwdf$eU~pbuT$?^x~b z5&W8~XT%fkUezCQg|&Ud5_Zb&3a`4r68?QjbHvFsOXSaxAxYJZ!#okaCqB%Dr>BNRn4ENUh)_atlQ*TR%wMLJ5(iOkxg} zP?VyEY2~wsE2e7(GIo?Sx50TxKtqBW64;R7h6Fey$RU9a33f=pLxLU>_>kaN6ahd) z0N05SAYxDyK|n;ID8hh<11f>AgGeYM6o6PDf`NzzA{>Z#AOeDjNKu3Y5femE5K%#d z1rZlSU=Wc(ga#2CL~sz%L4*epA4Gr<5h{uhA!1Y%K|(|c5hg^O5P?EO3K1$qtPsIM zL<VDftZP+7z)Hx6vbE|<^nMo zh{-^V24Xf4!-1F%#CRa)12G_o2|s?^4;Cb9pagWPe$vxRodEH~)D$5^}`BPH8Rp+J3 zyeUJx)su$Ed?}&cnvtP0Pf9&+?SOhRKT1b?-E!w;UX;4_dOy^0)c^9F-EaF@M}v*~ z?G0D$b2M7~u3b;7BJH)s_9lZ*%B`Vyyf=mHlzC2`_cpJ&M&>t}?e)*w?g;Q5?G4CX z?Pz&4%-brn_yPX^)@(_CiJ6aIjwR2_$TPX%dDVG&6qL&& zqV9lRQwpTVloNAXKqLW?1w~Wm3F3kh9`(p zn_PYxE4shlVxSBboTd+Kt@lpVd#A)r7@aUFzYp^2b_Y5yC{tvIuBV#cJT$@db5K9q znHEz##qEZF+$@WQ{hHYx1~9#zL7{+-ovhj!c4 zaYr9NbsSp%h?kwv!+GkMp{wk4-r`Zm#nafVRrOIkXJCG#`ZrEvbHh&aSMa1FGxE1> zN}BF({)h;p*5!=MfV9yG6H*HwjlO;lR}1;>OFdkP85va~JsB4)&UGi-o7d;2>U%?9 zH}C!Kta)GEFJ1fA4b}Ibt7*<%l&c@u|BTra6Re+p@}ldrnW8PM8% zX6t7CtnUuj*=1*(=Z=*%pMP+Mv%v?Cm>W+0+}X$(;?jdZbvB-zWNuO+%h@zmb2a_S zt~cxWgR9wRTlJ1VZE=NW+^2Us@U`5_uHx*Hb5n&Ft*fz%MBmLN5yD76KtF-560 zNXUmLTXr1Y8g_~klN;bP~(tVhtxcz_915gauy(G zLQ&2JW{*mr~BVDegPZ`vZ=8H-|oM+tPNMcWdL7o~(M`+CT8! zX8YjmNA?eozHYm6M)IAbAJRS>lx*5H_-k#qzR&b|$Yw3alxf;i^JQ(1$7$M|x5@az zeUE8h?u*9$<>`*x%(=#ac@BpsJ<0eoX_VuunSG6~BYQaxjtDdk1vGaY4)3FVQ>~}z zh<|JC$Pdj--yQa9$9C^D9pAD;E256Cdks=Xp5i-*M1DP7Qhh{It)m*h9y+O}mzJjq zDC&NSycQv*YgRtN$q9g*1XwV!G$(^&P6*_rKu!$g!H^NH9PG z0umIEz<>k?BtRfR0tpmIus{L^5;Ty&fdmgEfD|Q&Ab|u4Cip)OD3$4aO}o2D@9i&7 zN~G14wz&*+9n|;gCy#IN;&Ruy*^c6i%YWQa|)r-Q9{{BH61-OJbL`FsD-sOiG-yLUAzV|ukcaaFqe=#&Jm|NhMw@|)#r zxg@FKke3%8n{Qrw_dv^A^*(TAG@NhA_{?rzUwejo{hB4N4QEza-d^~*`JFun-I-H; zUGHwFV{s3g@7nm>bC&nIY%*_}neBex?}=`TX>RrOt@(FO-fig$pHkixzHgQuarOmQuHdnBQ$;QonZlu9D4nbTR@B9zoP)wrcxGti zq&&OA1vx{IvjjO)kh7&IXAE-I6y?l8&K~3pLe3)OOhV2k-b97RD3ur5x9JaqUlz<Pabj zjiH0JnvpSjtxg@a+5sK(I!y){b<5Y$>y->K>iy8(S^ulrhTo1_&ITKQF&eHq<7~9} z3qwz9r8l1aj?rXDCB5m`z1mG7-|Nl#ysb5_xn1{fnXdWg9d`!!I<$b?Pn|7~j?!9X zu5z~CInxMCf85z-wao~cIoWA`yob>?@iD#Kq??T3@KnA1pt44Y{}8=HyCX(NpHMy2 zuZ$M@O+CHSxo@=2Th8lUzW6}v>Z;@Hw&7Ln=J{uxw=8;Cvn20xcAvA{=n>2-{ z(JRR54C{5L(Ywk$&hVR}jqo$i>yf3~8j(4(^*#ry8-1T$?d-REtPwT+31|Pc{fy}0 zQ=Ha?ZHxh3hdKwQX~rPGF3y<2KNvCR8#srAd}a(e)LD;hcv6eq?57XS+o=s(ny25E zyG9#6$D`k#`J^@?{ylwU`ZUcJmFtX~`-Cwn(Cr+ZIK_ys^nx=Xe5jFde2z2Gzl)Lh z@fc^4PXi-qMTB$g;fuz&g$erjY(MSJv~YdG$~-N3NPupi@6jf9sGz4Lzo$*Ad0bD8 zUaF;DEbmMUbsK59-#Mq&dBK>P`LT1_nK{N?=_{Rg=ZrC?&wSK5BO}6?IbxD?)>ADF zQlU)NRptf_`bLfX_kG>Pi;v0p{ero^<~y+b=L{@gUN!Zae}7Q!2U^*r6V)o?t*n>E zTNT_Oyn*|Jh2p}o5Ew*c5TQZD1`!-YbP(ae!Vy>^K#mb1M2PV6eX@ZD$CvMuwO7ZN z?~@JC`26MjWWnkfvGQ>Q3k&a?iEueaybuB7D~K2(WQdp{f`*71B5a7bAp(bp93pgx z*dc<4h#n$*i1;A}peQB)F#?DgKnww53J_y}m;=NhASMAZ3W!-i3K8NFZhcF%*cYK#T=qE)au(m<+^dAZ7zG9Ej;aj0a*q5Cc*a6M`5K#Ec+@1TiIu zF+t1;Vo(s1f*2LVtRRL3F)fI3LCgzcV2Wa55F=9*GlLi!#MB_h1~E5?!9h$8VssF* zgBTvf^dQEkDCP$-Kt(Y@h!HA^8A1#ZVu}!BgqS15AR#6RF-nM8LJSjPnh@iJm?y+Q z6~#m$Mye=g3NchgF;$4MLd+Fnun?1l7%jwXA%+VvU5N2Q%ok$7iekbLBUThMh8VJ< zm@>qeA?6G*XoyKej2dFr@E>p3zT)Pg;^tRP568Q|R8)`K^{@IH$(NRvO|JUyiui9o zH5p->XqhEuTtv^az*W~h|=+}Rs&?(Pu#K8m-|YVCIEi=zOx!w@hstL&3E5d)jfSlUGt0yZ7ehIIcJ{LUsI+d?((aLAInHnyl}q2KVX)?-}SS~ zswX7H^{)S%It}XNX5bd|FYw z8sgWA;@J@2hIlu`zabtD@o|WkL;M`#=@4Iscss=3As!F$d5G6T{9aK!AL9EE?}zw5 zBnLq903;Vc@&P0#K=J}4Hz!l=lmH&x-QCA@3dX z{^6fd2fk7fGGEGzvp+Pwd@-BfasyY9!{y5^jZ98?^FJP$JgmI=j~tn-`rY37TKe5i zngbR*sJA>?$<=CHJ7;V68gt;7_w_c;C(S{#w1@3VJ~tFPm6XTSAhTv4{k&i>CtxS}H;)2;U= zm@>8Jw3MMadYgl^ZL-QJ~a<}AXn~@+g!u% zaO<-qz^;2qmw)~ITVG{#_GkSN({CP~T^JQeVc{z&Z^A!)bhbnjzvr(yI=isXP9hX_ z5v7U}sgP)eL@Xp~A(0D-UPuH(q8Jj%kZ6WPG$g7OC9)yWttb%=3;P6rHCmjA=kvcF zEl%|FaTEYi0YnK9H9!;rQH7!?1ELN^Q3ymOilP))*asLAL4s1Kq*I7?#ff2YF2`!NaQ{$={;{{8X? zb?A{2cURJQy~U*D$*FfF#7#==tcORp)_e7Ctw)8o*24z1)(7@!tq-!c)~)g+=%Ai* zJScyJ(A7)x`N&UXqom2kzP8BGuTJ%-36>h|Z*tdc`irx8X}*8R(tL9N<61M|{;406 zhT3;` zjC>;-C0#c5YdAP~sk3^7&UwF|vG|#99WNy08B6ArH7yPE7)$5B z?c-M+MJfqvD=-Wn{&@M&)&jWkiKj)1JOpMpE3P zRhyO|BPimv8biZn$8jF)R8GKP|I(D0keE3pp*5`E@@vuqrZ)uqP^9~pRzA2`F+>J)d zqcJkFVTsXtr`-{lexK21^*~3^%tXWdczZ|N#5r2KNwplo;bUZt-!qO7|032k+;T$J z_}!pZnd`RUIT?v?OxF0FB_j|%ku`o7IeJ99WR2e$j$T2J8DYIfI>JtE*1`j)o5FX# ztVLEDVTxQmPwR8sqE?CPw|lrFYWhEOUBkl0@O2+-{H<4|zxVrOMAQNr8`plG@>)+) zii}LEjd3HhQWdI?2F8spNr5W)dXx!Kr=lnn7WGUciskdD7NT5;dKJ%1*5J7#vFaEl zbBvmyQZzfLnj*>usGEYqAu5L`9in!K;vuS66y-zIuP6=xaRG=EK-_?WBS2h%f-^we zfr3LoT!MmAK-_|YV?bPkf^$IJ1L7bM7f}=^fw&38Q6R1YaTbWXKpY0*G7zVMxD5rz zfw&F@=YhD7qBs!5g%rh!AZ|p#ksz)FaVCg6K^zL=QV^$txD~{)Ag%>*E_lQ1XNsfo z^|%`4k6u3$2ju7Cf{NmV5I0m5M})W{rFi|!&Ia}HcU(X7pX>TXuEWWxx>VFH^1*`& z4hvXLcGxKMWn;gILtZ|bSI?P0U1xJGFC$#PxU8jSdMZFK@jykby|}}bW8G4SNAz@ zIeSEJbM=gW+Sx1UbyrxgyPaXDzBGpiKBb56++>cdbeA5v`bBe}Z#++~E8WQrAbI73xb8N$ldhF(w z=An6C>cd{FXud6XlRkXT3G?llFX|)Wv&|#Z=jyhoW3ITlOPr$uKXHvtyw4e5$>mB2 zPjn_6f6SHWAL&f|IMtQp)5@8&Vu)+(HG)Yuhby)O9Rjuj6PKQ-MaUco$h^QPfGs%oJ%a?o=$oBIyMTH$$k@BGPk^UVLO~L zH~49Y&|u-P^SJy)XqD*r1j3_;_y7Wgh!7$~h!`P)goqL%OhpkVM4*ZyQixFD|9qIa zh@HO!!9zq35k5rx5Cedi0K^C&W&kk+h$%pf0b&jigMgTXq8J6lEEL5sAf^E^4v2X` z3$@3B*t!rUEe*h`B%v24XT0qk))>q8JXubRfn9F&~HlK}-l@L=ZEA7!t&k zAjSkSCx}5oOiEFV3Sw4@VptH0yrASMPeGKiT$3=Lvx5MzUw8^qusCZ{My z2QfQEF+7OrDT?ty%nxFK5EFzLA;b(Jh6pi5h%rLU5n_-KlY|&0#4HuXFd?R?D8>mf zPen0Mh>1ds6k?_jLxq?s#8@Hb3NcuS$wG`4Vz!E6xDeA-6yt@Muc8<*#DpP63^8Mf zAwx_VV$AT8IhQV3=6e6imh<^9{wr|j+5UgHM;DrO{*Eu+-3b@JYBaj%u`Q-v?E|HX zs&^kBH)&j)E>pxLr3&Lx67rW|>CulGys|JLosCkkuQ}x4AF{C4(&vtw-q@JI+fyya zp558KvXIc&DBsJ*eqD#WJp1XWiq9=Qd_Fy6=0ne~-#y*A_JMtiLofDw;fcD#m&`fe zZ)xhe;V;JL_IqhW?R_uza`#)-?U#MaZ+fBMD-FKb_iE`m{a(HB&c4?Uj_J2z|MUA^ z|M;G5E8m&D&$S|c+p3q+hrjV~?`^B^cMN~?&KBF&j2Sh2ZIth}w|e&)p3(Z)wsp;$ z4_{xae7_AksE_-*)$~x|hwxJuReZTCzr>ci; z8oGVi`%``l-P~#QvMq5{Gq%=!Vp*2uRK^D--)QlnzANLyuNJh}W_l|_wSsMjvvxkv zE9bL5r6P9S(L85&z@doGBg*CEl;0Y$$Ny-~o^O{&d{NaW_KO{xv-aht#_nH!XGCu1 zkk|wBq9Z)%p|M{kwT<{{X1&<2BdbRoy#0Lap%y<;mn+4tKP~wzQvhy;@!-M?^nJP>wVrCadQ6iu|LeZC*oA{?AX&I<0F2I z9v%DBExjXt4hoAs(_&QCFID_w&z9?zb@oipoO4H-XPwV!mUAJiTvlF&PtL`ck7k*k z{5Ge=+-+GUr+k!C%KmLcY1@(5GS-hG%33~*^)auAD5t*`TV9(V;cI#%*4H~RqJqaB zTXE0BS(V%aV=J#q&Z@F}LXP(IfUK(XtU1-D1!q-HYL`=EXw9seku`E^h5npXyTwmA zb(++Os4LY{uf$Ig^-lg6TmQ?P2*2&0$2QowKBD2Ob+L^WKO3P>{`7R?*`wl{3|@7* z=~(+`H-$WYx>+CF!R9q5pZ0Ir!zi zW_6kPpqcej&5wN(-!`$s>2@g}#0Q7hIo*EXtMMVt&z|nk?&0{3W%r#9t-t(W=;6%M zoz6XYu=5t@=`LT~d9drscT&4;h(37p{O40|S=9ERC3$vg_c{IJdqj^;?HO;5?-dl5 z8rG{?eAuZer^5r=91Pz%^mJq;?O^2UE~on(`{7{UXJb?Q?XD6ZHNA6c|FxAOqKAjZ zTA%nnVnEk=u>&V>j~G<{d~D3%)e$l0a$|>tJP|SE;MttmhO4q--`|%rH1F}OVM{Y} zZp)pVHGGaU=l0B7vqr?@Etc)f^(<6*Ih z&Cf?9e(WEcR5mvvX+`#3U z_he0~xgsYuIzB5k@59)%(Ag1bxv#}etus1eYUU%c)6RrN+?8&Ry*tN0V*1R1u`@Et zN6Z}2K6ciV-$fK&A7AeV=H;<$YOidWUwxo(sN3)QxX3XNX8AJMJ-F^GRcJQU)i5HE%JDa2DDz6$YHh`&NS7UHuIuZ8$6#B(9O3-Mk> z@n47sLwp$G#SlM+crwJ7A>It}XNX5bd>Z1_5Wj|aHpI6f-VO0@Me%Tmk3+m1;^&Iu z=@4Iscss=3As!F$d5G6T{2t=@5Z{M*Kg9nbIY3eJ03;W{!V5LY2^^CbAh`jOA0Rmb zk|!X!0+KHjC1*hLhN9#SNdAE25J(<@ zUWDXENPdLmNJyT9_ zkX#GNw~(9*$-9u;t0?&wl7kf`4?}V>Bp*X^G9)iUax)}9Lvl1EPeXDwBws^vHY9ID zayKM@LvpyH_Cw9RX=eC`x+* z(x!m4D3Z%UPX|q7uEs(Ygr2PVE!zfBS2GW*Ml=cjyO`|C78c5p)(!PPT zaUks+NLvTe-hst!oo;5Pu0MXNOrF*1@D@V73}|$YT(6~P}9oCkMj2NYvBJ} z3_KTq#a@Z)fWn*7vWM5dPU`F;UhmGw_D{Ea|Ut_S4Jk9mYk)p@y{GoH77rsrJzPwfV>$%U18izv_@b$lS zZt;RSjHo7lPT`zISIqUz$Eh|*)j_I{!nmA2xe5zr`>q^ln$WPG{LX4u%=VoWe|hqU zh^w-S`V%j`_y|kMR&i;+zPCf@Z&T1R;8+| zpQPYZ1!bh{sCroBm~!6#$Gbc&4&9y|uxq%d<>p(mTV+nOwcgp=8kl~Yt+pTQ+&R zd|_mFUForP+mMod^ZfU0w=9auwj?jLb)PfQ+9UdYThI7G)?Pt(*ur{+Si?>|;|UKO zkR85rx+k(yaCYSC5uQHBYi9R-_HJ9h-R-PV({H!+Ut7Z(J^U7%^@*RX1G+Z04V;`~ z9pqQa7BhIgHRjwQ+mMiFtwRo#@WeLE$c}ygYtPWUXR?Pa-R!w7cY5~lIWK!|&m56G zB7UA{WV$8W7WI-XZtm^YQGpNGMkn54jjuG;mJr_9nsB_IEz!S}HSyy%wxqI$tVt_0 z+t|Zft>YH9_Kg4Z>+CzzDtjiZ+?<^}*z2*+e>r<%$PQ0R^1SRxHQ)54Mvu!*&D(BE z3w^+vmb=-jzPZc6Ux2>-3pJZ8I`7>&y{dY_p#H!Foft<-^;Vs5Wn5&>6Y7DHxR#tK|=fzC`1pz0tpyM&_DtQ5vHkRZVX z2`ETVK>`aBT#x{R1Q{gIAi)L+I7JCMNZ>(&4-$ZoAcO=WBp4w92?32;b|Ljqk70*DYGVt@z&A_|BwAmV@s1R@fMP#|J~2u4vv0}+m*hzBAdMG+B1NDwhW z1O*WlL|71UK?DX78ANChu|Wi}9MTTRDBBy}Y*6=4)DF_x0XytKhlMUUAP0 zo=WaSd*yX=JXMz8>(!nfb1a)d|{B1?!gA@YPs6e3eakt#&45XnMh3z05Fz7PpRWDJoqM9vUNLu3t+ zHbmZvB5{b!6-DY0xkDrmkv&BE5cxwa0Ad3WD}dMm#1bI30I>#$JwPl1ViSsD6|iu^ z3$YB2u?>iIK_t&524XXcVl@!EQ54I8*bc;cAoc^X zAcze?tO#O95KDsC62zJy_M|8l1+ghbu_}mNDT-x5Yztyt5c`5y7{taPRtB*%h^0Yn z4PtE&dxKaU#O4&m>L7NfD3%AYJw>rTi2Xq<5MqN6D}>k~#1bL42(dT1MlKS`eei`PJ8-dBS9? zw_na-V{6>#q%ldO^_ZkP6ZFA@q)pW$Zfu<1Gj4p+nB)qJ9 z?3mf}ir)wJS9V3&UOoS+{k1hgwiWvxw!i*FRolw9lkKjVfu2>*4zRzG*vGbdda(V? z@Yc39!)w~t`d7BS)#Yb^-Ev0;ThiyaYAH8ZR<%6Gl-&vXM$$WpE_uct#c-%`D zc{e66@Vqx?hIdnRn&1Tgv7Rka)9qWUboOKgj<8>O3v1`(gWk_9`#rk`zmmOM zU*i5eLTu(nVNp+G6nmOv?`ltS1_*{AFXLMUZZprat7qDDnUMT~%mUet=9Tm-3zh>93C zK@l7k0hJ}PDf|2Tp0o`J<>Gt2_o{zRKgoAanx>OE&+j?Q%$)P%nVsfO2X}aneEybs zbki#DvGqIjh z9ql|!E=ds=xfZmwotT3yw9`K8PG4#5?+f9)({+i+_r?*I5u-0wSO zbe(hBH$G+b=lQK%SUit`KHs{zza8k~L{{$XskuXZ;$FVty_=aPBhU00#7jRmKZ)oinckTT4DG3DGm8p+j!C7hJKGku?CSNi z^>gcwmfg*FSodgKEMJsgW&Of@&GO}?ZSK9$6^Ks`XG=)@yBLJ$!=oTB}-p>$P689#QMHnpT#3JpTFx zw|D$ImY*Nl?>>?Fp6leeZ1<@_i(RL?E^?n~bFb@{#g6ZM?f}22fxQXAPxd?5r~sO+yvq%isC8|XMwm2#9<&V z192LN+dv!#;yMuLfw&LEfgmmfaUzHtK^#d@TnXY#ig}CEUQ&5nir0^BGF2Y8B9CK1 zTnpk{5ch&O7{tXOP6lx^h@(MV4dQGNcT*IHgSZ^T=^$Ua zc2;R;g?3hFuY9Z7ZDm#RR9TUn)yP?ioK?tKft=OHS$TZW!v0=0^dJr1zykl)dZ*W& zxKi4lcMs(}gv=o+tr*1U~;?#a2X(r6w{pZ&lBh~glsgD4N8K8ONg-qp&YMDqUm zyM4_wRLRbuOo%!m3WcZ?qEv`lA&P~lR`FIdMjelq=WjJ*&;t<+iDF13L!ucH(U7Qy zL^k|;MYo#AIY|5d>@lTXRlD=RJ_mu&QzIC|VzYbXn4`7VLI_IiyX@@^iaHS%D) zoFPxo2AnsaeSeK(;p!KR=hvKdZg96Y-tRig`^lV3hOf>k=G`%8q_(q%?%maEm-e~! zQ}6EPZ)=W ze?_@pO0DNn^n#j+zw(J-L#^kr?VRCT&*Lk@x1L97HPe2rUO%fD_Ukm?p=Q>vSALb6 zQ9tC;Hp91`$D4+4J&z|0-+CUC4c~emeGK1v9+T7z`Arj2TW2AnSR&e!=jq=ds^tqt^4tHhk-OEHZrSdCW56+jn!upL|<7 zDtCAjc04T|l&;>yH}8^;NfU3dcO!>aLmRfzMH}wM|@-1)QCErRU&iD48wNWDQPVc~>OI76Q z$s3Hc`=&Yvhc7XPjOgbaT5`5AEFs1@?C3~iL`V(ih)+8iqlyGLN4?t6xc%UF&e2aM z%60dby?0Cslk4rj@s3L=Dc9M*?;YR#xLjZVqIW|1ZE{`xecp^qM~z8QOPrJTe`ZVx zp6#6S?iE3;(e{|L)}w za*4nZ8V~+E$knzq9^@5iJosOy!H|1rd7LyD;-tYq%2{1ZnhE)|4X*19)a^qLWX*#( zgrc|v#3>+d0dWk7Ye1X>`r8V{)a$qiuj3>TH-R_`#8n{90&y2baTtipD2mfS+y>$} z5Z8e?55#>S4g_%_h!a8F2;xW(SAsYb#GMqyp&%}$C{6`&D~Mx3Tnpk{5ch&O7{tY( ze{GWy>izz;O%he!zqX0E8!2yX6Z%8$8J4%UNpXX`e{GYaDxbTy2`{RC)i}CXeyqe1ZIdTd-oLiVWR>@?ZPG{O{cD>{(n$WbO;T0fzqUy$mG`f0QdQ+~bP}#k!r4i< zJ1K8%6LER+I6W!$k^Kh5@k#b^*#^YA5K~ZW25;cRO z)D9$S2uLjfsVN|}1*FD+)EbbQ15$fHY7j^*0;x$9r8a@oD2h_6kf>P{rFJ1v!$4{o z5;YB^wjojDKx!QlZ9Yit1F3-^wGgBxg49Nk8c9)VB}mPrD76!$hEkMT3Q|)+YAX^o z7Npi9QFB3RFA_Bvq!uGllR;`T5;dBl)M}8LO;Kt$NDZebwH&0TgVc7A8V^$IL25oo z?FVnwfKvIXj&kF1o z>@M84Vpb8`Id_qVx@8r!eC00o>Zi6K@4N2e=DMsBU+lG(%zi$r)IZl*OTWCk?N^@5#R?k+sK%BestwmD)ev708 z{K4(i8@GBjZR_2%ePr-Tols?wlq-j@WLt)?#VR@Yw|g^0|jJz7+L#e?LM z2iw(Y2Kg68X|bMseq&N9(0BvEMv{O71RW&sAi)O-Ku8cm0ud67iV~2Jpj4E=gajuf zKp{a22~$kWA0{}5l!JCA@f-(WG61GY_C z%!G&JO_sdHQ2L~eo|uuQR`w0JcI2_Jyq5>*PI<6h>D>mw(l{#N@{KSCYreai?)BbU zNq3aX@ub!07M3&!rEfPvo`q z+y9dEg|=G;ynDa&fmT`uEgUU9;VWE2MvO9smYnArmXKr&J37fVA|%`x z@oB1SRFTrgs8?ILSgUdLlf5ltJf)-$)6z2bb+7bYs#u(lY?nUEMN9g)mC{%F+LF=r zNiE~jdDo<<6~?6f`&?6k=NVJpUGJLu>m=jOg)g}7+LLNbn=#WheRV5i#=v2&%=uM~ zf?P;eFz|oygWQM>-zvHCtS$o6@>o0cqNWyvyD#`&~lPOv4*L-iJNp7Uv@ zTvyh#I*>NZZ>mlIJs0HX{lg{=R6cLmYpYI+T?y%ue!`>?mYsAv+A&X~>R4b{_HtAYTIVMIc{>#212p$d?L=mM<9_-lR#8R>#&o z;GLwh^2vd5X%mJ`Ro4++TOe}0)D=|h0=;GOB@QjHYiAO^wp>d1hkW01wxp-d*}J^_ zimhwhFWG88H4c8kg8UI_u=MRUt%HM4VB2@ZTgXvw&aXM*`CS}+-T%+=W*;E?0ofN4 z`vci0$bLcg4Q9%F1O7kuPY#`}MQnJBAkF&fw*mLNTghhywojWhYC=9oj(?V$P#}+@ zhCHb~kneo|uaeQ`x;3@1Q&6?C>V3YDxXXOyZKfoGzOB8@K^MLw@=6f6C;QEb%(Bk1^h zM)Bt>X(jgT*GkSfua#Pzt(6|QPqWNlq?L(Xua%uLOS`T53tG9<;aa&%Gi61aj#|Zn zUA5qvLyh3?n#c+^9gNB^4Kb>G6KYhwFJ8{22N~5zgcvoRTA^9{%rI&iTa8-np4DoP z`bn!(Yr0l9@l&l{fk9eG{nxdSQ*UXZN53)Z@0_nS`1E}vY~`I=!&hH4!sqqZ8a;HM z(KsVkv)wVuXfmL$5s@-mYZ?=6G>aUmHLq6Ph^){_i@c~AEzUI5qQ3gpX!+6)Mys_O zjn?ZM7|}0&qs2U5!ic^1eXY%mV}^a$i(1=(9;03SeOg@X3Zs3a#YTMfc}9o8BrT!H z8(P9Ii?oi19@i3g&(b=5I8jS}s-xEBzLr|o$qh7zvzO6L?_hLyv@m+uLyexcN=7eh zkdadQypeMGh|&A_J|p$(twx{E)*F4-XBqugf2H+b_Ng{t{=3@1Ij`d@nm+PTEiLsP zZE(j4+K{NB+R)Hm+OXgb+VC>tjS&HZjS)ZhFh+jU-Wav5xpDh@^^DPPR5ZrCP}I1? zb=DYb{Ai4G?lqjZ7tzM|`Bh6#{6U-0@=GnF{wLbRN^7-A#a`7Won5F+{^1dA$`^(< z^`r6Ho&OxH-L>K&W7?t_#`MR=88hzDjm-3J1`YXu|3yPSpZ_UxR*Bf8z6dDhi__fK z{jcC;ZJElmZO$B?a!NcuE90-P2_3?BT3`ibWrPrU!Uz&dkZ^*86eO%5p#@cVu|bHD zB+LMzMk3rugd8O7NQ9oEgdZdX6(tNIp{OX~2nk6@Sds`$65&ZAL`j4xiBKgGt|UU1 zMA(uDT}26B5+O_?j7fyDqJ%SvkXDqihJ-dGydfbD33EuOlL&W6$V0-OMCg+Ue-aiz z!UjlKfuh&}2}^+30tst?*aHcRfY<~HtAN-A3Cn=k2E;l@*ayTyNZ1I(N)*LTAeKVH zRv^{_u@{KNKx~GD)j;fqgyleNhlKS&?1zK}L2L+OMG!k8VM&T&OC+p`ggue4C=xbB z!m3Ev6$#6N*cQaPAoc~ZFo=yotV~ht3}R^zTZ32|#NHqlN5bYvSRDzwBVl$NX zk+44!7D&PdNmwBXJA_!GqSzwD8X@)wu}FwbLaY*Emk`T@*e1j}N!TX|3ngKrB&?K# zoszIrMX^;9)=I)&Nmwiin-_Ux4Fk@-jV8;!Uo7fsPX=H1d+zd2s z8l**r*$ML#;(N~fU`(73=Vkr@ys3Xe>$G`nc=I5wRwFGSeL=GPVd3Po z$rHwny}=jr$xl{ImUpv#n;}nGD_0zTquYI{E2exu^3AyK^_8g~j$BpyL;bC&mq)%` z@MV2<@Pi{)ANj!i=dX8+T(jjR^PN3iN3Q+uu(|HFGl$=O|6_Cg!+Q>AFJ5lGH+Ie8 z4Kp7$-|w>E@Wvrd^Mgh+4sYuGkp5vQ{qW|7v7bESH*Smb*0EtPmAuRyZ_M z53bo!5B_kNUOAwFUiqa2y~;Nw^s4vO*Q;e8)2ojtuGesTbZdvBdQD@6UdvX@tUYS0 zS*P?*X5B^sdc6Ye%#f1b=^@|NF+-1jpx56}*lh6WOM2KpYU>SOyyw&}hB! z?T2*R9m#r=P9NzJDWlA$4gR4wi%c?`2R)=mRtPsEPrhunI8)k;+VP;-a@Wsht2gg3 zTdyyrM?c=xj9KW_V<$8*+sxRm+xvIX+YVf*w~Myvaj{S8?W>m6Qigp16C2+3DTtdeYm8X6J=6;`&sW*=72-de_M%O~>#{W;eZo-o1lq_OO@G zd)C`v_NsAAPbs{_Ou6jQdmo%_rhdIb@3U#7*?0Xsz2EEi>iw5xnFAgfp%0w%m^o-% zqOOn3Fw?q*>4Q6_m_r(u)Q5&fnZrsQ*N2zsr4RqLxH;nI7W&BDN6k^&D(Sbs{h2vB z>%2bZsW;3!T>JE~lOH$7IoIn>Jxd?oXRn!Ve@vgya-ErB&Cn-SdfuF*rRbB+-fd1c zqx30X3^Au>SJvOA$oo9MiUHVERuuEUHr3QJW`IYY=0v~%#>=FBI z-|oB&5`&O9gv25w9w9LaiAzXqLgEt=qlyxzkXVJpDjScb$i zB&H#84T)_?d_!U!66cB%>yUWo%ML3{|}MG!xNcoM{yAl?M=Cx}NudUjLA(y)cM#806yJk*AH@G49tiP4h!;Zq5aNjtUxaug#2+CZ z3GqpYS3>*};+YWNgm|Z-_$S0eAwCN6Qiz{IJQd=r5O0O}E5u_VJ`3?$h~Gjy7vj4R z?}hlUqIfXGhap}J@neW5Lwp(H%@BWvcr?VPAzlsfYlvqi835dVgFxT5$t#LFRm z4)Jt|uS2{Y;_ncThxk1Fzu@&jQ~}{lBD(aY>DjVT^Q&5(WnIq{uxR@?>EoBu(pTo;_~kHOADIYF3)XdFS58(R?#}++!bwW zvw{l`$PV6?l2z$oo9xPOL}gX^tiQeLqm{F&y&h|??!1sy;}NUfnpx0Rb6f#?t(NC) zwYwa!*QvD6RyRt^u6uU9t=@@WvqQdk!4~?<#_akV)@3!=y)-*)(eqgi-=32le$U-m zjh?zayYb*5SvKQ7dy{tYSrPgud()WRwr2Jud-LM$ZILBc+glXgl@+Cxwnu$Z)YkHc zupLE?L9uuYCH1H>~>9;XT^1VBD?)<4`;C8$fGtZuIynwCa&y(zlYsc9-ZA-N$t=6(SztPH`ys3z-i{qZ`t_xnvaVezZR}gAX}5qy&)@L{bo0DT=fp@`6YVA~T58Aaa99 z4k9~<^dRzsNDv}Jh!i1mR1`@Z?9{$4%A+G<41XOk?!L%Mh;6?SD0(pPL{yuUDF#eC16M*>h!PWnCV$X!(;SLU|*!nW`M z4Qx4A4*kw{q%<8b^J#oW{-4MhrKYjr()_g+T^rD~Osc#)u*cMKlYKWT-uOzf_VQ+_ zHnkG%N+xLSIt04nhE}n(uY1T9A9vBxA@CztLhY|D3C9jv5(~a(N!+^G(&@X!mZaBS zv2@tw)*Vv^! zEaOJja5-l;w~X%=ZAl+q(K4Y)bxTJ4S90NKnlW{WEA!z@7spyI`uul)=ntq=)yl~TNxtzQHEa+j!v$e7 ze89A^2GJWta}eD@v|tQf^l@Xx{2oL7A@zPE*Z%m5zVr9FXYPMb$6SuhWj>A1$o~`hI+3yAkwIFS zH`@fP+SFCvT{vajgp6^%rO|tI;_t6abjou(<`3m;mo#MK*^uwFXLsJEZ+<&j-*PC) z^6ASJU0WB$Sw4HLnZ53m%&RD!M#dl%LFW&90+mhQ`$~8UbDqs62SB2ZYa#bw& zsjK42cU{5Xz3!^C!|kg4{-drcYu8z-E`QBZZNc-F>T_L|8q@B!SjVJWYW5#usnxls zrFL|@rB1_0OWmp=mU<WW@E$QAQWD_897wyrkMR(08j*LJm?)zWgS=JC}$)H!mi)U`imQW#PQK@7ec?|8+I(5Eoa*#rNbdxV93?Mn2(r-H0JP(~s2|1Bo0( zi5^Gkq3!BNCZNn5E6-yXoN(h zqC_R%oXCVkCnQ24Q3{DvMTu5O#6qGL61kA*g+wqUiXo8x#BlfYwI~ z2rFx#e%0*i6VGOTDeo-C|E?dqVDsvL-tKJnQ0;J1-|OvcP|l0Zglt=0sdU#@s}>)( zl@FQjt`NM!QnBb8){1ApcLo1&z+Gu?B}?Tkquf>2PRg#jd_;D&1*zH9=O$*?nAR%W zIwmZ;X8)?$wK|u~uHE`lcAc=}*>$U!+4YKV%MK}Y(H?T@m_78sQAhnLPdMuD^w=A0 ze9s=Xa)rI&lEwD$dGqXzX5DLVoH5C68#=Wk*%%VvpKaIa^MS+FPx?kllK3S$p)-O7@sFr|hx!p0~Go=5xD!*gkvPnJ2O{ zr7j7`z1r@otLq9Exhi}0rFYU*>{y56(!oKuaj-K$x|}_AO}dP}=iFBUOc|`ItswU6366X!qlme9?B>^c7-b9H&N(E9fic&g|5`vTxq@*CF1t~E|sXv^=|dC%Q2|5=5H&y) z0Z|1+84z_q6rw09fha{$)B;fqL^TlQK-2?K5JW`~B|+2#Q54LSGWqkU%HPlWr2FQ8 zIkyGN9#%|ByEAR{$O#!~GL`Ke(&w_KrOS-AzPnI6(G$BS1?IdmQOI`5w-$fyDV#pl zEK=ehj-qv1=tYn2_XGvrZU%i;)=~V>akIpi6FntAs;!rL>|;;qmjiW6`f^XzS9j^v zo-gL9{@6vm#yzIPn*Oz3bMOX7t?uvXwUhRH>I_}0*A2_|)N3(L4=KLL6Iy(N8TxG} zNBslu>J2^_?g@KmnAz|j9X;XCCYX(;tnxITHB`5yzGyZX+Ch(KyFqW-K2&d3bBW%( zPLLiMFk5eN=i_>d9~YTX-%c}I?pUw4+Az>;{pJgL^y0_#n8#=8u`@IDHuJmc_8}>H z+p%ZNcAeABxac8f`-VNu__mGB4kaSZgqmf{gd@RbVo)PJ@so3ArynhP(m%d3JAZUS zPo8&H@AC3ay=%r^z5AO39X*;oulMY}((G04ZapR9Ni*f*b7pGUDQ4=vOta64zGmNb zX=cCe(PsbW;>-ans+$9+*EI({+gjHL6fx88s-_RFc-b7%_p(0Zmv78rt-jHRnV0kt zmEYG#WSjb^f?u1X+#B@UzkAOdZ7k8pyuaAIL!YgWU3{-O&OTCi&KzNmuRqI7AChQJ zC^p>8=saA{_@SdYsbNQb(nk%h>C@7S>(f^SnKQZ_ z)idWEG5_^oT)_bKsBZiWNxEk0PzpHAc1LS+=73?yePEUMprzfAj z4j*xiNU=wR$}bTsM6eLiDvEF+;#Cv@LqrS_GDOS}K|@3h5jI5J5P?HP4iP#;>=402 zL=O=@MEsBdfCK>~5Fo*zC;$%2NFP#Ac6!E zB$yN>pddj72`or(K>`dCWRO6E1REsaAVCKSJV@|C0uT~}kU)e4BP1XdB`6_*sVKn- z2~bFoLIM>MtdM|(1T7?RA;Aj?U`P-{0$EXl84}Qn64a2uh6Fbxz#%~n33N!XLjoQW z^pL=Z1V6+86vYG}MxZEW05JqbF$IV*D2h2i3<6>j5Tk&Y1;j8QrU5YyfrfcN3QASQN!vAO-_58Hmw9%m!jO5YvHw8RH2O3kr|Gj2b3K$lzDaoOYV;q#D%Sd$IZ3l-rbRE5Bg7+$)u;Em*a9Zg%;QDz*y2UELLn zcFC%E_EB5#4=#J9FE?gY-csIPWo<3J>hjz4Y6}YK)gL^q*SPDTZXLZ_ui0<2UMuOJ zdhOP)=yk%L)$3N7tJf<&T@NX=%nUj8v>AF}zPJ7qySM(%yUYd~$CzO&2bc|)bTPx{ zwJ{sbvYCxDYMQp8Wz8l7V)cmhN_x{6tKO{JdA)hH0(xYVeR|}D1A0{Dvu4y+oAj3F z_L{BMF4J3oxz3D!aibZt=6N&r-lb-nXYMxb!{(T6XD-y+#ounm4Keigbvv8!af9^^ zfsM?B+U@m(V@Y~q!Fqb))^NSkcSZH2*GlW1w?uf8AG++!Z7vlGke{nY;EEKzDx2TX zn!GJg)0Ph9NH3FXN;PexNsIg~4=r-JJ4K#-ujg)4(L9sIDFR+sE%GLEqNqtTc{I(P z_#&rSeuL`fnxdq-p*SH$${taykfMbYuc8z&q?jQ^4JmF&kwc0dQuL7Ghe!Y-1BetL za)3wzA`6H#Ao74nL{Ve{kqSgEiXs_^Y#`Es$Oj@Jh>Rdog2)LXDTu5f(t^kfA~A@} z6h&$fxhaa|AhLr<4RV|4%As=?*lJ^G8i0g0v$wqYBiVdQ|rLw&Wg3VYZfX<$b$h>7&Mu zu=W_{JFR`=F@dJ?r^JAa3CuHBExu^45WLmq8xJ_?4*uapR;9fm*2-HZXH{7{%Tsmv zL{GH^!#&mK_V(16*3n}f)6!G3e*;gg&Q(0Mqf2<|gkAL1t#Zs$ulU!Vkig=OkW&{N zp$E?E^`|V>>+js}Xt41!N7%}2N5ds=IKt;Gax|LtxTA5#W4dkVOufl~*UX6Y`^}~? zF0)zp(Pr~%>1Jd^vKe`?rx{h{c0Foeq}lR(XT8anvc>TRAm zq1%U@)!WW0Wva4cIZpYx%6f90sA!REe=wiMRyhn>lpXVt4!@XB&z#|aoFM@9if2q{QNVL}QNQmBeju#m!q6tJQcGNhm(g$*fiNTEXt9#Z%a0SLr! zUNa#=fQSJi2#6>k!cY`(Km?*FB7q16A{K~XAfkZ?2O=JbfFL4*2nl9NSum5wpF&KG z0{Cu-{jq;G*51Eso}uu2LDwr<~Bwo z_?yq?p!h?Y;3w357LaQPzYTuhd-!es7Leb0J^tS{g&}ei4|rJJSeokr6bx^saNyt9 z3uY-#KoERSL;(>7L>v%-Ktuu&ilT@GA{a#x4MaE)@jwIw5fMa45HUdn1rZfQSny9N zF25&yUMf6b)OW39M@zOHFO%;NYut7;P+rh8nQ!phR4nI(%0jlq3m$5JwHK_nRXqF0 zwgc2*%xAp5U_mL)wd|EI5+%N*qLuiPNc27DzCtACMQaIv^!ete;1krD^&2$&ule%6 z*n6lw%s=+l+xTz}3jDLy!~fNT?APG?(Nh9OzdM~HgY5FTG3S~ie@k`}ceiBsJ7e1~ zJM@;5ZqV|fmqW^JaLb_0(EyG5oLfdj8vj z@`w7imJtDI2N|C&-!@}vx^#NlW{d&}6VpSc4x6OnKd~D}JsY+DR@T4;+l zE80dnDxNEy9ejA5qtf0ud*v;Ud#bG4Y_Iz2hmL9sGR*38hnY2|rI^++31-dyQD&{q z_08JRmCZU0i<@<;TrleuKWc^qR?th+J|p2;%fwI9ZH?i z60|5IQ({R?R?8GbH@F1i>I)*si4W9YB1c85@5U3v8PqrjjV=E+vENQz073lw;{Jv) zf6aj>)rOcDhODO3^#3n^Sk0h1_X5(Nz@Y)FBVD0E1{lPG)=0)U7BA_Nj*P!vHx zL_tCr5OF{RLP8`YgaQ!@L@*>o0}&1h@sJP@L_`oFkq{FJLBaotsEB*t4LfUF%nwKz zyMaAXA>OVdoB1W_Mrb@ryl~<2Lp3e5QTt2l| zJQt7^{G*m#X>W5|2lAJ z?)D?n)xKRO0v<12?Ab=tz8+HHj5J!UYc5^tPDb?7Zbr;I4UO2@O=VHtQigqad86&D zFd4J|MHba9DP#3t81Zq(WsLqEBcb*-E#cT68JB-kOWe9f#^axmvG@ft4*!Oc{O}C9 zh30Xi>sVcGotbEK>pjirKBl+Pqs2g@XXlniuZngfrC}AH%jMILEL^B)vFpvhcI|6Y zpp8_AGq)9#GqUUJUdnR^hwqgf4-{9-eMQUZcILK%a-C3hJadXMUthd#(IP5}7gEH0 z2*nKjZK6-@_V?HUe;q#FWL_QD+!E3K>ewCM%q#&{)AuUCb z7YT_eip)qz4I(!Zl7q+&B0Y%wAQFVg5F$kqa)d~dge)P_Bq2|TL={D*B&4b+awQ>I z60#*BU5I>1NEjkx5>kf986s(jtRd2d$QvSYm?>Jw??SXck<78RX0hSTg0xL1E(Q$z zXDIuwY^~?bIkh40Uv&G3jq3X{-}^vS-^sIt++e5AseR3k7B@4+$W>0A^47f@#Q2n8fIC?RLiQ_zf@MOq{~^g zTYIzWgng4$x61acdd1(*3Mq8l7IMn8g&z3YUVqAc_WCnQBjdI6k{)(n(v&nIG-yi09+hxlPof|6)n7LPcnxc9}&v z^wiOX)4-fX9b(kJ=iFDYYu|h1I^LY$`s#W{2xVamxpJ4J%=%_JtnKB^s#MVtB?~EC zd0k9;oC{LQBuZLQN*hw*kWwd6@{rPpC;*}Yh!P-bfG7f@3Wzcw>VPN&q7sNwAZk$* z#XwX8QI4Xh2cjT|iXcjYs0pGdh^iDtS@6$#^)5q9_=mVntCh zM9mOILsSh>HbmVJg~LqIM1E%dzgM~6(7xR8Ou%CkQe}@zsjCK>S;MVu$HRt|bk5S~P5kx%jSo980h_3di9F_nL=K zg*$#M{!jhKUApI|BS*|5Z_RTY{cOB>?CDC5<5@52-a9*c3N0O|2Zl}d6pkyH|Ha5} zJmvW9#mJRUH8QJgTi~g>Yp`Bzg~w6-ttZSH^9p*bPkp4P4^8Ln_yHgjPFjhMrIHG|=ua8*DA+30t{U_g$2brTZ^R;KZa{l#u+WoS2l0 z62d3QiAlLAp=2*PG08;xhR1XlU$U*iAgR>&^+zp_v&#&zV)=P zyH1af+vw>K_`IG_d#NYk*gIxo!8xA9ty+w$5}+dwRY;{k36^8B_1n zGapWH{OgO8|BLSsKUHlL|3%Bx5P26W-{9PlC|{+#SfDaUd27RJNK8QD0umdL_<+O+ zBu*f)qA2kKi5W$S8%XRZO8h`#2ogt-Sc1e8B&Hy7#a$uiB(9vLShyYw~*L{#4jXmS1mY)(;wcbcQ50{1_zT2iAU*@}8i?OO zJO|=C5buHb55$8YJ_PY1h#x76CqaBkQM?J_PY{oS_!PveAbth$EQoJGybI!A5D$a+ z7{tpUeg^S0h_5M%w?X_3;&Bk4gLoap?;xHB@jZz5LHrNmfe;^rcp=0OA)W~FMMdx1 zDvv*s$0H#=3GqsZUqU<+;+qifgnu>vyz)|O-#izxY=tae!8{kXAZ=ZdqX8XvWbw^Z zt0O6a&EKY?IWN%ZXIqB9W?24Xw=TZBIJ^F#7Sf@5(Hiz)CFxMzXANI^UOH5xtc_>y zv)P6wS(^-BZ;MDC;cgmp|DI;uQ#LoRHhNEFMAYWUi^+SUs`Tm@wXgA>mgie^Y_+b; zp4NLSb&OuxC^cry`Hr!(Evapu+1JrN>_lqYnP)e*i{F{r?)+ocOmXUbnv4O3^L~m1 z{N{%%CE~pt9Jwx{5WOFILek^$^?Ov0$M=e_Clrt~Sar=ki#O^^Uvu!ORww}Ym%C$8 z3YX(W0YeHIQqYjXh7>rY&>;m6DSU_kAR>SW0U`#7ARwYp6k$Nbp(p}@hy)@Oh*%(k zfrtho9Ef-z0)mJLA|yo-6U>yd`JW1kZia7Cn2$fU1k9SQ_DY3#yDscteu+*6k5aEb zP@w&q5eakDH(@Af^jiLA)D&NrUkmbe}945-`b8=keJKx0jEg~NjD31z!&w6Wu zLt)&ZpKOqQfb0ikUle73V9q{qdtmNPb@#ASvTL$avTNclvTGKKp`$#m-n}5%)9~i4 znu^6=kyQC#f85MBBqHq_c{|&d7xtcYuUhi-RtUb&tXOomx8m7%^xz-XI4ga5 z%&fenjkC(y&aSGwf>aR*7`e_S{iJ8$`ZD6j-}y}sh040w_6&`>St-3(b-}f z8e?fPV5BP|J>rTCoFM8UU9XrJJ}K+H`mo6u#Y97_E=ZK zv5Bt4f(}>W*50m8-$l5RUTf*A6coa?4qnBk%jeb2eCP*LQ*hl0+1J@-5ZtH}~^E%`7ta29aG)nKkESHwlxLdus! z8AHk$Qr3!6-jFhflslyCA>|Lz07M56EkN`D(F8;n5N$y80nrFVClIYb^r9%5f#?RJ z9YxU(L_-iAL9_(X6GT%GT|u-3(HBHx5S>A^2GJWtbBdxni1rjke-I5qbO_NRM2`?n zLUakyCPbeQjY4z^(JDl*5Y0k#3(>Bk=og}4MbR-t%Md+7G!4-;MB60v4Kqax`P5c_ z8ja)pEn~x525Eb;I|i)(ci!*y-5ogE>$^KJ+3UMIu(8*7cVK5{L~>)jX-p$$v+y!{^J*4nWQmh{s~=u; zwO+Z$PZ?E#t zxKjetoGGWLxqE*f=ezr_z_n9x<^M{7K>49&S523}PMk@+C(oJ0dqg%fTsfYUbDEyX zHW<2ZshsF0>cPCDjpcB}<;ZIsb;yy2*IG+0o!2P|n0M2jln8nMO?%&~y#J=X4^`fO z)85M}@4sp9L6!I4wD*#i&!hApB?$dD>y1`<|IK>ID(}Bpud&MeZ`SMV+siS55v>Dp{?BAy4k778x&0 zE#%$YXQ1&>v9r#PcC6Dr34Fl&$uzsRy>+a2$AfnnJKMeL-4$O;`@Hjd@9yaJ+MdG0 zonKTtVSLecnz#Cz?$#Qko^@Gg%yQREobIYM;stB%`h#3`5@uTKmYrs)7c$IR@5De$ zXpsbK=ytp1hQp;YRvO7Gx`bQ8UUyd!ML-`x_=W#Waxz9k;jW9poAg`BS0EGDl= zm8k_A@^s&G>#Bazw`%B?C&Jv@CmK;rmTI99<27shHa~`D$`Mt!F$NZ<*6s9_ykF~d zz~9r9OYcjmPF-1^HF=hyBzc8?D4szVPpaduM0m zcI)>o+djWj>y4JA=sjwRY`XZq%WHdXl(%ZW{3QTxmh_6-N|$vH`hyGNhg?DhDR zyhycL@`V%sn6l{Z#>V1-&pDT*l`&q7&2%ocpEO>op5|O;-DSL7WV-j~N4je#`Ymvt zoDgc9YCXewy4S15nHoL4zeIkc{c<_dd$!b<+Sza3@t!-|Q9Hlkxbwo^Pqm9LW;idc z(~Qfrr5(1gnHDf&ud_hr2%}(PDQ}^)BSv7@*oeytSe;wA!N=dh0~2H|o}nch)Q4-UtZ{afY1fXNDefIqH8~MQ`wNc}Lia zFumd8LB2_{=1y}oo_3ck*894r$skRSa5VEYjr~?{)?}okdG(EYWZ7puEebqiwmA8j zBkKDaX3NieI$CY&p|^hfK2P*Zv(1?K?>J)TtkK&{J?62GZlkyDKf$9W$%=W&(LQ{s z9$)sNLrs#^Al8v^x`&=ve7wguNmc%PQ>{9Q}h#mi4n^ zXuZPvuvR-9!vhb?WLc{mBfkGwCd=C98TG+(nJnu~&*&E)mdUc7@Z9n6E9Th6lRe|c z&NZDg`*_B887q@zwf0PC5}8lw{O$$ z`owfhd-AkCedPtuj7hs?vaJ1{8#bS0hT;Fwk2GS4<141q!WDkcnd!XfA?%4DNEAUL z2@*|^h=N2FB(fmU1&J_7ltCg55^a!(gG3!9@*vTtC=m#WLPd#0NHjts5)ze=$b>37 z*&sqm5~U;}6%wtGh=oKgByu6qOCo|HQLHGD42fn%iD*bvlZb3cbVDK>66GW!9TM#% zA|4X;BqARY{UjU!;sPX`0OAHD90B4A5NCk61H>T|#U&t40dWh6V?bO3;v6t<_Aqe} z^0)}ZNg!?laTJKFK%52QE)a)-xQwDW4a99AjstNWi1R?)2jV~w7lJqu#El@11oLJO z6K5iiJ3$-@=FJ`^PDLKKf;g69-t1uo)bDXGUdO?pfA+9VDxW)h7>>s8aW#muLH}%G zOFiWMvx&`7dEAcIaXiJm*~B`lyni;aMk?>0P0XV5{@KKQXV(3*iIsNndAK9QAt5da zaY~3=LL5_3TodA)isGIS2ZgvO#7QA;3UO43t3sR=;;s;fg}5xlX(4V4aa=`lU5N84 ziu*zw7~;YZCx*B&#E~Jc4F9^${M&Qh%^T;Q^Omh3ZEdDO-%+)I+O=mhzm(UM zGvpn&nwPofzpic)`Yy1udKX&pxfZ0|Uozg1tiZ9JR#CHYv5N6{BfJiSc)uK@A;J-j{2p1bB!vzr+c z%KIeQVQE=By^PPu{}b6^-;DvUAGZXI2(s{YU-|edOY&DFL{F+D54PokkD11Q?1GPv zA91K%&*#c?8L77$vJ*FTkwpi&5QAo#=u;k7PYitnwOsRsIj($Z_?NrLLJla$D^vD8 zztcK@*g-{FzWIzVq;b=*Op&H;8fJ<#ZW@*; z(&YXrHD&tFBf4*TwBKz*PPl4yqPzt_eg(WCo=S3 zb}S=EYQ|*WD-CQ~N#841b^7E^SpG`Rxr=ivkeSRNg;% zU450$o4hXX)^1-n!+&dcarOTQIZaaD9QG1=hv-+|*mTZ&WYrzo(a$oy$DTT&9nX5x>782F z`1#R;-V=TMXeTFBcAjcI*ErqldFPqxWsF}Uw|jrN9Iu@XF6=z}&Bxlgvn{>nL)tlt zPJ7TSdNIpW?97jP(9))!+kUv9m#f)NuY7KkUghDjdewJ-HLFdY=Bd8rvR*@f+F`xt z4ZUXKDo?F}3(eZr0ggI-ZF*g;jRViC_xV9j$WNb{q1gpxH5O@Jyj;V#`ojGIzJcXI zFFP9FRo}FA{J>*7R3!fu7%HUcQH9$(qApK2TOQXvt-c;)w*IW0CwhHbGv@U=p4jJW zn{6H`?6GGCnr-{vZMGYD$c$_Iwl{BZxzrbChr{EXtiaIm?J~Z>Wp}im^lGC8ozvEN zWLRcFm*yLMgUkIMHPzs9d$(_JIdP1mSNZK`O8x$N%IOW>)Z0GRQ+F-#_Bpv+@4ITY zx8IJ3bv3yB=3vLb8I$!vk9XJgfqitf5<_fjor&0oR<9<5%irk3i?lS=N(_gpm}(`4 zO&3kI62sE3O|=rk?Du4FSyo~gzE}pAN0{TgX6tGthQ^C@CQzSPdX}zMVmLlrS1U1m z)=^h0F}&VD2A5?ehWQ;#wGzXWP?HJKuUZ)Ong#=H0W|?7lQQK^sFOP-rDDNC#njJD zH!ZIFPk!^)G7RY;B=T>51o)aCWz>7}wrQeV)gVcf>j=0im9~f^xsx_$OENS~RC9&j z_|tX6kEY4=b)B*xVW=pf2nk0>NJ7FA5}J_kgoG$0Od+8P30FwSLc&%t-+QahsgY?y znfDRSkdTIiH6*kl;SC9KNSH%H9TM)4kcWi5qJ%yq{1wFlAT|K80uCE?peU9Au?2`V zK>;qyU5F3G53B*nymI8B|QdkRl>;+;m5SxKm4a{55 zLM(@T-iWkV4|(hdVnK>xL-2R6YatfJ-(gdVVpR~kf>;*BwjkC8u`h^)L2L|SWe_`q zSQ^CE;58%DVsX5V%|WaVVt0`9X|R*n9>n?}_6M;*hz-KLk!i6*@_8fEVvFSSMyACc z$zzcan^Y95gxIB`SSG|aA=U}8Pnb6{EjCIXD}~r8#8P42Iu~NC*(eA=XSjZ=DOVX!5!1TwvAY z^VYc#%O;<<&V^Vv`Mh;5#KOtvt#ct(PCjp)3$b+a|Hp0p>gHH8Sv{j!)Rn7e{Bx)` zAi=I&K0#Kevi8VGALXPecIy(l64?5!OXzNRMPfde&;{JM9Y0^<63N|a$Nx9m@$VFN zsEb5s$Fq{!747&g{fnDjW_@+5J^$NQ{ePrA&s|#9LsU-x>lS@pAYygWqOSyRwdilP z=n?1NrbREt$M?CWMW4G;T|O;(Op(9C7~!oJ{;d}N%?#IE`JVrZ(f`Xf{`k`Y9h*-R z2^Z@ea>6bEAiD_JO_+NJ3%g66U54y7iCrgU%4_OM^?z^oIlt|jfbi*e zrUa}S-GI+lhq~i+Zwn~G?+pgZzC}Q=Vvn^MDS*qOXFTbd=dhgLQtG`-(arM4W_pIK(sB+ZT zZ=H@Z@4gWA&66L6e%p0a)OVBq5qh9;Qq=c@K3sONba>REHZLzb^lRekA8I_f?1w#J ztAD(F$FiSRmt1}1>#oa=K6QNcvCU&bk5AsV+Pkbv=+C|1Tzz7WE%c<_6Lo52+0fJ0 z6;WprPKEwbcSh8&<Qd=Gm4}Wyg(KM!5tOP%Sfc6CyVv{_e|sv^Qf{6Q zb&68uwkvhXP{$;>Pd-UTN;@X??x}TR$dr`t+_3!enzBS^lqaN26{TDuWeX`^NEt)Q z8B*4e@`jW-q}&yy>>=f^C>nt10HOtm9w3^4=mMe*h&~`1f#?LH6^LFSnt|v>QM3cm zkD_P@q9cfwAbNsm3Zg5Bwjla~Xbhq=h}Ix_gJ=$-JBaom`h#dtQFI8=B1Df6O+s`D zl{VQxpCr*JK&KF`Li7sJEJU{u?LzdcC>n<7SW&bL(KAHT5M4vG4gYNV4ie>aOWZ$t zz8aAId2e=6+1HJ4k>bZn0X7_v9q4dYLhX;Z67*4t8Gu+-LCzhthi?F-0kbM z&5Ex!$l9y?vaFQAaYoAN2eNv9-_6JrW#nB9m3yVxzoc~QdL7}A_0%~Wxf7e_&c@)M z#`Gp?xx7P)NI9&0E{7K8KRIcv!SDT3ELc_EKgB`;mG@7va6sk#Q!H#!dH)m(%T(S! z#li;~iQ<8w2VMfIm>@+(@=vWWTIKyyDS zQi9!=6ekb1%Ng>tsBG!=s}}FDln+TWDg-~_tyuI4SuX1%r*EQz3*O3Gl8q{B`?{+x zPjXjV5bdr$H{4xgT6MQ|Olfz`{+hd1($DVNt-p2G3ESbWTV&P z<&KOf?~c4!)g4tO!W#9}C3nm7<*cpNn(o$Lp0P&1c+ncOW{)-Y-mk4~o>^nH4|~tr zcIM~qcJYg?aYI(S+tPb{rrqVW+*%M?I1(lfnSkes~GxB*;f{EP7BRPodAku@#4mP459G`shn!bH>F~^QYE%lvo1suCNmoz`Gf0t)>*l}}Du>qbh3OuEM z@k1NWmp{E}?%m$s@zqX`zHddWa z(llo=&nH^Y*@4dDZ(K4;d|`K%T++)Zwe(eI=~*p|(!Z8*RJuRQS?Q}Rv&un_x9XK6H&hQ6k%1kt`I~!-XowlKm%EBURy%Fh8d7H*8^fv20)!V$9;f;*w=Z(BL z*c(-4iZg0odvDA0eVwh=)$_LA8|{o<8t068r@AwCc3o$iXEmpNcoApYSyjF5;(u_) z4Y}lPU-uJde4Od+5crWRq4w97gkuLSi3Q)YByQbo>Ga)VOVVqvSUPW6?@E4TpR3FA z7hGM(jwmA@}q?3y2@xUZsG^;JgV`ZB05u3y#4aEDwOEW;g9_JH!gef{e9Fb;y> z=iM;MwZpkfHK{9g0z{|2l>Z!F*A+N+pYqn`JrJQo#I7iUhrf3MWP*XeBOo9_0SOF9 za6ke?QGx^#D3D-*1Pml-Ab|r39!LN|f(Q~wkYG}jfPw@SB(NaC1qm=nkU;_s5^Ruw z*3X=?J>{5lcl4&BUtX@Kom%zo z90mys1{Rd@>Y-M7E6-xZ(rA)TkZDLusd2t?ssSGS|JXYZ_@=7%kKYJrD8sPJ4x7qK z3zV`0rL?6K!XAR8K-nXdAt2hTtg46+7a~HCp)Vpv1+0it1*FId2(l&0R=|j;AR_8y@oZ1`_kHJAzB)+qS<@z;l()HXDx0Uy_MhWu1^w6Z z$-stnEn2tOo0_jG^GC=EehBho@DKl>9Cc@A{hK;&so_))hwNl{yTk|0(PIaXNK7zS zS9d>b368M|<~q`99Go!1+(u5TLmHdo6NZf)I(BrO_>sfL_Uo76?~ESXmczU{$!!d7 zWvKLg#`9vjJeg;SO8KK5()aYV=z9)#*Y?&~r|&D*Pup+$S=;}uM?0{ho_6s4rrIIz zQ`(m+w&{l#t<}9xj?=#C`mpx(M+5XD;eE8D^J4U4#an2{$N01pg?8#EtG=n9JULPI zKK&~?qld=4;0H1pCi60%YTS{ncKAP)`d*h)@cZhN4muS4g3ddFe0j!yMH z&^x!S;pkHI6fMh1WlqX0^|KrU?#`_bEIYL!uiJ;gBeYL^>qeArTLWdPw9eO7xTd*ZQC1JRCRf192dT3qhPnQQQdPNQ&Z0 z5NCq86U3n)E(LKah+9D%3*uT3=YqHw%v_~aT#VN^83{LoIGUok8pPR1xEsXbNVput z=}5R8#PJ}m2XQ`#`#~HK;(`z-gt#HZ5h1RqD9#9RM@4Z+h)Y7865^H+$0XsJ5a%S} zo)8Bm;i3>HCE=zJM9c6~&=RxU`};H3_$dI5r8_hB!CGy&(<`|2JJ+O(h>DR$nu|Zf$y-hlK}5 z{{?C9@0@Ok8MuqwQBD6At$CVVqGiZmL0uj^7x!3`#pcv(8&y- zULp<894?LX-$Q4WC2Yz4dI7ZIvOT5PvZ-6xcw4n zJGPLI@!a%U#~0SGTsX&5tXhb*cyMob31hFc5*MGb1fOzROYUFqF14kYwe%Y1m@Z;h zb4)+^quoEp^d7r^j_LR9{yC;!w)^Lpe%S7xWBMg;^`o*ySkX;XX{qs!s_WI|U zZtnHZGhM;!pJ%$6JuIoDy>3&pyM)uR~t*W&3Mn(3ux6V`B z8(pcDJ^E~%JvLWWd+fGa_BKb1_PFKu+S_gk^Tj`P#i24g(69-tx2Jgb%}pjQ9}^Wk zw}yQ*O++6X0hWFL!N@%D|Of6U1Lc{n1X^-T5Z{@o36RljK z3?b#nmr$0F@`RMBqLeG7Y$4?fDPu@EL&_Rv&SEWP&g-mMtoNwbS+iKbuU==(V*Rpu zoi&T~!|HX`EY>f1HA(0Lq7g;W3Cxk8_1)@;_z?3yIB1kn>j zQxIK2w52Hef@n-pbOzBHL~jtyL39Vv9z=f-4MKDX(IP~T5KTgK3DG7*pAd~IicTR~ zRTRBKGz-x!M7t3E!elA?%!@d;iH60ULc^NX3JnX=_BZ_cuG}A1mmMvv?wB-`J0@`n z!}|?N7&Fv=8Ne3DVPu!`$%eb-uk7QG{JJQx0?MJ+y|3TZ{tZi$x1!ul=T~>dv~XEs z^F_O2j~=qLIsK4X`e)_JSk*!b>LA}Ov!+UP$|@w%5399}o1rp=tz40j=Oz7@4l*XI z6%S`Z9vl6yY|;_yCJa4uABjWu6SA+6)lne(%#N_%kbQ^jKjau7$Dt_40{`se36g`V zRX<33E9x`D_@7Vm6I2;DxM9VnK)Oqw@Mm=Ywz_|^91iDB9m}w}vvfD{=V18FWLD-k zktuu|-;w<{QqkRbHrRGH{%3Y6P|2DWoO^gmxnPTb4lDYGw*Qs??A@j>Q27Z8VaFDubmictmfVCr;`B zyB>XZpdOp6r5?L2R&R5pvL3g*hTe8d3%Pe*KyNqVE*lG>C~5uC_DayTw+!>;rOA?9 zj9hl;m}1ttJ?g5eG*bfaWb_A-&&+XiiDib1tF8V=Y0AhuauqgXp}4HoeriawhNPM^ zjPcLGLa!@s6;V>;@Xne)gPdgKU$y2BvgP-YE(!TUBuqla5Gj+8GepuPWUVODhR9n{ zBo2`|MCuT^laM?__Asyp(BD-4_`H7##*^O-FnpEVL=LH3=5j!tM-F$493hJVNiVw5 zV`{}GOb9Ft6x)u2&o0p@lED05Tqf>~Rb31(J+hjd$)P5pRYqzle>^uWxLDxa%7tH< zi&Y!xEFQc_&WskCN?hEdU)x=Hkh{#X9`3Sp+qlckXzVUOsixaJtgO32uY&H1aaY`x z8vERpYkcLdQhKMmYQA;uYPr9&R6FmrR6lyy8Zv&mHDuQ(vKr{SmKrM-$!eg_TWUQw zO;!Va&{Aj2AXyExhb6T46n9usA9vlR1KjmGws6-k8{-ZStK<&9e4jg_wAB)ED8IYm zrHYnDYtFhGAINQKvLv6S>FVQ_W>e2tn$JnMSQEEfT1-CbZW;BqC9>bA?p9TvwM0d} z?rxoDtR=eA6Yl7<&$wfA4RgnC8|`j$q@6o%c^7xvEkiBwGaI-&#~m~OMv6K6(nnE`caE;%G=k$DX;%A@DBAy;4{=5f%gM-MpmC>zRh1>0L_QD+L1YAx5=2fANkL=Zi*r~i0l+adJy?RBnXiqM2ZkO zLL>>1B}AGKc|s%#ktsx~5V=Am3z4m&NEaesMUgN>#tNUm-5O6i7U;l z%fqzEQx~ot*v^?2bkzRYyT|OCpXp=V88h5h{Fxt(Ds!Zhg4}w$=N`FS-c>%YCG;kI z`>Jlj1I+~MKr=xsJr-n4k~HmtRTEM5Rp=!5(EO9sHVFHDe}x>{cl-<~b4R6+WLAqV zOCdW9*=fj*Lv|i=0FZ;=OE?giEbr0d;+7l?W#sSdIWwe@;Z4nmwI`y+{AYz zju<>*^w?nuA*$-hxp=sCPdy#{<`Z{2Sw42{L)G-PKa{q8+HhS~SnHX5R}jT0Jq(vNJ>Hr>D0^V#|<`sOA-*fu}YT_YFNkq1ryGMJkcI|n+* z82^g5V=Y|dkhZ-^6{1|^;JN=4J!1`ARfIP^FLmZ&NWRNzxOc0<;&6D)At}mXK@Lq( z4i9pOigK8cLsgW+g&eY?95&?8A%_pi0!TI}N>;#tD3axQX4wBZS&}7zC*Mvre2{Cb zWNpDtvTWlZ>A;eZl<;7Je*kM-H!?lDB$pcemrQn-4qu`6QZAX)*uux}vji@g)V-O@ z4Vm90hkAu?<2$ndMt0xd+i6wt=MDECzRbsSxTGL{pi;Cv^1SHO!S~PH96i>z`P^sT zEtgi?wtoJbecLOGJv$R7IzAtN!J*cpi+jWI#hA9fJ`$NmDl9sBnl zbR0PIp5tKZM~*|=zVUszV88G1s+B(PqicL$z3`&%>-HhOBjYCcj@HTNJJ#m~$MJ$^ ze1G0>&`!br;h^<{Z`p8AB{9P_7g_`Dqs-OUv({nH?wQhFeGmM z@5@LH6}POu7g$S|)%Zx+_rqoDb!CclC|5|?DoXi6${144kg|r9H>AvA<^p_D_PnP2 zAsT?_KvA>+(SxFB0-_6uHX!s zo~`8mooS`ERI-&`V{!Nw3NI|fvsftnyu&<{g~GpZRE%Sx@Ki_T8Y~n($5AyO3x%)p zRXfi@;W7$-e0v#U&0^sbeKl6FSa>gAt>;)QyqT}g7#0gR`$BumV&O^E9BQ%fj(Htw zvGCAu9pS&8b3~NB#}{#Mm!sh?r+kgpta3EozuDJh@lIdU)o=QmOI)M{KToj@WID9c_*jcf>6(>j-q> z=p47q+pYB6Kjr*ib?11>P7%y-(K35IjcZ$SuR~6Y{f~inI9(2WhI8=1`+=?SqGRqZfqiiAN%T7_okaC8UwW5?aq|71Z4k>#``NOOw$_uO4Xo2_914I)L zT|l$}(Fa5$5S>7@0?~`2Xa;5u%@^&EvX&~JsJ5dc-bYIiJwY@D(G^5n5Pd;31~Zo` z7p?I+bE$IC9Iw$GM0<*&KZph)I)rEuqDP1(A-aTU6QWOuMj<+dXceMYh-M+Wg=kk% z^b66jqUac+Wr&{P?>l#(ZQe)Uq-4=T=E?3g=O8!PVM(rW-D-`?>1SxDbp8kp(vC(< zG+g*3O?KR*u5v}lRj&AifeHOHW(ml71c-#6mPh`IEjZWPxw`mn=jN2MI^$Tl_9I;_ zeX@;5c`m0*5`uEYN`g|JtCJ@G62$(C95OJY#m$^)XZ|EX$In838uIh-|FH{<5NW{- zCy!2j%8S zp=H9b!8Oh8#*R)fcTOBJFd-=^p|QF1;Nc^a%+=+SWBeDSY%%0Yc8SYyWT{D)hmYr; z*FPz4acn+!LY6G3;`n-4L+$I`ulnvC+gdjbnCO#fj&iA~j;>rOuku<>N3YLoHDi%Y zPD*WZlFD2~IW*toM^%!`Q|h{yiR>);)j`FF$~RZp%x>{My9U`k$Sy*5Q&D!6Z)0~M zyG(54R!!N!K96#+?dJA8NDhI*ng84&!{#<-{-dgh+sE@XyOeo#=C4~R?agkQVOaiG z*h96$*Dq&9q4P&dmOq{skoA31?<{BaZw7(SoMF1*An*pmoSB2bYlf&n;N6S0Hg(@q z*!jP@q}A^hj<|Xz!rwoaCWkVr8&5&Ywd%~V=%Q3Qo5@2q&T>O-;}Gau{^OnXtM05{ zT)AP)U2K&kRtxIs?61gkCcg2xko(O-|D;ZbX&CcNc5`WxoK&zIqiS52h0R( z{LHAdWT_PXU#Cz0@g5!0Br`KRw*33fFLH-Hqm$$fI=p04sqqWfl^>NFWeD$dcbVcQ zlm7YLT_#vLPV@_trR;Av4RgoY->>CB_wI%lU*Ohep{#x_iNh0JO$!c`to+|}sv5twlZ#Oct+k$e&RToQRBN3vk zj_uRxm+hJs9u}GwemNp7qI5fJ#Gz7Y4KG=&jn@2{*7!hSYm+4-w>F!4$=ZC* z7glTHA#01t=h9k6t+ht>+m+U;$^vUtu& zEpBf+!23E{MV)DuXBuqBe-)AgWUo#w8lq|#@G;cQYZMNXMH4ys z+Fz^kEQdQ3zu53ht(~&RMKc|)ow(cR!F>ly&%GQ>j=MFamh#7Q(}H)ct8Up!^+(Ux zLdHKY>v(#s_pSffT4TjK*4xqG{#~(ObCEmH(dJsJ4#}-PBWqjR{5=}6HnBM|FaKj- zhyNYyEbtkw7zf@Dw9o2i^l=R5%jAlKN;$O9t}9Xz@fC^{QnY+cv1$*yVDaF0Ot6IU zZL{LVV@?=+>Zl8rJWx_?FSTW`dR=lcU`R(#F>Oqbm9Op5bS4Jt_C!r$F^yPd4zp=+ctU z9$dL7pRHK6C*8$^)659H#Kj+6!Kco-OCG3ZF16)BH*2<+SvJPIixL&h((hwS>&cHjC#_8Kd;*=sIZ zYp?a3+g^Lh0(+e?v+S1slkK6smwUsK9{1L5>h#v@IMiFeY?3!TEZ!S_xwAK-^bmW* zp>S`*OKt6qJ`DCYK2Y1JTPl-Lbn#SPqnrre@jH>YPv$$VZMaf|m5#c+@9(0^%$xWS=Za*lq>$r~{%9 zh)NViDG;?NieezDfhY%}9*BYr^DSrz zPt}#S{F7H^YO9MM);3RAWc>Z)j}`Wh(YaNcTULpY8HIGdTOQ?Dr9ZxWgWQ&u(NYdQ zW1*MgDi2B%>^A?Pin&^O{Ey`&2d=P#ke!6=D9mZzM|Sj=YuJHP;%R!=W0>{W^uU5o6?y-M7Hr`kROEnD8IoE!$0)n zL9!Rj3%UMKMZ?a=XY>D+_ByoSX?7`7^$X6uV#)o)th8j=52bXA$}p)n9um< zW$T~QQaJ0Wn(wfuTAqBiYUh8oUE5OFZmY2(%~o^K+qPQIy=tpH@UZ5d@XM_|5v6)$3ItLpe9P_ASUBrpe<)x`AuCEj!|WRi+tqdo zpU)uxhzKA;fQSJi2#6>k!hnbaA`pm3AVN_Tu|Nc)D58M~2O=JbfFL4*2nix4h@c>% zf(Q#HOPO5XSon*@m37vz|IuW_=+&Rdj+W{mx1Z`Eoq@8J~xW+EzDY5Wz|qeU{|7NkF$M<3E^Gy^a*DM$teP?}F?(@spVF7jSQb?U0 z-gtRh1meHVN*-q142+a*ESr4FJhzsEEn`zW*wpobG1~4`E<0>EB)C zyRI}b9ZD2Zs(i_v0V35L&_X@*i@cgcfr=*c$bzzvrX(^gt{7& z(^Wn$mNp@TUYy?UffTt{{%yHr*-D0Mx#$2VSGc8sj%+mraTW6#-F>`ZpCZ)+{@ z{yk6l4!n7<_u%obeTQaz?`5KbqeI`jaI8r1pyPdWjXzPS?a7mM9OF-(I6vr{dpnN* zX5$xwzWuJ=_|vbY4mz{F`1rHa=M3`IA2r^*(C(}-VxY6)P0UXI=L);&E-y+Ktk>?`Rk#nvw6-tC@ydTG)_k7d0*$i)CRtGNme&UKS?CP)T5M^nR{?0-C`VA7f&(+!dx;(gEd{tjCA-6BR z#{>GNycZptKL1eLoaYJO=1Ep6JnW|PxG*>aK2ASbqVFb} zr&phm{r(?$2=D)OnXWHzORf&d^j_OwPLk=U{xBI{(UckQtx2u1N8cr6ubg zg?EPN|8Eb`PZkZ_=F-0E6wKFph~aX0VG(u3Yfr(<)uUwedApHGV+NVy#wHCOCMRUd z!jbpT<9g7x4}FCWEYJ&gJ|w*c4AO1j zCjLpQN7=kwof8uY^emux%{!_El+nL{me5VKf-xK$%r%Kr~6 z?Mc@1n(T#SF(jKISq;fM<1=L=sAh_`r30hhtu1N4)u1HMI zdn-G3CrfT+=QVQDYWVVft~|_caSlkQFWo}LC`>Y5`^<#Rb7~aoUc1z zijRYaf7fo$$+GXaJX5o-PoxhhW|%a*sD7u$^QF0O_J#6K+id>tM+baIYz&i$c$Nw2w zJv3u0kHSRq9VDPBksLy8&x+n%^m^n8xuhgkyw0-b6W zT6sUKQ_WQMI%|kiU}o}JX?*Vb8Ogh<_p@dsk5I3(W+X4AUT4in{;PVOH6wXoXj5QD z^1#rhbd_&`p-sq3ll1#_+moeCvM#mVR#L+!>dESUL0bByorZ4t?qdH{6%?D}Wy}8Z zF{uHxGINGKoWAow;q-zZyc%=wm|9lTOsmCorjfN!mx1YpquQhvX>dBdXsu$Y)y?D5 zs~>nJHDvSL^!q-lm|A0*C#L57t`W6n=1Q-vKb~4=WP=z>!iN!|wjt?ZEq$qV!@f(e zS7mH!{i2m(!tef9MEH+g(;J*Pm>TiL6EO`pnIam!e{W3VH=d7ZGN)yF(;4Zh%^n&T z(|q`^5!PP+N^jA=PHM~MwbLU*SENRNy(uPUcl(Ig4eesuytgYNZpowRZC|=4HGcZa zn06BzN3^-?%U6r&QeanlSFLAi*YAum-M*R`(S65L zF+J87iRk%GTKfHqTc`GV_Iyn5X%izJ7+Wp9&%ifR?cJ88C$tGm?Hl2Z=~rVwME_Dn z(i8K)l$v-cI%dF`tq}tcZHXD==@>Eiqbun{-kzE|)KxcT*sS*>hCezWeZ=U~sU!Q& ziE(r>M~sRpACuHzam47V9n;4I?@b+h&$O7azvPb?ck=!82M;t)9lyC*`h*YHr%qg! z6!Xx$3lWo^TAco{UL*C95&L426Z%9bo!yn^mj07&Y!T>09>oDeBWR3>-xXBeCvE-a zF$THY#rw+XR4<6Ssuu+P2e~tGlPg$$7El?khSDHvwog5OL2aLQ;t{od`ksf? z>y*!Osn?IEzO6q0#2XFN=bwD(sM z&(8|&sy_d$Ik(#WT;V6w_U8=^)b{6p_)u+s;m8{G`o%9=s@HPXrau4Dd*jsS=PaqD zw!b|4Uuyf@>D|=!S0)@%+vg2Fs9w+S)mOcC#oenuzo6;!>hrJGj8xkfmfNJZFDl@V z|3z1RRofSTcS(JI$=8pn*RSoUqdx!ox|Qnl|9Ypd+P-wrNwxirXJ1g;mrX09w!b-M zliI#~V0*Rwt#0kqYj^A}_4@6I$JFQFsbN%~f4AgHwS7hY#%lYDUrwp*E6UCPH zkJaZtZV;_L|4EheYWuq2iE8`$d#bDL>n|=>+c%tgQ@#H5U|sck<7Zy=`ScG5sLyX& zR#a{OY~CETee+Y%YWtStt!n$$kz3U3ZGAhc*V{X2>hqq+Y3lPk!s@E+J1f7hwtrq^ zpxVAG&l$CS*N>;w>)j`l)ax(ylvkhMvuUyV{NB_~YWu#W`_%URFHKY156sA~wjZ37 zPrW`g;u-b&%igkzvZTZ9H~d#>$y-|o2fqE!sf%d_N)6qtR$b{5NRv>W*KE_EVV$sg zHQR)R*A)h7Ytx=EBve{V9@0X*K?h1X6Uv-S=J|~0#dLWx&k~iA-ebF#{>u_=Q^Z_- z%dv0ut;>GXwrwo0ZGU>QObfY4+cD)~ZRZnv^v@IB`mSO5v^_m7`kuqxwY_!L>HEs{ z)ApNw*7kqv(GIMrryYF1sdmWwl=kI{ZTjIwYjy9FxTo5; z+r8D(a>?lT)AsxRRo+wMgG6u5#|@rZFGqW8_xYEt&O;$yOUwpOXv_=VuqGpHbwl5^ z*DLj#r+%U5?e)K3Vr!7ws5jVda76snM{juWqPLOfjHB`L`|V8@x*Sbi@7SA7e$3H) z(tNLVbhx91ZIQiY+o!e2nD&lVHAiVt<$m(D&fiIEeY&47`gDCQ=ERSV*exZrHXqIP z#l3M+Yda&aFaG&rdb{Z_JKB%=S+_mV($}H$KE30xSVyONALyOi)^Kzw`ikDQW&uan z^T~SmVj;fnyAt#sKj!oGToI|?zw3;z*DH3d_loVl2Oe&z^?B}XAIsjendX}tbxq6nWXPJ7IsAqY4mZl#k z%hIzX{dif9o~7tnhMpzpS$>|S=UI0Ce{;!st_jqYNcvs6VZ_l&?z-xeUm%eOi9SV% zKu8oqA`udekcfmtB_uK-(FuuANR&b%6%wtA60wk|g+wkSdKD#tAyEv8WJokaA{r9a zkjREaHzdL#Q4Wc8NVG#D9uoDC$XAr;C*c5!;sOvSfVcs~5g@JraR!JxKpX<%5)h|= zxCO*9Ag%#%4v2d|90cMbFfck9H{mso0&x|Hvq0Ph;xG`GfjAAsZ6J;VaUF>BK->r7 zKoA##IFX{b5yX)c#g!n=1aT*bLqS{$;#3f~f;bk$wII#~aW9C2k#I4HlaX*Uh@&Zr zt3jNNgu6i;j)coWoQ{OsK^za_dJyM>xF5s;Aub4ULWmne91-G*isFnAcT^OIgt#Qc zDIsnNaZD1f32{ym?g?>F5-tjHQW9A;x6Sy3FCgi9-mQQ-`2*y1NUgsy|b*( z-@WsSFPGdnR{u0@GWkI#OZm@%`@;UqYHj3BFeA<-8TiZQrojz&f^tp#WRbdS%Fghb z9fDb%EE}uW>>Tg2gD|U;<$t)NL9*A3QeXSQdc%pMF&u!p;C$n;C4sPLB_HFtX~D5} z`~I6V_WfC_>o(bT%KfL#*cW>tEm_JVyIYCZ3^&Q_+;siyX8vyY?O&rD#4SWGS*z!& zF+$=dfp@r->;H`0+?D5jbC_^6TSf9i*Oe;DqGaJeb;iEiZGl}BNnzZ!GxmwX*}r7b z#OfnyXZqmOTQ z)jQWctt;=48>VTWpKW_@zJt!-Q|Wri{lEH3ZHd?Y>r2(q%g$wesY1GceW@RG|N2t9 zb^rQO@9F;arC!qg>r1VY=^JMILUzrTJIkysHBqK%U~Q>hGCc!pOEr^e8CYAYrydsH zRMwViqSvccUe=b90fPk$jz*{6bv0hG%-Lko8?L6$&2%=K@|3Ij7>Co^f26BL=Z?;n ztva|O>(z6%s$ACUJ#B-_am22=JyU^?v_)WR7^OWQX*J zH{!#A2?XgvBSZTv5jk}h;J=eHvlMqFTX~bLg=8-ziy_$zvzBtIqh6Ecyic~ntfid% z4f?F5oOY}2SxY&+r(S0*<@AzzowbzHD)}~M*qE(;pJF0WRFL8#Wi8>_qn8m~~RWCB$Wz-S$KIbb;=JM+_O9aP^p>8=uL^`GQK3^2qbx1qTkTUb%3C zbW`i(_+MO5vfc3WR>oDU{0{U){9W&`YhGqMk58Vwd5qFLnAVyMmPUeVFlh459JQdN zj7O2G=-TI;zRhrHMH#K4$yWboc*idv|9W;TE9oD*V&SX(9Ta5%OEwo9_{4R^jI=0f zNO6-Wa(HKb$=WI(>UH$@fc&SfFNxGC@4z$y$)bhK9+B5*Jg2$ruKD19Tk_(4p>l&f zR4&whyQj3_OuZp;JpQTK8<=Gd;|aqjBn%xnV)W1n%E8;V;CQo3T-D<*zb+5A>lCJo zKALEFE8Hb}n9~KiK#$~>@-d#9Uh5Ivd*#AaGWkoCy?F2hPYL6AZ;6X<+Ja9lvzOfO z^_1EYYA?N}nOubPkZxD7IWIOlOI zO(ElZoBZc;kE;eq%|%0{XE5h-@iNUG=W=yqdObOpORBG{bGeTH{mEaHz5@+|Yp%py zGx1C2Ww~oU;(u55G=FFzxi1%f#nI=uIRzAl_B*#c2HwHT1E2A`e&CaSFP9TV<>P)2 z{}0C>QmhiSV&SWN>=eZdDPl-5D@svAiW^eokYa}vJ*4;{5`dZKl_CXRBL|2iAhLi+ z10oNIL?AMONJUZPLP9bS*(he7Up~&utJ<(b)oY|gLQW(kMM732qy>=|%sjsonejUF z{4(^Sdd+-8y#G&`0p@QY?W?SMb66w8feYM{ETXQ-Vbv{$k4-Xn96T;DNjde6TdUXE z+JXb$Jdo8|o$f7RoaQTW@dJDCsnw2>`_FnyZE5Z(y{4_R%(AA=vU6)Y%gre7EI-NQ zG!HX4E8Kt1SuyU2vr^+-&dN15IIEOi<*b_THD|TlpPQ=cAYEQY}RA)?Elcj%CQ)ur&&ak9NXWgc4ob@_Zan>(e(-|Ii zk2CyoL1#qi%BF~eK4-&Acbgim+39S&|D>tO;_pmNSAS+|Hg$)o`J81YYvQ}67L(JR zEu)?{MfO|jY*pn!Q&i*(XX`vYOwpA_IHS*wb;jnhIb*kVbGA7W=8Rk3(AjoNdsF<( z($3Cto36c9agAsFF>@{ zKx6`uilWE`A{mHm6h%4^`9LHDkr6~n5II341(6j*S`c|bBnFWgL~0PZDT?GEvQrf4 zLF5OKAVh``DMI83kt9Tx5NSf>36Us7rVyz@6%F}ksbX)w)PM*$f z4OSHvfol`Ft~mkw17~U?wTOLWaJ`Rd$wpYQb7mH2+z?kE{EvZmxLOhT4Any5ea%FB z*1wnmqlj3!q`tr4{=NHOSH!qJ#SAHGQudRbt+nt&6hHj$tzmN3!|(mCPD_q#Iew%I zkuOBT5E(34UslP-VljHWDb!!Oco7fUYEH2pb)A(Un$sqtAZejm`Cf zH+I`A-Zn?Zd*hZTd)sb#-X1?Q!P{=xgLYNw*_^Fs%vgC%WB2;gb}_Y(RPs`Wddu_7 z1((Eh#K@G*(aMz};PU+UpYflhUpo@q?`Jt&X1%WPM7azAkAZ*R0pPzlR4$50AVPtN z1tJ)TXduFYhzI`FOD-Wm_5%?@ga{EMM34|sDvB^6;#3rYLPQD?DnzUh!9qj}lclV) z>lyQx3KwJY4=ew4(IG?Er)})5I@`8&=IPa`fV|+3-bXF%W;o8U;gcg zYwjy~ov&<~@0^!B(>Z_X=O$MlhjYPG?NI zZ*E#|TK<~V^p=YS>Fvi;Oz$|FIp0lMITzC^B;1qo&B0A?d1ZdkHCTP& zE;%txgBl_O1?Pp4^H^g-H|gKJG&pYLGWx^AGpEorT`ZNmZQ_OW$M z+n32=8yy#Dp2Z(JcXTOc+A(8*wli$9wsY!y=jT1XGVO}pY1-ZJjP;9)rvOZ%zP(`i2!(bF#E8kKh8hrVeA zUJfx8e6p13-YHQ|)0l8)q5jpJg*#Vu6={{%S+t(fRjkrQSMeg>xJu+Y;41OM7FY0* z&F+$)FL#w%H{Vry&1Q3%Woyi3=e}t!H)Ec;{G_MN=3%dn4u3WQ~ zxk{P(=BoLtnycmM;HvgxOIP({bzLF5E4%L7P|Q_h#RX^0MW>v#p4;!NJ!P}A&X_e$ zOaC{Wp}qH+!je{)>dMM!^*X*_s$cdMQ+U{TQ~2d%Q$*?KoDqi-ObsuMb2j=g($x4s zcW09&eVk1{Xyj}*t%bAs%VnI_0hOFBrZhCQY@Np$*}t@@Rh1LYsL0Ev)_FELqbnUY zMV~!xip}-0DRx`Bsm+mvrnu!xO>MWVb;i$}VQRN*fwTRH5hmM=$<7Ylo^W;?mgwx% zV3@OW+h}K(678H_Ylb+x{%mn}FV@=BeNSO$j~}a>dagR}ynlC)sh6vesrQQ0rU#OL zF!gzEo5|j1w<+P_Z=8Lbzh~;#dyBJw`Ik(IO_w_d7*{$6mUTJ@o_x_c=yH;CaQX!2 zkVBoFLtnq&IqcI>rr{|~og7`Gc4=;bk`N)Jt&g7ZNPUR|h%S6Q2 z*K;?1=N|dw)qgks)OGLXy}`nUYTd((_k;4~zg7S8OC9OcWT4Qo>RRqASHAZdj54Ii ztI7LUKj$4WBF$jpeN8^YBkyqIH0yn8@EG~4WeJtPFgY!;Xx*axPN!;eu1@hE~5gm& z_%y_;6~(V1o~e=CZILwsCOyd2`^isI>ToA|n-css=36~*HrKCdWV5Al0N z@qCEyD~k6+{2x*WKz;MAa#PG)C-Wh0a8Ce>Ig_Z0jVn>^#!EPfYck1x&u;w zKK8~I1F2^qbq%Dxfz&yWdIwVXK zK7!Oqka`JHHz`W}L}XD%LFy?;T?MJHAaxd`-h$L!kopT!he7HwNL{8V^%Rm|P3#or0bugqJhSbH7`WR9tL+WKkshc77v!c||ka`+YS3~M+NSzI-w;^>mr2dA~ z;gEV9QkO&Ob4Z;Isn->yZim$Gic-fz>Ul_A52^1Vbv~rtht&O$`XAB;fV2Z3Z2?Go z0MaIavP5Ri5Rq%8qyPe9rfkah*6 zZ2@UtC`uax(#}wnwg#lV0cmqU+8vO#2c-Q0X@fx8A&L^*hC6K$X_wr(wn$JDX}2^B zl~XpE^g+fY%3#DgmcX#YI-x<@Cnt7m-##){%H!@96GtW``Y$TAjHiIIOLJudcNmK5 z@-TPH^471s7Z*M+b@-?Ar=*6jSXcJ==Dth3TRvao**b5BciX2$Jln@kuzTLJ*miWe z-@fzd!nWO`2HC$T*u=A^=M?XrqepG~8V&I7TmPx;K&8p{1B+g_9mQFg%0fD4NE$0 zs~g?eTd(6bTm5Qfz2RYQTZ6l=cq2-0@kAW|%G>bLa!;dA*LfQsaC(}&<+V5cAj#A0 z=}+v?2(!gc>TPegs;I4fujY2!^FP@-G^t?kICihCQ<+@$&Rtg9I$t_w z?^=JZt?My^w|lu%Pxtjlygh!K^ncvjXP(t#k6&U> znBLpgw^oY1-@xX!{so5E6Qe8G63?`?53H8UHgIcg`{28e*#^I9vJW}F(Khsjn%-gC zk9dZUE9f2Z)&|eWEDN4?>hJU>jeOiQy4VWunD#?GV}9FV9~Y5g8~5eA_VK|( zY~w$A-ag?%Tie8W585BvTiZ72kskJkQ%$x<9%yV&e({`54V(;2>v)?{+N+H?>)6r8 zAZH!&T+S$VdkhlY8>JH_XAv!BL?<&twvf@CE#!F)R{$lhRLYDr+ChV-2e*bq93<)> zkq3!BNCZNn5E6-yXoN&0Bq|}135iZfghHYe5~+}ARg{Q@M6IGkE+l#tC4wPQtSFHT ziDpPdL!ufI*&Hp=4T*3_lq*W4L!uoL@sOy8L_Q??Ar1g>0f-Yo+yLST5LbXW1H>I5 z4gqlqh*KzvTRp+|b;yw@ug18XGi6CwSaU_T>x6veF|jsQ3*ul97lSw% z#LXa%25~irvq9Vq;&6)MauBCe6t{yoo}#!O#Q7lZ2XR1%3qqU_;)W1Mgt#Ka86oZn zaY#jRNr+P_id#Y)Q&C(K;+zoogg7X~MIlZKaZ`w+LR=N%tPppFI4s0vAx^6(ZVPc- zMR8q-^D2t_LL3<4!Vo8hxG}_$A+8K@W{5jO92(-%5T{lYw}v>jqPRB1xfR8|Ar204 zafp*c+#KTQ5Lbu)JZBFQd#@)pPm3$8Htns@+M!GXvHFEG+FQG6JNd7eM|I-q)#+|| z!5?Xy{PDcdlH9#~yITBgE)pNE6|MV=vsk5XoyChBbe71q)mh?)kDS3r-g1`w+~q8_ z?ipw4H6NPFEL(0WJ9oaR+zh9w{G>-s=3z;u3cdQ7Dz@!xs?;RPRJmrjsY;n@rmFda zP1W*5I;;Iy&sqIg6=%rq;?Dav+~d4+HTJ)AHI_BZuDf)4%iobJGEQ15-}|_qDM_w+ z7Bq49GV3|*6|Q)4rL$X9##9vk>zvt+5V@grso;?>M8fqhE^-8EE9!Z)OVzz1(1MW(BNCD(WULSBztj=g z73p4`sGe07ok5=G=jP0o=jWPtj+tc2SK?=DviKQ!CFgpl&f})i7QFgylX~u-&4;^2 zcxlG{A^Em!&irop!x(4a&Ja7mYj#4uMq@`{vb^^n?@Y!eq9DyxqOf-MQ+4Hs+xa&b zFHUvguQH@{nDM;8lfxHvztbT3XWSkZ5&gISUAc1cbu=tVq$TYT|2hadPec)w)H?*QV zRpdXX2i5H^-)!2JH`L{wD)LV6h&#O_Zol3Ux4XyWR7IZn@iBw3OBD5CHfNFd$R_?s zPstz83+VFjaT^({PuAYL=z;UAW;R0 zEJ$=gA`B8`kVu0>8zkZ&Q3r`UNc2G>5E6xuNQ6WqBq9|hDmii@6W+NautMd-ovxZs zC|%s?s`=M<)%@qVY>*gltxzmD<8DFVUO}C@fuWa}(aj8MJ1ie7Ab(|bd6;#4uJh%% zhxC_!+wGh?_mcj~rf2kd$+|v&=?2Z!r?0-?$qV|cEl%hQM?9=As#IEA-2QECX`aja z((|uqZ*E$pEq^Ucd&|{ZcTX>>z5Vz^?Hz|je>dp`eTA*C{$5y5J@wu%^wcXG_4mI^ z)z_qds(qOHp7zoF;riOyFKKCWu4o^Re@Ode&@gRX_ukt2=0)@k5zVzv8!gs0c3-V; z+;>LbWN4~y`o6aQ+1I1A%_|eM&8Oe?ZP9!9wj6w0+xmQ@wsl<($F?N5Z`+2g`u4F^ zwC&5r`aB(H`87~jsR&*-1`_*~l+yI$Mf@UZ2J5RYX~$&W32 z^S)!*dvT#<->K&;`}a+?9N09@a`63umP7B%a)0^iWcT4&W8B`y65U@Vb#;H;H`;xq zV}$!?%Mkamuu|^h74x}Ilx|=-nXkI#vYc7E&2o0m zTFZA&xGlbk3oPFcnPoZG??d+wotC@LN6vTuSl8+PsnVnFpNk~9FXZayzVJh5cY&8n z%V2^0GEks_ZW>cvFVw%JUbu6xvq#84>T>(9pZ@)UsM!tg!m)GBOyKs@k)qaLOc`V zn-K4W_$S0eAwH@oUJCJ3h^In)72>TBe}#A~#AhL13-Mcs=PHWtLcAB^zYq_G_%Ota zA$|<;WQZ?Aycy!p5RZoVG{mbF#jhcrtth??@otEJD~g9hd|Xky9OCDS;^`1yR}^oD z_`9NbJjCY}#p@w{uPB}m@qI<{eu)1=>HtVR0I3Tg^#P<#P?UNBQa3>A2S^JLaA0;xwJbqSK;h_1F3@`^$?^kg49QlItfxQLFy(&shL?QR6p6YDQeQ#pEJ(ctsk`9KpDBIl z;`4XZu z@89>J`M|Lfu7mIQFdy1h&-~@9V_k=r7dLw!>*o6EsSD<>`!;kP8NT0qv}I}6vG_IS z;}tHuPK57uoy=Fte5&|r*QsxQHGlKdT-UdseQ7@Z#UrjWOVi9}SJ_?PJ@Km9_d-k8 z_d}+b&n5RU|Io?hI^U;-`Nz7CxqfP1$^3JX{;mt<^O!IE(AstJw-e@HKCkY&bTXIg z*ELaQHRvj1)w&yAZT!e}

    <2N^CKb95e}T* zdx=#NNxlKO00~l1bkFM$bg4-%+~LTwhHq}h4RaLqrZ?R{m`Kx@{JBZxE!JX#yy1;v z4(O&}YEy0DZU<0*SHD8Ce2Li5Kx@Fk23=#KPz3MzskNyKMc?r%$Lio~K15S!ftz~6 z-8`R_g9p!@54?YD7fQI!o+L6RYEx?Ba*i<&KUbMSe;&noib6(V_twR15r799ymaEerkA5njEc7LDYB^21*z7 zO)HU(fWm8_DDlBEv&i&WsOB<0HejPCi|o``K*AZ3qA}-ygf}Q9Zv|fapB$wHKsMA_ zwY)_aCqauY%K?oj=crh)E-&_rK##uY!QvWAjnbTdCz$hZYXX9YqNEw{&SyVIKj)}1 z_spl^`@?_d00Y4*U& zvD4C3{>1$BOKHp;x3_x(^3xSA%}?)^pS~lP{>grB{;d6xvMbvy2ycU>L;k#Wmbo`b zN58Oi))k^J^LM4^-TxvFeq5VMlw|7A>HMy5&hO%@U51y=}Rn%tG4rwOKW5SKOK`uWP0bSp56jw%=Oew`gcgGsgVxQbBj~K}vqc zoFLB4E*r+7}yh8^kN^kjI(WO%nOH=vC!!yk15u*a|Vb-ef$)yYO(KBLLPEWqjB?_3SE zDNfQJw=I{n(`&Uj(N2?IZSup~!vDl7X3h-NUyr7Q2st5OnTLJG>P$`NqO6NR0JFk$ zY@Jr8tS3%{;+I97=bRShVVAkBXnHnc1pbp=Sf|ZXDrB3dIuVC4FQ`mg;JB`AC0=!E zHHeJxvFRk)Eiqf|x0GUB)%o8^>mBGC!4NNLk+U7F&(-#A2M_1f4nWuhXHzY|Hp|Ct z$M4P6)^>bFsQ$-!wMC2SdxfjLT(vVgZuAcLSnW9nWH9>3r4G@=#zP32w!%1rr)ba0 zYCZ$YV-?dGV7Q&)w#6IkI#?Ow)mw-8#Quiv`Q5z!=+GD_?s3HV*Moi1#}oYC`Agx^ z`@~WW#mfN7pLh^2IwaPWyk}~-yzuwezhX(T`Pr-Sbe&6`=Th>f~ zJUzc5>kHs*#w5|ryY@l@ud@TMGytzXT;?z8W<3wC6AUgaB|MUrH3~5`Zf|yG4z5Gp z)Yyebk%htafw!-N%cjL)%`J)P%W~LzZ-#+)L92!^u})fcNBOSJms3&y=y&O>sI0-e z0#w-Ei}(MScennq?npdple0#$)|rb?wy5=>FTAU)2tQFS#{RUvg79 z?7Gwg-6pw@Hd3ouhUHNkGs2CGLnjz#Jx{crwTjQ}OV<-Z_43w=JbJ*_3%->XT{b%rFN@m?zRlIe$IT*JMn!{kIyd3|6+gW;b?HD9 z%a5g4K82F8)jHIW{%B}RvnY#hynmU#{&6R8N%dNM+d$ENb=E^O%{Og}mzxnRD z>4h+iP2S_(jh(MFS+8q_@Oc>ByWYJnqscOkMtdNG#qzGV*kvrYjNfI|3byxT&LUHE zn>k6^fzHCUQrD(rv9tE7i++5D@mb_mp?H)xiT6 z$bLnZ0leM2(W)>SlB-OuA!oaHxl1-!e@}9@p{?H8)=*!G_sj)5k%|KvG%=>nh|LZ} zs|)T6A@h45&`wFYbG?>i+Vr*TvVK^?<=y13b(bMN-KV&z zT=GLQ#L|;}{Us}K*LM|#xZ5l_Ee2c7o8Fh3#p+!a49&e18){53RP;P#)^*;qlMxCF zBSglfH&NnMdu>i;Q}6!v%_$ZRG|QIUDG)p_OmA7`Wf`nZDNahkzqfgpSOe~KBy%rN zcpLsD=0rQ`DsSIlQq#R()s+A#hEAM=gFIQ;?Ip=@{{SU8RR9WifMRcEKvt;_m@c~Dn|ibfWHowf2wy#x!W-4gsNFK=2i<5279>_NVeLV9l-THfW&{?L$4JJ=wTANm+KNXJo>S4_IQGoZ18GAj=8 z6B%5Jv1M=>?@{LIJl^br7zvL6x%2CI3eWd5g(_b;g^XX3;eBFEcKVdjkbn% zcrQTGQYc5Y&MlMwjQFgKN>|gPdV7&_%p3W0KHxRJr}-SF7!{FFbXRyaMAsG>^ol*Txt{_c^^I*SEEi8M^6K6y<37JGG;}o-;?F+8Jg2x`RV&x+ZIG zW*1f%NsnQjHjblF-#!T>vGQGDAeFe;d;gzI0mvH;CPEKe7vYnt2ec*nM$_{OwTn(I zRb6il1qHj5F)X&VqdvLvVFzpGT9k`e;Xmcl`bMlAA06Nr^=x7StHd^~cAoLzrC>{& zP_A!8($^asynd~Aq4lf9<+R&e%Q`@DYsd9R2h6cCL^l~7Q#Ldu%6SwoR{m*h)W$jA z!ZWnC{6n|x7M2gtkbr^Le?!$AH`Q>ob#|xH2u`(5P#0N&v{pA)5+?IHNUZbx60I(X zY9#jqQ&Yz2u@6XSRuk`_KtfooxensfP#yE-)6hL1&YM*|)5K0i0co;os@hyX zIGfh*C0cU&ar>6q&asx3=e49_9a|ciP3!kk{bPoh__v3(c})}qkSW>fu6JR;#+5^1 zeSks$amsdkK(2Iv9F%RTxn9NeUnFlx=G$j!HYBH_w_k@Ezs-uWkWC#e@2MYldjV50{xCy+@+WN4fZJ4n%f99k12KK9upr?i}^fi zA1hj~Ed2*|i~;GVb3t?a8G9UaVn!{>9?kx2Vn$%>B_7TMWXuv`I4Ejxy6T*+?NIpE z1vwPP(s{cZXIpmL8-Gi)iT1f0bHAL45r_ka;{CQt`=6n~Q(5x?L0kk|Te$+kj^toW zNlsBmhuY#*zJ=5FIlt${GC=I6?2G-HM{4nG)9J*TCJcgnShZ=fVi@tNp*MiU={Ae3I=Tm+wA4HRH zTd#U>%Jn+%;8?{}I$fv~f5${1KJB``{bnBuq1njjH5uK-JvBCulALKCL-bMVUBs6e zeN6q_;uTUUn!1jjfk$pCNSDww=$X4Hcqx%JG}ifY=`71*Ne-9Wi?fHmM;wUeu|pYy z{u)JFYaIwMO*sRtStV7}7D=W%#}2V1iko?X-9FXzo8bu-bmiAFg8`QL$$UYbSo&i0 z)}s1fHHaR$aZy`PS6NtaRc}37JZkH_k24|ol?Gk@ilL8_Wy77AvBO;@UOv}o#_W=? zkSG6D{qIfhi`Rt*n>#GN{3wwIynkR-5aE^1?K13{)`O%4f?V4JCwN3mHZTYxphw&P zT4NLwR>Sp=50soQO!RerKqJ;~T*Q=fb^zImrfw#e5JAa?fr_vd5Dr>AaO(!@r?GMm zB8El>^&p=}U6o}C9v81EtgMPhE6YNSA4%oseaGy1Qe@P-p&NH1+qneBuA;Im{&8hh zsPQSvaRVpwSIpe{{)?+unBmH+8Ys*V48UCs%3z*HXI;3;AL`=m*`a3YkkqJGWMMtP z>+Le~P*$3J>JvILlVl%CO{a`m$WFKF9Ky(;wSc_vYUTyI=rvj{r~+G=3-1U@vAfl< zeY9rop)Yh-m4Zmvwv1oz?f#GTx85%A(U;uw1GLeoH8JY7(2ZX+80(?#q{_s(YEkGu zV$UU9`adpV0jdy({<@_AeX6Yk8CRZ_;lgB-^iWbOqQy1>;ifVs$&YeLde1&xX9Qzml)>ON5Z0OV|TX<)w zXovp7Kkydf%q=yLLjZ_e8~ov>fD%i@-%pMSJ$y}NsdsrxpMo)qsw+#wxOt?e(<&P# zZE|~2Av%gQYxn{mT^~|)jNcXnn>PVDfs{HeITw~~- zT%*5|#5J^bpLsQpUnsuU;{(-F0rw=itA*t>!PPz7|4x!iMRHr_Tq*}(@v|VKQ%)oN z?cQ;pXO~v%*(~8|5y3xV>8XX;^&A_uDRiUmD2MAR2UgamFBn*uXq8nSHiWZnc`L;2 z+#2J*bIfiymm9fmRWTXicfx}DR1Tdx)J6EMySnh?`0<$~kQa=o2aM>DQ2h-)-PM5rm=M7P zu(&&SiOQ2hjppxJ2##3*uW%{QM)Z#HEV(neQ5}QaG)?CMCFKq2sh6^gV5SMpalTgf zF=)&#*ihrUeEN%a^&7#WeG)p^hH);E7+pDDf@7{11QI&a3wxD<40bb>Phy!E7q1huHR> zIM%C1(jqWDZdcHP*Vd0u+G_McFjB-oPZJcLkG>?){l&KsQw$ zFE(bF9?iqKc7t90|_;LPsQYw z=z3)C77@T1c8XakeN~y=^SE~`Iv{aCBDNX9=*^c*I;?7brp7OdB*&p^&8ODFWgw=` z`_7A|_Ui86qIK29vTQG0w&o;?djnZ=z`%<)N9!zDu@J*0>#7S~8L7HoLBTj5q-xgN z4Hd4c)U0nSR`6<`#@PTY!s4CA!$0wEKfy6O`B{$BsW|5jcGRl!Owm;=E$9B$&ABmT zpC2iAym)G4?&}8ySzEi3nN|KdA7DPBT+$HVx6yJMdMrcQM+yJiKlkhRaE29&VO>IFVj|~G;dek zgTm3~>Vaief**rj(Z>h+%p=}6uk_nBD&1gtu0q4WV9y*)ot(Xr@GtGG@oFWBxc{lz zQ&{r$;d3HB%RE^rbbHN{qcc-3K4&%CN;d&kFA zmd*W+nwI{{kaNui`@!v93d_)&SwOzX&S>+vjg?Y)Wc;kklM`!I-QRNL?Gsre@Tp%2 zRKt{RgCNC2_1c)_^W;~b_17!c6cSpe!9Y>EG{__4`v(JS^apmN4J_4hU`NujccJyD zOV;mXjuO;TTi|O=QlJjW*otoQnPuiQV?wM)rw@GTIi3(~lg2|z;GsLuIG@YE?buC^ z|D>($3{}U-5tV{lMCM zflNVhTKa%PqZQw$(Z`jdCjq5hF(jQ?%~&st$!%E3jg&OJl^EXo{b>68labW_+?JEn zfBUYJ)WL-`aZE1NEqay+_;1CJur`o_HFka}XX#0ixm65dQLNNPUg^fOu?6zpgo;uzj!QjvEp4tChq;Z)0Ct<}!HNPruAnQda` zhm1bIz-Y5S2Kk<>U+q0&oqb=TX=3J3D(Akvse2R-&JXN#o#wTHa6Vn9{vp5Zv4(WXCM{RBRbVs@C^{Eux2~Fe?Y@VH`SEo44Exo zUa%h9FR~EURH>t3L0JWm1TZcntV35^EQdXu599s$1D^=3+3CI91jR4v##U!6p?R7) zLCw^bZzhC<)5N;hYGi&K)f=rfuFer6l%MSX7g`)u$U`Q9$DU@N&kY?ZRzF)#zQBH4 z^b54jH7iwxNT)hbu#@ktT$Wtv-F}MGB9G(fkmXgkpi9Ago-5ew{k#gV3U0A&_8MXW zq8q657sYq!DZIU=%V?a8ni8eqw%UTke$sg#exgqv4RLgy9`WcHhez)=9};ahOomFk z`+`pF^8MgEx)nKwHKeDox<+ZrqXoUmEx1#W&vRSLDu{~vE(0v}b8{69Gf z0enG;#swuRDySe)vdb08NCFd?APOk1q9TWg3K(WM#BD~D(> z0ZhOX@d8mnKzw6VL|p__=KuXxzc=#|V1N7Dzx(sEOWt(#SzTRSRb5@33|R|2gP+Uv z@~SQfft-jogU{9h=`|&-875b>`|``2S5;4Bw1(!8M6IQ$FJZ3`{C7p?$;fiiX|55X zzdv|^2-mkGJ0u=A({bInu8-dt-%g|wrJGA&6~N;&+_>-@-p@Y0av4&5Mn;Q8>TU*a zkJd&PA(149&)N28ZS>(};@ITpJo~dIx`|&vdFJXUi1ZVy8=0 zQ3t7 zDx{`acp|#8n$*EHawlB-6DV6w)UA$#IRONxzUhlqXNUOAg#-yb3VtP^RpSW-+M4M5 z0N6iI4^{Fya()nQ2hq(=dUnNW$vwfT9XcBtI8`+eTLmd8Rs?tnLCLJ<#P_cQ-u94ntxP4=P1dT_xt>}NsKQg1#^+{XS4D1aM;X?RHlU2? zenaTet|!o)Fqk}gcp&MTCI_>I)@KR4U#joG;om6FD3A5QTfhN`fn*CB_E?+er+Y$z zbx+__Q0S){L7}Pwo1QR5Rn{}}P|h&tNiPtKj0-^aOfz>4O1M`Ia!-}qmCP-7D6}Yz z^l?oEX~#1@vzy_!)vGgZP-L+tGxxd;?ploHBw*BZA!>?QKm^`>0^SgNmbMZMR*M*< z1+#GfJF>EFeE$xQmHW1u;c<8;ji%eWTWpG2lh3j4uC}@DIjkdIg>A?>3z+r|-D2ZW zDyHuZF{wrP!P0+0u^CvFWD^6Nl~<2U&#u4h@|lRrm_&f{g^yz+oC@nQ?pc^!GAQs zQ%eY1f~OCmiG>dg(`G)8$;OM$Amgs+uDxy&G(5%x4R?XsN&*h{u8Dq#p&>*(7is?i zmtG#5h2qv5ujHy_lyTAniHnI^lnWS_qTo@)J<}!H)T_qZuU{$Rf0((0-#D`Uy?3U2 ztPv~7QFs|G_Pn?t34-fYa(U?hoYdH)T8zWtDxc{Cf6e${C!`jw1kvLP4c2ciVAr`h zR9O{I0r7@Ox`0<7UyimbKuM9Q1yri7LZ!<7#MNglOB1P~-)@0u=> z+e+_~0VDmy&P>8e^H}{=!r8da?87v0m$9aw3Nv>AU(5yW?6IDk3ksefeqy-`*Ci-S zc80s>q_g`fV+0xPH5%)U{MN}YA4R^N@vRT@TCTq>4-dYF_+tsdujSv8f*;t-hpkCg z;1=A>D8Pg#w)G$cEx82jm(ePHAsG`aqVT9suh2phTaH5@MLoI!sdd@4@)sjO4;PcD zaI?QxKKNF!$p{1)%ZG}w3R7bA6mBRVY@g{1ck={Vb8boX?zzRr{ipS6 zZowH>q3lr^VH~p5=7(5YRbZGSYBh%qCN|@l^N3zcm^Yo%&=pDIuqw1 z>o0_^VT{Ns(@VsIYT7j=`g7}11$-6K@#fw7JZ~k{6d0Ylw<(UqC*s66kq_(<7bmRav6t4h zKPY9uR8osHE_iGNQI1L&K9YVD!}`KNrwkE)XuoE zDt*GzF&{ zB51%Qm;Zu1Xw%C@s)ZxyW%EDW`{lXr{qhykj_9B-@XOvWxyQxcIshh`*jnv*Xh>bm zDb(fKSwDGIQ5TLY^L$1*XlP>~twe9f!NZs-);Ju_L-5Ro6fdkphv$<>uNMO|Szl_&~3rEa=i} zFmWAGZ(^zMy9<-w1Dclg&Qi*fA&jhny>`a8d1NTGAtJ^;qtAV4B*jRxa335>en~SO7B-!^LwZHQC1r2pj4IM>3sCp6d!B-eyunR;`2I1rL zuf2i`nph$^MYqr@5(}7 z>t&sZtSJb?VUIqV3KJ^CQ6uA(*~t}{tF2sz70A`&T7lNEr`%^R#D7Ek{UDTp{zf-b zC^1IHFuPJ^ucy?H(Za;Roq%7k+*9!2XJYvY5Qgme0KkwvTmG0VtD7(L-#2kEO#}Ap z`@rzHE7}I^1!x@N%KgX#S|74JAxt6`sd0?;O*{5VECgBKM~G*C)cR&TA~e)jHFN~O z-wE*t77Lew?Hv$q0wIo#jhNy-c@pe2Vq=r7FJV@rjYZJpGbUl%r;op~C9nKJuC$9u zz#8=z8LSo=#kHZ^MwzH6WQJ|r=||(ve!dE*mEfqlu=UH1t?gm#Sjm2o89GKp43G9K z;_;7{uWbAsry4i{e~&|80sim^huBYkSN4+v4p2!W5ZrmdJ@@5w+&C55!wcBZr)}#; zW>=-6WC=>PD;4E3J5e1ih_q%+ZHDb;Rk}J*({XGz7MFpGp1$KAV6q00^bM25XPr0& zh+qu7-Z?Rzs46SCpja&Re?~RnIDuk%4Rk0AcW;9iC+xkPC%i5Lz2&IC7ohJXb`XHt zI}4^J4fLl&QtI;3Y!CHHvGGH^F_v?&VCT)61WB33S|j75NOFz$W-R>~>$zfGYaCpJ z;#=LHP~%%Kiky_F==F&l)^^qWOBiG9EHDqN@8jHlljo=I_|CO8$blye4tbyy22bWY zL`H8!2F>T8uQn?knqlAsJk_ltx96}U61&~|It%#lD#dDkAU7={$6*zdz;NLWFHt}l zgPF_fl6{!B|G^(|AAW3^);OdD(7Q&OrD16l`;Gcu@tg&}6-=Vy-z!?A`ND_twON-Cu08R-7B1$Oj+)cc zupe*0SzkQ(N$eb?Cf;A-^(o^z@bJl0sRG9<6popU;UsQ;byJCdl|(85#I@B8Ju9p2 zC8xFayF1V8K%_n5^&e3eE$_h!0g`>J2CL+S z8O|!%53@QFA>5LTjKOw|Y8w=}15K$u zLfXc~51b;E;gu%SBv1r&zg`U!t{l#N{0%5fHoEmPVGn{HX{Sto66b|VAWyPxzuCUq zTX*o;+>bER-WRxrzXn#mJeIikHKzDwEJd!Y|B^k0s~4^GRjqJ-8`@L0L$q*I$W@*Y zp1Lh7#+vKBVT8AF-*gOQ`m>4c{A=r<;lws%?>}}6-$Iq-IIgu@_=DtCyY{)N_9N)? zbXVucpXU<9GORv$+Ea{`4A4d1&XsKiCxCgLi_asc&z`pjo^j@_9X7qAZn>Pd-$=&) zwedcpYCmGU7c5Rp*02f<%rv7|i_mGTpsMaT=qD7`t*;&id%3?%?{)n#2l*W4R1s$h zj-rk^$dl|r{`b!3?fHEk>L{>zH2UoEBv{Z#m^)m;!@u?*As;pp-+=6jlPG9|SG3!L zEeNZ=Vz(AuD>)bN&;|Q4MFTJ_CDzJ`IfUFh1-6hvE{Oao%(}dcWOaE0*u#*O;dS?agdR48R+Vu1_@U?!A8V`ZiD0ZwWY zCr)t~^QK^~V$5W)F7d^xe!#7wsQb?LdlNIh%|~XhSOZYm#>vTD(sdr>;=m63z49xd z*2RA7IIRxfg|i7wOM956yiTmA9jYFU{p^@j?S=7*OLwTls+4~ChxnV=^!&w)1U=WY z2Uk4iTE7AB{+g^nZ^(ONmhym0EYB8@VaL5lcu>g_-Q}ktKI>>Yh$W2 zX_Rs@tiDh#3${_nZJ(Ig+bbZAp6bl)dB~9fT?dc~aA9Ped%H8$TY|@npvuWhZoymc zJL>siTV(Rv>)MNMKA zn1Tk{#@lnfQSd$?|+TmNZ*rg%9Nhaz=Ei4m8nTsD{WE-3%wu-iMI z;`(E^zsJUL%x+gt`{TQPtE%&eZl|!@oxu*pE941udw-PFnH4w<3+ZHZ*uC!RDr{(Q zprXbAd}Q}pp7>$W8u8;7>!-tqWog9&%@TI>)?+XtBjbnh&eGWwyiS%5SA~m7BDT5m z!7y`ui|Jj3ZA2X{S6OepkqWZ^E;zStKHIz#&9J$M{I%`%D@WVwwC--}viV2nx8i?2 z<6E}u)!(D$VPsrscT7paq*5RPGQ7#phBEKY?KY+2+7^kGw?n{m)iM@4g&j)^Wb55u z3uj4j&oT?YdlJ}$-cn`lO-hMJDm81Vql5hp^DBKv$@71RyeRt2eyogZRU1dhPd`4y zy|pIBcv|Rt7M1_p$|n?e#ZPkA8vIOf*L@gG!Fu7Yf&k&JKm2xB_C>09c(`dMWTe+<=B#{Z-*`Kll0NO_U%GnZ;h^dPtwN2XlXni;z zGhsECA-o||LoX+9O)35fU4$GvVLWoD-u zfx0i|q)Yv2_!K`~ZlrHH{%mWJo^&G}_Ye4=a^3G&re5>G#G1pITTd)L_VIl0$`raz zLYxpRggRsCP3~g?(K7i2g|Xc!GXTRgD}$ zKQBSZ0sXk_h5IoDrIC2KR*GwRGK*zh)@zaNNcNl0(N2eG*bS$%gfj-)ll@k9XbOBz zwa7x5&Ga@fB6IE@d5qlj5To_D#qq5J-T*k>rhB;?OB zyKPvGUX#^tGj?mggi*Z-5CdxM^82DeC%g3U`$?ij#WO3nQ6Y@hy zJ|KU7v4RJ%dbsNzZbK2V2B#{WQ3LOO^I{zy$MWmTJ0b-;OdI?O;*m+l>d1YqZM{qN zQ{T;|?@wem1}fKSrEo^@bUS4m3O3>*hIP|@=!U*7_7O6I zU%rA0KvCB2dzJFdt^My(DN1u7s_t>9o7J9+YGV(gsB&8j^i6h&u8SG4NaMeXl4Npd zVykf~HP`{T;Vg^@Ps|7Beh@jmD^gTej*>o z`NImuR||^axQA=n3dLm(ir>sjpxBLBaU>$TAx5x^b>rFIt10#RM?o_TY2lL_x$v7E zz@O3xuHKd6SwSgPZuEjPQB@w?g!|?LkqaK8AYo4)tsTH;!G26tU{5yav=&icNHz~( z?DlLQF|?0&MTL4&?V%0F&=9}ni~^76N4(SUqfa|;1O7Q@QkPPFmpdT`9&1MwC?+zF>z|9bg|rDr#f~cG8-R{|E)fD!y-6^jTM_t{VjjC3`jn=c@i_@J(@sw3` zhtQ+*kX~lUWnzv#(}%bRI1q!mtZ=ZZvF=V*ypR>(a+KAJ6~iR({FmUvMwHz^K|ErT zCmo;Ef#YLDk0Dw9Zi@#2tc6E0adpp2`}QsEIUrx24}fUGqUAbXp)wGR7`KDDeb_-`dne8$Dvy|~0 zf>e9ipke80_&8)@Td5sYutRkFWZh zG&B8pGd-lg*RHlW^j^o}*^_ZP_LeVvurUJBPS{e`4$ou>qRL@yApGFdO6mmK^o<)+wP46|3vh) zee8Kk_omZMQu-v~8RT~F8aQ!|L}zO{9WmAe>D{w~dx5;V672E*b~~`0wg|RU!T==# z>>lX$n}5R*T~RIf&tTJ7s2L9+i#g*AI1oP2Y{JiF+7oY#LpZh1P+tpM|A4<`NgLeq zUEe)B@DmzGds>u{S@5PtKBDnzQ3}Dam)VSw&!-_7Z+f<1WyPL62l%c(m>Op=&5k;X+t6`)wiDDYWG+;b3Ivhd@Y+Xe zf^dFBd_j3nk#w?L(FxonWgTLne`-BjIp1D5y3RW5hMRf7|S zs7FE z&dm}s@1J4bYsMjzQ`~W1=zTKX7wok^k(YFp2g6;GK4}mJb@%)u2lc}s*PwP?Bc6D? z%-SBKs*Qd|zKs8H%TTteRrnoy{A4CLdpa@)KG+}SwvZo8$Jx(`Y#RLAWBZ#}CM0U# z{n)=)8qd%Kbg4JI<0r4)JAmAbUvL0kZ;7?b;A=2!;*7U7WW1wYcxVR~UrN+QX^y^b zNeY~u%)-)BWvOquSBWiW!ApgBYoYFujXaOEL5YB3ZfI8uN}QldEWAx^B|o!LvaLta zdkQ;s^Xn$<7RB8QF|$kl66KxrX+o%r^I97+D+aJq{ZP1>NA8z*MZ2 z;P$S26mH*CK8k_scuDg2XtqaR8`&JdgVS;AgW007ClH}tfoP8o$ZiSWkCe9({W_7! zDhh@?1#x{efsGj5_TX>~yY9BYRd{+a#}l|*ypFLakFM8|!2pPiDI)Y=~NvdGMImiTd zn=DA`7(cP; z%5UD5>F>5&^>PCe$y;0XJD=pm-8nJh3Fy{hR!2ps5@hZYcXBZAGT@&Qr11NhGT^^J z+(DFyZ>)jg#DEhEVW0U_ok)6tWB|mcSAErAW`NC-@0x8fme@C$>}O{m;$njMcxMV)&*oRK zS9q+l%HP31U?hhb_&q=*x&%*|PM`>5juV-)O_N5R{XNr*!2?-gu!+$md@!}5EWS~1 z;x~pO2n0iEg}**vWgp4}r(Bl|7vY1ix9z0l*N0+*ovg&toz`H}seNtD+xdH(oD!z_$%-l`&Lug1ZS5dMld`sQ8PQR$ro7#rKz3+yJR8Al zk?2ob&VJH@M~`*uVy6UEJDyqLO|*8OlLcK12wxGVhaaNGu0?fLK04ON40K3w$b^AU zKeZYox$Xwp%}6!a*@zM?at`=-tN{O%g?~#Aw8g(^T67_lz)=la_W*hTHYyPVgy>n5MX)SfM~|#0wtQ z2;i;icy^$Jx(iR&yY{MF@Z$vf>T(jFb|qK^Rd=cZAD*cO+!@V0%QV#4QtHf2*11(> z3ht~!JiaKK4sS>Wh4Kq^-EPze7RtIx6O z8hn(x$Q@)Bl)et%SuST>o57k(DC*DR2PWt69EF5jRgV^#k91-no3pG%qs)dVm0fm> zKT%uJ2X6BDfsD|>#z8owzvb_;YXSnHR<&5I6b+DswgNYP4nnJePvx8AzQ^r`6+XnX zsR|v;4*VQCNKIyA(1(Irq#Kxtc1Jn6n<8F>zKKI8$?A@Fi^yqI3s#KrEU^;_Cjonm zvSiH1#CE$N`$#&TwioV$pl5hHoE)VoRuB%uVY~rL*>8O?CD#-C7{gh`&N>`LY1n+n z0SZ}@MAtWr`(El6rBua?)gm|1G6>9nG~NVr2tn*Il;1D(lCDK=AZGcFwk=1{ z+qzgauJ$-zPTfHD2(J=h?0jS`dC7c!h+uU$^bAe82o~KyAEVVpjJ!$F&knS?hVZOqlbPxNvO%K$Q{ap?s z_ypBWPQqt=4HvE2F-JwBfYRrnOY!ShxFizROsj{LeyE5O5%&e-8q>4K9 z8mraAhp^u-SE3?pRcfs%IRK$NS`l@9LHM`jCIrU{Ca&(9fANrUHx12)cy-*FzSTnl zH;oyMH2%!@t@Z{3Bga(SbUS|{!02MuU#$EKexi4=|;vaVR{(m|G|HVkM-?oO`1En`gTOS1thpnn+DbP}TG3#K%BqI)lt-jT`2aDHIVxL_ z`Np-%P}e79>(wIY>FbD7Eh>S_5feu}pL#k=s##{3YEnl#n>xVyauU?>Cs``~;iGR1 zjO@yt$X+Ue;iCiXWvRGmg&}u97yp8S|8v?!pmHI)dbIm37>k>BdsMj44I2T6H30=} z0g-bAAxR70j5L>wnAqtY4a?C!$iGj+HbVk&mV~m{oqxRQj=#ReE|1B!#L7s&&)=5l zP{K^p3QTe*ltNvctYB;c`3ZI5WfXK#gBD(bgrksxLQK9EeUiLF&AlMzKD%XX zCcJ@%HH zhEk#<6i=)Vz#Hpb^M{P(Pqi5(R~V#f9}n>oWNPN#I8}HEY+-a7?D`O$dK8=_e}XNJ zVMbaK_bBYQ0&F zAUB2=^V|h@664msa^8;AB2R&O@mpOS>fRH?Z{|KaMcj599#fs#gNHb~aotq32CgV% z5!5y~rP{p*8bhs&3TWmh`3FDg5F+lz)yTq2s^V@OK{#F98E1{?u`ER8k}C$jz?l*{ zLdP4f9-|D`92ZE_`o;b9O9uT??LozX)VOoV6X?W;O|bi%mkeKay@W42GIrSjt1Ep9 zaol5{GX?&H=2^R(GodA(EWw-Y3}6eAG$DqZF*WWP!25Uib4d6PR?8bCa>OgVy8?}c zo(R@cH{yjOVCEEnVX{1IRW5>an8qZGI&MAkP&%*F8W{`AlygPQt}N;u^A$tl@pup1wB5&!!S@$iVRU zUuH$#Y8cWvDYQ?VgO$z&)>vgyB)i?3bcx(bem3?ErpqZD-4<+Q`_DO&9`0@Pm=gY7 z(s6dVF)FtMtN!5J+rE9gqF?Y3!LK}#5x6k)TE?XqMs~0b4ZZRAaPUTO;7;tOY|SYJANx-m<|NxgJw{Iw?p_Mr@zyz45?mUtp7 z(qKuXhen=Q5$nc%S9e_Uh<=_*tY`u!40?OO>*G7WIXR`KX9}q5kiQ+Cs9GR&32NvH zYOtn`#6AsPcP=FK6g<>C?(}4B@DGNkLnBm_-o0_Kaaot`<>vI1in`ULBhVAp|6AkX z1v2AiMX1|JUSK&kY$IXAZPCC>0cl9tt2$r>0-HpoQQyzRVqFhwk zihkFJcjC~!Xe9k0_gg37cpen(eGScuC>I@wR${yH%V~<2Xmd~&P2HrLdMk*g%I&5g zhJgQ}DR9lY6X!%pFnrVj@rvdMvEqjW4tT|rjwaOECK>$8LvlfcKa|W~-Wj#m1)TP7 zcG_d0?vV;I(@*cmFus=~Q+I#qH7k0~lMvC-TWc_|m9qVmjVr z0o{&4F`M#afypk9Wikk`t6eb4xz;1tS^?`0n9l_xcC48SmJis4E*KZBH9}xov6V0g%WY!was6FZeC^K3U(^&*wJ-X<`uqKg1U4iqO}(hZCW12WaD@7*Ekv zyu`|DWJieJ#0L4!=1&LUkTL7zoHO&~XM)a{Z zTQfb@qpxA(kdu4z37?)N-y?k5=;{&LxC2=~Y150d;C7#PKI&71r+aaOqL@c2+`wvz zA-1R`3Kwe3-o`-F(4@TcgPEa8CwoA7&Yr+$qKJ_}rR{XVsRU2kno)WxIOF93E7 z_r~y?Sir&&C^mfd*6Ge_sX{#FfYd~47(uDT^A(_#y(-8CdrBk4<+F|myJ!@4CF)Z+ESE_$J(%(oB|I1 zE>#5*I9~ZFx+^Z6_Iz;8&T(hLn6}p?rj(5~0T^9n9e86aC$>8|;{<;@*)`+AoY-Rw z&5)ezcLZ#g#>!fbS@y1haY&RUm5-fRjC@q#?UPF!QO0iC<#e|Gxs0ppV_3>Q#B)dq zBlwynu@q%i*m2HEPsy94HxnIw6@~*hX|`^VrxYu}Il*^u`s?lWS3vOV#DLk%XAQvG zCob@QtFi(32d*_tVQzO!VX7dfUcdKSMuQS3OD3w}3AEVGO@d`2bCA0T@DVs#y%)MO zfh*|$GrB$QBB=KOiX>*^u=VAn`j{C4%&6zg5}Ec`uO&0ZhJSpN3=g?7Xvp9qrce?@ zr@Yw5pj7puZlZzx*44>Ou~ZTxu-m9JusinyS7pmZbOimLC)w3chlGF)E18)X%}iEG zh7$Xyd(!t?Ur($*^4&3ZjC17b*xCk}K8G;NgGDC~SJNYs$ITmKe?w2aYs5&FTrT4q z)K%*cD!nq2tMAfeHbK~Ubo*6TRc!LyWF8rsPL}QJI`cG2=8<~3V0^FQewMrIyC&4f z!C#TbTHhbc)!~f$t=Cna#71g77?$GP9`iVr5QUh#MTeh5l};3IhR+UouzV#di$&n({blz26vORvXExK)to5mn4> zEhtg(ZTUo=yZ%I8_kCmD5ABC%F(vY?3O;8R{cWam#Ar5~`6bR5jmDwZvJL>Vo}kxf z^w09AeBqI$8*WFK_BJ(=;^_6!HSB#FdY|!R~PHA*YYuF~^>H5qJl@60@;c85zb<35xI5VfF-3gV2iY7ciA03Pm z8#NiD@B=~qGR`gF2}B;u^D$nLLD`3gLKoRaFLCRst=MpsV`j!npL3wBd@w85P`M0~ z^?!)28yT%orRhu2o1K6UCRZZ4HY0^C;R}t`bd<)_W*2*oiDomeRE&7w^Ru{U)_976 zhq#qZs}`0uyu{6-!f7_f%Zw9!x<3cqC^~q7%+ccmVJJWpz|GcyvshxCIzr)saxHye zXWwVe03ODfzt#5&41iMx;yKC482X&u`M=@=osW<-t@x!t;Wk{L4=jb{4|m?RcBRYk z|3&!!Jp4a|EAV5%7VzhK^{1cu!x$1sWPCH|k^EDFr8}yhD4PY^$|zn~kDuuQLoD)C zflHnWFf5n@w=15A6P#u#OBww&E7p#6z)cbg_I8S9m(2xvAlNx;#BU6IJA&MC;KVuN z=}1%mEQc9t3dX=VFj}NSEv79))ZD83PgPdoH0W7x@jSxJcz>INpDBZZpAG}ns{R&p zx4-m5)X_oJv72=y;`;nF6*aT~1pYEuV{0maQR~|QV&Vzn-qtT`&SlD{Dg_sjfO5QZ zNrE770)drwc03$pXMe^{!ONWXYljc0lt6m8bW)KO9|zrI4E#{pU#%?MQzOn)_>~v?@ zr$oP?_C3I&Xl*Lx#ic4C2mu2LJMPb-CE` zGvpJ+?1Hm>#?&fn@J4VQ-2c8k$*69S>22%_zm|19rVE_v1M1gKD3fkyf~x$ew8RL4 z(d`#Tx5ice!L1D#-5aO`6M^L^^o^QSe4KI888I7?a=UDSe>M!XV`1j_={h-XEWt3U ztd03-@l#e}7OuKJ!E-M7D4S@r9^8=WiFHI5Yctj@O>mIFc{T^(%8lI&F!PRP-n)=u zzn~g>453b}&R7CCa-CS<8@i#a%X?GXmB7&6-k-~W7=cb$&js6J?NEaRp2LfGxvQ_m zR&yGP;(Jb_s}lOP6*^nj(Ym`V*JI>abNHvT)$VeNg}INZtiT%x%d2lGlM>&w<{58n zG^`p875#Zef@E-)Uv3wI4_r(dVYagnIEl|r z-&8N#COcas}3%*o$^1LMcj0AiG;Bq`L8RuvDps@WIahbQMK4ZS%`?yVWWL91MA}fu1dGcLGzTAV zW(|n^hWnr@87mG!LyJDbtgdN_Y;{fX>qY*e;%=S%HEz`)z*n#r{!I;z$G_=XbSsts zzTg#$uvq+ppU-zVH^W!479ESjV@Lto>_zxMQoa^#4Ot}C1OHeDru_!WDXc&XvNHlD zXHJ)-n_Nj3%=j&C{T@O$(Q06hwHBqk;n!p!9z2VIhi8zxt`R=oa24C8D*winWT6u4 zAN*&U0%ifPvZYyrACh*{kbo&_?4+Yd_o}RiQ4b&|x*!jrCNz4BDs#IFGF?ILRgk~C zAj1`8lY(q@LHa1j*;v?Urv!hbXXrtJf?Ta2qg{}b6eOr1Q5WQQg~u8NdDjKmr69j5 z$Z_DRPCFX`vF76+AR0Fb&c-fh4V)@t%yhC@ogS2gPX|jkci@jxe3Z&+sfvGgH91x_ zc{(b=(Aqh5VQ5z~_zx$W)#Cw4cu^IvyCzvYsIoqyAdfmFFto|4$p-{- z%KZ)mrbhs;Rls{xvH1=VkP-!{LK4K@8V3S5KLF2Gz@Z4%g8?pgfPgepkVKMd<`*?3 zPa-4ozu?OMxq>{SAg{R~>lEZe1$o~ES*jpkD9AP!}AAU63LL*`Xj` zxFBaJ$bJR+*#&8=Anl;gnyjc9#fF7 z6l9MJGD|_4Q=v6;HT-eP+^Qf?I!TJ2uT-gztNe=`An3VBK|WBB4_%Nm6y&!DDQxCu zK-qQLXsjUTI!UUHpKh12$2G}+jsrv+TNR`bNvNrp3-Y>x^i&X^3$j>21}Ml0S0`IH z6r_)Wl)K8@rXY7HNYn+nQbCx69^CJO6e-Bl3i6B#a)yFzRuKM4j9)?CQjm9CkiC-x z2NORM9MC}El=(*8XpBD&AJ4uQL_D+=X?@~4Gc7ULP zj}+vvlce&$u2R!R3RZIP$7y-7f@CO2t_xx)$O#J4+y%K!LGl&k3>V}|1!?<~aJu#` zNRfh+sWN^SrkiuuPGfKNewQIO1= zl8_Dx@+TyLYEX zM#-iFwV@68MdGhJ#hAx$#>O8+oza-hjPbR)B=fG!k>-2*Ju%qp!{0)M{?(^XwLnbU zZ%X0<(&?}bFv<>vQFg$F1L4)GBaOqWrRCrmJ`({n2cicsbXdQy1YXRdM_d)KB%DT! z^bIy1gD1pivuv=5uQtR!@;`JAj}hS@z^zT&=P$|gfbh2?*XrWTD|1bkh^;HPu`N!=8i{QQslXK+|Y&^tC!nnl8G`I?elO^&PnOE7!8a>-sY&}`piqd6x#;{qL(P)M* zopgk7k(j?PZahk*vsr2EI%G=XU>;oqhr5c0rZ>hyxdNHWj2>|<(8K7R9zKvAY`(vD zb6`O(k>O+ssb}WE#1uXNGeTSBwt9|e2G5pymD4}intV4*?Hp?v0-<`1OW`k9I!`aZ z-*wAj>LyR{6072YBXKCRXrpm>#Z5zQx#{-dK;tPyYH;*8Bq^kxNu(m4>?RwjUyL}) z_yws7qZ^1(!KL3Uoo8e9#lI`8Hd9y)Afn9vx+72-oxH))kj${C#>9M{+%>n>)HQJutP9BU z!s|!63{kfI4k2puuy7OSe?EOe!`~h2!HwSaf9n(4Hh|ar?FE10LC^v$7#so4>D8FN zv9s_?&MD<;%M^Kz43@2?e7bSQ!8o8({_;BUVy$`{J+CcREVvc`6vSC%cv6-pknS_e zaP7Vt?twVXk{rdyafGU8;atkg`~5g($6CzzHmGx*aUHPVI=HVcf*Kz{&uwm8|&I(GL`)l zSI9Qx___o(=|g0*FlYb$KrsLw$i30t@m6+lHJ(eRx$< z?3&}SM-5(=uwMda1||SunYINw`HgPyPPWEkqF{|i*9I{8QlF7l)}?l8N8BF!6#@xJB;R%B!}%cXgpTw;^oII9$ob$9tt3ts^L|1$lcgp#@zEQ-P1FV~{m zQO3*Q?p?L0hAiGWC2dmEH+65U&GN8>S<)uW!H2dYCv>QzHuLM_&<>)n9O_!}ZRk)p zH~}+3&y>2~l<#-FbNp>mO|Mk65=rGcZn1og;1g*D2sDf)DYfG z-Gk1Gu{!+xH+atE=(5k=J{s)%Cf;LUgstY=LdQJ<(+aot)>rOQmU`Fx;~1qC;AS*F?>n6 zz7M^Dqdv@5IR0s{Cgsf+qlb@guHqu0Pj7^tA0WJ_(FD)?Ou!(`L0$?N?|sPi7k0 z!FE3b*y#>J$h4DeLih!ScSQ&`0qj9SJp%ZM2{r+2l<#^3umVZa*MFM;BGQ5oK)5n?&}ps+Pk5-3D$ zsZ4l}0PJAUqlymGqTD^5Y54}H1m$L+O{$uk^R-!D0+rp*(`GTkP4{!P=mz8t z)4F#+um((CBAn{c71X&Wp` z2?1O2Rhj-tS-b5F{2G211^jwuU2Ak~sus;)17_~|u$tl!2y006)$4FHgwrsK$0jz* z_>A8SE1L>Q^4pY%C)7R9qv>xTS-On_Wq_w45N=JVduz|cAJIP$*kZtadig4!zF;Kf ze@M0*sW&t&4da+aXn5)>PheiTIXd0!w<&Z8_&}IK^l=Yj)}--TM)@MRTe7sa0wPX} zhkWKWmw}yRBD)W*k)6bDmIV{PNt<~gJ8F0OYVQV|^yWB(#_2%YHq$cL3l0Ps`%+F*k`T~9_uPb1o zy%zlnNH5oSmW9`*c_lo0YzI=f0HesMIH*Gm)7dv{}58g&3OXVE8M15``(4U4NUD(7~?SEIP1+4tCJ)=p`TL zYY|dTnZ6#-ip{YX@uT|%T6ih`5~XBf3-O&;fesVHGIEySRF(mzPUZqkEGeuxK4!(G z)r8Y^C31xhAzPtj^S4P0Rc}H#F>O{6AY~>JV(nO2TtBmD$?qbFE2 z=`!El0^MS9>^B^5nKtuhd`dd9TK0EpFD?2RzE!bQRZNR+lq7OxvJ}{3Zd+wLP4Sd_ z%Z17#1J49wg%w`rhP`IPZdI@#VIW{M@Qbxb!J@np>|2FI{P#mV=0{d`@q8_O89s%N ztKIuz{KRNdg;)^Jx|=rZE}0h)%~@;!M1y(R6sXUsa+^d?L5Pf@Q)Pk765EV?%`fF1BnO@iGLdmV*{o#bP&V14lrjJq`*jD zB%lEw-r0>;0r@~2PRzeL&=kQ;o2SK22UvA%b{l*~5GJJ+tLT=hnJ2KQ5m<{SA`l%j z1HZg;dSy{|KbV2eA$Z(h@D~b4Xd>=9MHk^mY&-s`$BBIUL4UiL&+HG6i8r+{uQ_6o zoJxv1H64rcGZf%=2A23h%&bq3P9*y?3%`cdo_DxEFMtTxWs4TALskeB`Em*H-lwQ3 ztxtyCEYs85l+~8B0nwrf{hBrsqZ8_8C0&;g&5E}P&h0=~g5k?>t9L9?y)`ARa5WIB zl}JN_D89l{3RV}M+zPS>d9vTQbs6Lt1_@IwpZu>|HU{E-^#M-nxVngTtbw?C3F8G= zwe|Pkn*c*3g$3)V^36eYv5U}9xt!^y5_WnS@U=upOl%;HeZ(z>SR6|eKxZTPiO{}K7< z!IWxF<8GZjF1u=Hda>sd{ZQRm=CntVlsT@6B>fm#yR`0jbK2`j%b0MXleTd-f-Pa6 zz}oV6*{98Asv$x6`%AHC!17u$JgXa@k@aZu$Wt4EUG^>mkq@-+@E zItG3=FCovHa0b;XxIQ)2wH3JX?7sxu{R(8NF>jZiR_w0JkSt|u&?Ntxeu>%QLSL8n zwORR)_~nxHbo6>FdJWB|EdC}ojS9q}UyJRgW8g;^?)nT zbLdU+TC*=kmW_^I0$oPm7n+jC#gt9zn39))ZDcyy!%*`w%XIig{hFdhdXbCquI3H= zFf;CcjE+y9SP_1zc3x3~k5BifRCBe?@Ne_T`AtoM;1$_x1uMlW`|AMstncs6s>ij)STS-VHT;9jQ;vg})6r!kgNiV`Y%J_gv-n-0N}$Joj#tJEbLg z>2e8>948}o8yc=D#(J+UhFQVx*+s}m+KS4`nw$dE&1bJc$7Omeg!mh{#HT|q-(QT# zxAUv3zsw46%+xQ*vQ>(`s7Iz4+r%z>3#)}T$K?ukyot@IU8RouO=JQ?-}3&h&zO`? zGs9_Irhf)c0G^<78+nNBYVTzSrpH3aS+LF86Lpp`_yka;Y#CR;mf_3N`@xKWQQ^Nb zYCOHNNCniFj|Z`V{~_An7gnd?8acJs=nK#7Mqd3=djPf>?%cSi?(CP;2K6#(!gKb{ zhB{r%5qPgn;!vm8WGHo7!h1Xb!MH@idu%`+mw5@wY+gngxZ0;blK~$@sA`bir+=gS zr%XG$Y&7zBvBo_U>O3|06fnik$(C7nKPD{`<{ikisNz0ULDm2&x#}@;{#I>bVWg=( z&!)_a2<;I%tNOa7Xy%Q~Z`4E zExliAUr{={duE`hI~=j@Cb1jAkWXK(?EHg4VB4(=e-#n{oU>;r7|h+~z(y%tDF})*hQOrfh-GEbP%qtbC^*Ecv4lXa;=|&`45aw;+PTpM)@ilW0$J8Q=!5stQCP?Fli4fA%M7RBca5b}WU)xw7ek)0ybB_6k{kB<%3&luxgaFWu zBLr*(moFtnw1i{;o_EEn`5?Nz;?5t3c-W}Hev;(Ju}4r;Df+l=ljwkAlUjHlcnesi z!?SMVZc>APXlX05%ImG;Tc1s?W3Jcl!C2JE5^%B1n)!HR@L^1I(K5SS7EQQjZlRPr zUd|`uax>>^xi`@zq#%Kw)9=sThgR>alN0u}iwNX;3IGAA2B^Sp83zI3H(7oR7|cBUBgumE$0z9O8a?Rq~-LB6eBaqaM2|g`uSAdB0!| zO;XZ8*PC^G2IJM=cKD!;H*-1b#>&XU9~>Q3y^hYQ7YPxI!x}RWDCI4w=4C@WL39}K zTF`Aw-)UFcqZsauj6Q;sMMW>Jpnozt}ie^1V< z-&nK=_4~|9R$_G+4+=KnCx0eB7$i`j-sRv3rHjzgMD||Kf1x7|i+3+B@gVv9115Bs`^UN#N~HSS{0Lr{{IEE;9N$D%dMz@>7)U6g&AxG;y5*6ec!+Xk5amc-Wr&Q2*f$KwOci!yYupa2 zDLFL{3gcg>e2~a(`D6&CUTFHTu?QcFc7|yrb~WzdaxOk+f7R@9rj9)qZT^k95QPay zB+eVzI6n%qv)HDC>|b%8y9|$8|H4yzAp0P0F=(^XRJVlC&J`lVDUo*9w~QLc83=n) zOC#R}CKqg@b>ePdLYJ4y$Bdz`zS``!*XV+fKpbcy-MaDcM9Es9gu%{d2%T$lN1-R>`mR`i2)ovoCxO43m3bVGRzdbqRMp$w zC-AO0*^zT^=1bIbjHbR?0FG=knT@yEOr{DSvBMS_V(z{^ZpO93mkONqf;H8LXHCKyIf6u!AJ9}=bu(5C=F(_6Y!*lN#AO_OxGO16=xUM~M^h03a zWY(L>ta&q~=-yuSHq|`4V0)hbClY@PX)~0$&*U# zwAN5yr~C;>`REci=BD(9^77T^Lgucc8gAYivb7CL5@d3Q926wH2y{7wR28R;u(4A8`VmsrEj?U=O`UFAVL(oSA`=a;I&(6J-k*uk=)d5r9+!38b)XuJyPZ?+7vq- zYl+D3BXta0)Q-;lKN2lP!{D-{h5>ql82QRQ;N>`%51fo-%o4;!w|>EsV#F`x#NKr- z^@~q|5MV7d@jn>nLRf^M{mVY#s|8LtA^#7`3;Z z&3%T*qYdnFewev)d%4+2Vb4@VEn^2@*%$<)QS1r^1F0u#4ukC?dEYe+C9o`?^wwLJ z?H1X~60U>r0`wb?ll6)~nZ7|O2hO(e(#`g^uoNFL1KYBFju&eQgxKs1BUuKg%eJ<} zFWl`gsMqFKkX`4wSVw}jo%My{9bZ8iP}~)R#=0uK9|FiSum|4A?vA+TFCl}pVHD?t zp>#1t+ma-6w`J0!4sL#^0MV8RL!c+Z5@82Vqut^d zT8Up*VF!KAX#=jW{%BR^CZZ2=+zd1puANB#E?DFq|4O)Mpf7EHebD&`1vzr+IL|qZ z;5-}whitmATEuLgJ4r^E061EDfLiTjY)3qN35FP*?$0>t!PYo_0xmsw$&-t^konn< z;vBpT4uMHMuiG3jY}A3lFhDk{yON)m8$HvPGz#?LqmBL1D@27~f~#f^@snpk3_q!A z&tvV|AY+gzU!;<)U-7%l@V7yTU|JGl-H=|e&AY#(4Q!~H{AY*&JQ$lgjYF=+n;OP&h$Ko>A@NoB3ExDs9r0N%Ha9dvtt;9 zfB330qiGvhCiBaTbSU~0^OZx$W*7nfK88M*Di!X@6xy)kqgI4885pvDeHsL?MG%m{ zy3_iYd4R0|3{D^afiN%+yy5>y7&xNq0r=_wahP)MkxA*)k^Y8lQ5>8vl@hzr&RphZ zQKxS8_M2B8IEom!5E%K72xpwJ4zSfPB#465vP|VpgYvoUcIgfxF>Xtu|;tx01t7!!Ra z7m0Gev{oWZYy$Vf|4>ZbKmHG$h+}*5g7Ta#(^*t=p2VV}FLixU_3yy4+xYz;vF>@+F~3n99fiaArq@i`3`rj}9Ygiao$*1OM3oVO&%`;btJG6^sPF+Frk*T1-+6+@s&~A&&U8I(Vw$ z%rb|5*i}9r{2JNxrq#3bep$b)b-cxEi<@Goz=+9-G#1F2BRmxJe%QK87h&dMjPZ37 z%c&L~hqE?V?BNrH4;Ve|MXv(y#Rf9b%>74Kwf<9O1Qdx|$&?Q)m0yy>E7P}ZKI2QCW>%<7fh;6X~ zB*4}uLrs;Trs$U?hw7>IGOiXnBg0CJDH}l(U8fLrU)CF$nAKt*OX3E5xG{;zV&=Zt z#XZow{)~Z=v;9sD0Ueb?_UJPot6y;ht9Vqtr!I>%g9-rD&cW+lSXZ&0GL(c}xl!y1 z#Iti5Hyg!HRdr$#6Du)xjj(}wMCVX*bRkr@*zrK2bG1zVhNqvG8tlniW{F!&{cwlD z$9EN`_X|xQlo{+)Zk!FDqD?sA2$a%Nm}ebo$^am5lyxgn6-qO zQg9RQqFAr3RN>!wehRsQl>}e)8|R%#4+S_O6o)3a%|yif{NVI5qqR>Tj2tjn-YL+@ zIVr*Z@B{;||Js^a$rq}$=p6uQYxs)s*VY%AxgLET6q{fh>-jW^?NW}ef#Ob2P6WK% zKs9NFn2Vu!Sva$g3;6qT9-r!A6y75#ev1=^W;9kY8ZrZ&99*Hw|L@y0iyHyW_-Jd)fgE) zzS8jr@Fn&_oy0>OQ5JkJZ?OI%1w)xr$-Q-6}QXc^ORkwTY)A#eD%)F})iT|B2x z+hy?8zyrpYBgbs1&bG5@Z8JW9VuHsGg|+I3FE_)&R~mxO&$A_;aRo>bZ$+BoN=Cz& zGU!M-;SuY?UA**iXd1NdMr+9f@bTjS8+ks$oO`bLTR_sEx|#)8S59J z7Uvr4I-vleUF*E3Fi&8Yf&voouP+M$i{v3$Br~VnVAF!C*yE5wtN|$? zzVNzylqXtIh?qwnLGj^>T*spy?EcwNJl z`H7l$whU)f?@M!ZVznOCA8tVV3OYQ0aMx3U<( z(so~!clmuh?tOh%HyD>x&S>Q`dt$S|oe>>Z@xHOX%Ru)QEu&Y9*`;649==Dfu8!r*F8_*u^JbUtHu~b< zU9)f9slQqMP0s9rUn05MN(=AkQLs6D;4j*JYiF15sNR_wezP-9XUxKq55pXq^{fbs z!5y|SeY^D#66W+w^Ultk(=*jOyI0Db|Hs;!fJa$fkN-1dAz^#NDsGr4RZz5y0ZRmw zF*7hD8O0(>tEp%T)hbnCMrbh*oka5HWi)NEr7kU6+tSwBv{l3nvp^CSApvD|0qgRP zV--+YM9BYh?tNzg?f3tEe!m~jL*9As_TGE$x#ygF?m6d{x_NY~BWYq*U1@h7*>$D4 zJaXzvb9hiNn@9J$(w;o>>Pma?$geBS=h36CG>=Emx>AEjue#DcJbKra_U6&2uCx~q zqpq|+kAk|=emwftmGfL&y7Hp8kWd?RZ-9sdl-7N}B&KByEbY3z4rNZfD(ma{K=);wE3w#O;%nintl?B(bC; zay!ILkRZcOErYy;I5AAT=D<}zdPakgCovOB&N{9@EQ$C4p;to59eVe!{f{T9`|~8d z>rKA>!>E4gM!Qo|E1t^DOmWwDA*tcM`jk>AfH~(7dIw9y;DBjILo+nP_uiMmq%kapV{c? zm}M+%Dr)z68hz$FO>H?+pe4(F)ZOBkZiwa__+SHw82@~6%6TKC)T<7OL>i9P!r^*sTC&+|@E8-Hk{!6#o* z0-5_u^AH7nv8AV|l8r;mHqYjwL!Qmnv}aAVXYsnXdfi8T=61?8wbHYtXQ`fj=4tU2 zZS}OM3_!QaXO=JVxp%sE`eKh6x@!Wr?VdwL{I^0co3R@O9PRGIdg5Z$-PK2%hnU-a zYLfVCg&Iv|fa2cdjKb#(!^@QUh;+KGsMWL03atTTSP2A7B>{Qe2MDXk+%+}Q#h2B* znXNw0+rFZM{Dp@%Lq&vVr0+0ev%f9dlaC_2EO&KCC$h`z{t?he=~s1aMz zO%0Itt-lGzSktO}o{ubb@C%A~I*0@IWzl-imz|AXc)Zx)*2tNH*S*cBnwS`?zF3;@ zSq}>;`OIBD&lbzS#OK-L=@8^z?>XQrTHo2|Ip8OPCpf~5hvpi@Pxp3j>}3Z-niyX@ z_+8W}NdCBN0R5h~e8qp0`S5z)@^-HExj*rls*mng^Dsyldv>G-P9v2YeV%p?v$n-& zO{=B{#mZ>LN57lhoy2i8Rqv3I_6hp74T&wydm^#(C$bnCJ^QTkTCZofulR8hRsEiS zdpleFV2P?F&*LgZUO@8wOUvXrKuUHALe$U(9&Q_oMpwE0xI^y1>@CX!(J?l{eZ1Q>5c?f#R zvU*&A>1TlzzamrU_k8N@Z1cIl^qH?nM-V9mlYFu2zEV?A2Xyo72jP}jkI$!s*Yl>Y zcxIK~^SZZljo-c3XU<&Wb+7ZOuIiPSugAFG>){41I{Q``m++~N$!rRS`8{8#*|eEW z>5$LeZg#5gE_Lg%HV*NdO0lDeV5I)Ekb`ZWZJy&^^G$j#OU17S zUG4XLtOmV@g(oxZb?@_;n`Ak+4Pg!Bs!t#HdA9jHo8Yl(jj*^jqfC>)D|2aaTzEZd9M3CFVBjv+7j?X8BSt zb55gtoi1393#5IX-Ng#Ue4c-^_TORcOSjyIRKH`-UZ%f2dl|qJ`ql=>1jx*guXy$n zuV*b2<=L#3jNc7WnO)^|ADQSZ9o64===x(`a~)H~ggGl08eaU0np#g+XPei3n1G<> zD{AiD?V3yjvF`foaJtBHaK~#h-`JvbTK;NJTd_K8^1Rd82K_&3zM|&dz22vo2Gezl zt}LH_N;AJLkQq-iRK8YyUS`+l`IP$L{xMVelDa!J$%0(>kou@JHPl!m>6N^vxJIvJ zFikj_2mBT`>TY#!iY>iZD(bl^f0`xfgCNVm)e7=MbBnb<7N>;Z8m!I_L1$$NhBI4g zWwC4;yh24fd`0`rZNB`2zM@T5B>?}*SNsQ!bAoJOn#_NGtD+%(_a1O=V(cl`n=haK z5L4zg+r32{W_!Lg{7Xzb>MEH#0;OY)>W9OJ!6 zEasm4_M#3N6QEVDvYyk+Uhtuc|Fs~5U+6H{;cnHm4PG`I$KTEN!8~L<}=5=-`(VoRjXkM5$h;AYORDy0L z3JME}RgclVD6iL)qG*%P+?>DJhs;!5&g3Xs;rDC>@A3~R>VlA%CK-_V*i(b_M8TC? zK{>O{m%q7ab3RLO_EPw_TA`jdpwq$*G@bUl?J`q!k9F)bKS;?hxzd!v8W8UT078HG zYta?6e3=#oyq>M}4PK?eEyNe5T3!WMM2L+o>7)CzMo;q|^SCengQ8Yx$K1+1JqAG% z%I))fR;-v8LQQ9j*S*tJ^i9Ak6d3TThRkWpnQyf$4x5|ukNb)~I7u4#sI!^I!BT}M z9bWSd_dZZXuP7yh$Qsy`ze!JV?NADXgc$m zMi&92mUz^%6e_P_Dy(61(RN@$8-UbA&K5HB2U)T3m14zGe4ec`FFQ=dZqlq#pz^YV zDG;l6zq#3)zu8-~-A`vsp(CrnJE1YG^nFtZr~6&uurf0-O-VJq7dOZh4IP%yE zZT;^3j1VcK>5AC1eWa?lY3&d*#D3NmLA^t74Lmy$xP6|Tom_A&9dU0)To%C|5m0}R z??ViPM|QFuQlg1$3pzA)bqF;~4lz8~SaOk1IFjlHq;u)r7zL+=oZRgdX;i2lGIUt@$h?)C0wZ*1v6 zJz^2$M7R)O$#%#g$085jMN>!_j%k%kBM;c6wOb1&&P>~%k(eR`VK!B5uOfYn4 zKPR+WK9x1^>2z;adn~qfPD6T9iUk?=0(z;|j>1N!0L2PF)J|6uB4@?>*co_^%Gf*` zI$Mw*vXu7B=iVyd^c-=cr}~K&83sFF8A(4)HyDW~>g>&K`Mar`{9T_l%Q)UnV7efF zV3qZ&C!nRXZ$4A0q@P@$RyOuS*(e&k3}vG|#U7A~Ua8N!GJ__j^wrl+^>WM@JM*uT zmbzAp`?P4i-}`U?hj%&M@5f4pi+9c>Bqko|E@cVQRS+<9YA8*C+)Y2He9l=x-l+EB zVPes}%3z2I#S#1WRckG%p${*r!La;Wzssp{sXH!|r|4eCkM-vBG3nvjoK7 zWTsDL4m^H_9Qtv)&pP{xT|Hf9&YHkdZAkeA{o+*cQ>OrW7`srF_#-9g{J(X6T=JpM z`|WNjcZt*=e;vxicQ-+3Ys^Y6U_hHG!>quW+pUQoLT&{fgnTJyc zXZrkxtGKY&=nChS$7c`9c4bbtKHubghv>0`(w0yJ?fiS#3EGJlZopc#Tp|z9hR^=! zQJI$UM+d6nNtZPh-!om*9`!?1=lJ7VI`XIFv{gwX^3T)g+}Y*C553-domcKZlk*X> zp{}^T5mzE$eikslME$&}Ev(28K$n^RTFyH1 ztSiFo276bL5ilQ?g>POFRvnvwYx+B479AUX-e}xvG>Wy^yKq(oP1$vefD<;bsp%cz zLNbE*J*FRF|W?GJRu@;3hp=`E%XwG2^w)uepGD$XNZ+@>Z73_0{h-|xmTl6#dP zY;*@nT#52GA$iy|iQFJTE48H^K4C9NW$`}Te|`Yk9LKNYjz{JR!1gP zsf|3}4b_G(<9tUNv2Xqt%YYQbGI^KSVCUgw9visf)LI%mm_E$^kjQA#kd&raxNlYE zs%#xMOsqDrObNVAxC-rIqKp$gQplZV2);c?|Z+Bag^b_ z=#3ul7C9v`#E|%_Qf@~-U4Eo0&j}nAKD4)B7kuJ*`hS_dn`bk7bHj6HILxcXBjcMDI5eS^JD|5$D}>L1w0@nh8@si%?i z9B*dHiczzPw}5r2HE?pNkk-))PT>lse{ELF$f%ZsX*p99`68W((G`CNJVV>!`^VPRJ(_Jn z(?^DIo+&C0lKLEGGIqmz16_0^XCv@-P<>ajvR8dG1GLI*EtR|w3Hn>EEao9vOVIdi<1;ecRb z>2+|z40nX<-n#5x+yL0I{qM5p|5!N%DB%silP_)mzX!N{1V)^pLd1&t`xBCt?UDUx zPiNID6Ea!#r(UjCy>~sIgVzv7Il1aTK`NwI&-YiWzCCl*|EpE6`j@_Q!m5AozKm7> zPJ3$AZ|tA3>L*b*aZ1L7ZoBW~MV`7W3$wF!8RRdCZ4ArI$4IU{{xb8Ft}a6!1xh4d zo>dQhbVU|sNYT(t`}qmtm#EC9#4FSOHTG!2e?vZN{$PBN!am}W7X+I=%<=3_&#mG= zVEY+_89ps&h0h>5*uikY!HGEHcI(O&^7UXd1H_&wSn^Kfjg-_E|I?x#*aB5CYpHm& zLcfP;`VDS8n8FRmxI`i+DC;!;4%$l@{poO+I%7|Y3R+S~LatT!mv$`w9_O{UyvD}w z>6s}>j-UBskt8v;6(KOHBuQ5!V845rtXD$dk8enqF9=qAN5w4&m~~3zv}j*^ZXF3U zHc)(dw6nuH`_;>O>Q$$&1TDNxT5ORHDR1R&NMr=k;R{!#zmV>V)1(#QbhTWtPN+9N z67BY{%N62>PYXo3V2_|kl{>(~CmMh5vfu2UEod;2v^@tWF%$V+MkL4fe@{OBjy;}d zVhH5yhkf;3V*}^$BQ21eiRmu%Y?#AE1f(KlB@$_DvV+WC64nXAg++D<{`JSIR_r#) z1@(Y|E5Vfykv)=iIHt31_!?IJwko5k#YuiNbxHuK$6An=F@WmnY5 zlfq<&z67ebgfUASc(j0Faha(yxx;+Z*Au_t0}x9>abUJ&&qsn#cSDZflAp!~1orE1 zWwkreeVkd<@p9~&8#L7M$Wd|dYW6Tn#<%(+p7u2~s92cn9`OUf;M#6sfal zrjVgEL^xNJNFoN=FTFj$6&ij#{@mVlK+64~}6V(VX&OwdqR*dO=O0Tn_|te2j}0acbTXf2%$=O+pkyf{E=6_=+Eb*~?#k~kz`#{aN1 za_04bnb-r?Oqg*!9oHeHBXFz*dG?*<2w{{a+K4dgha^8%*=`^DmvYn(%Qo$TSAVW= zv%R>NLr70!T!Qvo1$>uW5L4N%_R=C6UDN`7h>iYUvy(0os+bAi#75e_y9tu@eS*iz zl9J9J=OK$k&TqF2(-CH|+Om+b+D6_D--k z%_Hxm{Y~J7JAYC!XXee}ncBd#kg@n1+WaayiVOxU$7OTc^2`ee9+;f(^3_FF$n60a zP-waRtOrc5LU2E$tyK2ZGFA3N!fOP8zarPOJ28!y2HWJt8vW=P;X3cw8(Nsi^qvXg z(Jn-TR%B%YyhXQZ;FZN9dRJG5vS4(ha3ADH+S1p72Qnn;GF4wjHWBRnL>b(@7@%V^&^4ICAvgv_RCNg&m6^kmzFw1K zzI!eTnv)9f6c~I}tk*f-7cZm)@vX9rB@%7Vd0+L{zvzEhXXR{tvIr70toLr72aJM& zFa0HoKg#EE*~4eR&s%$~3fi0v;IaZGpBYiP+0%SeI&o z=);mzwfFLHt+cv6abG=ATl$xkY`SMs$Xp*Bj;g&QcxX?clR$FW-wl>DhcB2FG=8#c zmT}9DS;mdnmEF7hfbj#~FYUQI|A6tmT?dR2ErE)C0r%U9>@ssx{Xb`fYPN*)v3RL^ z_wuUdLT~MWp@e>xk==hTf?qKD<%N+vZ)^6@9+Dg@%_=KtH|~#+RaUaWxc~18uwRat zmns7V%N{zT2O(L8V)9OO+0gLMy^6Ar@J26pN6rmm5?mOFet?$0%PyM=>d7vBhD7a? z_2{aak#j6DP8%kESPB5-#CZ)U4 zYh*~ncdAhhZeZ-|!reJ%9(s8;BPU*J*BZZPOPx$+!;F7Aleu1C!VEX<&5rJ6GN-zm zKFZEt57=@57VeUwG*^%;!H-GfF!W2s(PCTlmzv$$UU2)==n@0D6E6{E@~a zD0ntq9AP~0ClSEKi7m+=lKgL~cwNW}ZDp==1}zuly)kEqdfwZ}Oy_i45e2eGW$GJy zfYH7G(PyAwc*gR z3YokQx8$g?_w0?Yrnn6J?)$MCtc|rDd3O9yRhN$CHvrg<) znYk{}M|QeDz8X);#srsKz@Q3rJXnS7N)K=Xeu#1;@*Q!?DZ@D@GKGCOHzMs(&eVwR zBg8Gzt|MF;n*q;m!(G9tY0ZOP-5{*46g5#xh&};qxH+flE>SIZPuY0xH zi*V6O<(|Y7s-&(hb!0d4M+v{xoRs&3zAOAy{ktR8zxgNi?`+k-9&9j0vN`=5I$5N? zMR3m8z^}U3>OQ7rzzJ?P?I-p)V^DL#&Y%*+iqnGYxbN-cneF|Ff4m5S5$iG&ZxNgN61ey3(zmGcdzWvfySxRDMXG)NULhq_k z3UULBDZ+65+|0U`EA7$_&ai{u!n(qH+PwM{fo_#|9d;P!Z z|7-u!{eRr`f7Ji$=$zhf*<=4p|ED_rKmEl1mmU9q0{;u0{=Wq{GH2*S_=^rW1BFDL zS!ONF3&tk(62%RNHud%bus#L<>4ibd2vtnNhxKi|JlpN@9mgPk6TzMj1$!PmMq#Th3JC3xeDdT%D(w4x9r`B)&?uZ zk7!)?$l1pAjmB_)Bl<>51#b^ugdqg>El5{Q|IUGJED~*~@|m~BDuKzUxs>YOuI_Qs z$MJ#q`8?T}G@>Q5U-_gDeU}EO7sN$btDIRSS6pO%=j0}S;8k*Xz$#~Jq-#c3pHa?6HtDL`&`K=nF(1(s~}B2Tc>l<(BgaCt*`nS4;<8;>n-pIhJR8+^(*m2FNh z2wCHXh6o3OAIad5`2{tM>JW4+6dN(5Z0ziIBYHV+hz*0m4L02e?1`I!HI0{t%d%Lg!&VYxW8`Yte11j^IZ;3p@=~;Nqbt$_bBNvY zD?Bc<1rGkCZmJ>eohBa4^rfGuTF#N?o}xL5CI)$x28xqGaGA{o_|(C9puU?c6BwEL z(CeluN5-2NqHwP8;4Z>mEy!a;V*!88dIkPDenm#q$$3A?CF`SgD(iZ(f)KvwB2x3^ zEIZyoj`}f{yfnB{`+t4D&Ha-BbJ{WjE7eO6YSwv`fD|(PhY3K?pxr=u!+29x_3TyA z$^uYUoj8|i(|G_RePkO4sq4cTq=X3+;%hx1=X$`GdbLLN2B=Cfb`@tNApjCuP8otR zmt%fYS&-4cpmmwhX09U)#6leN5+d}JuJ-8R9Aj~@qD#GVIYSFnWZxHXw|DI!YS7iO zA71DRm3(YOI|WfLn7ztxtZYMsV@MKM3bmWo^#9{Ca732B+(tq^!)~=7W8S#YqE-gS zQ2er3B^?%At|Nd@Q=y=?P})FcRi`GRip37Sld30hYbz)ik5w%8TN zC!KDq_gV7JhCTVdLf$#8mOx=b_hqarf~J~Np?})JA7IT=^E#1v#S=VMj-A;F^Qq#I z$)sA{#XVH1&KeWFQ~Zu&bz*JoR1@8yCVJi-kkJzPa&nTBGd%Z}%-NOb0BUVJ)4OHA zGrgAJi8H;gd?C|2lj)tw^nNH{{GmOaO)Yl=DtXU|m-cJwgv^f<*J7C}h59l^T1TY( zz#fkNAz@@BECav-|FYpnGT;vYumpZbV36o-XM2SX%i2eO7p-iRkYPs6Crm-v1v6LO zGa-qi0ZZZ@aCOAz8cBO4N3mAHTqEhB&$C>KbLpP|SL)Aelui;@xw6ClU@bI2wk#d? z)$&m%s__L7ARXH_;LgL}{6X4t=K9Fd#jeD4&dY3h3DOPF`e1l8Qc)u}I^IX=IkTN2 zVJUL1^YSBJ(p#*zK67(ZuanhsLRK?bdX5y>yW8WXqdE3pCgi%*#sl%^)=cgou_7OB z)2!OTw169H3g=E-hA%@m7B|V#_=-QH*%@Yig(V};Y5YHz|J;P#bt)Vixvop}S0gAV z|BLzkwf%>duinr{1TuUgLEk$xuY2S|rd}(|dq8{@(fEEYSOv4`YLUpa7reS02-$tO zO(-#x<@EWNKqYznpmo&EXd2_^Qp+B8o-9Zri;w=2V!|z+fjYxJyd-_$Bt5E=Mw7J9 zNvhRJ!!t@nNFq>KqapkBZi)U%982`l+u)p+L<)d;treYmZpa!sRBeGw|Lb0JVjg3X zuEU>cgo)Ts=aGF2f^BM5Q`ObAA$l~+SbPb`$5_oRlSf6bWgvOiUZz2W6j9f6xr{6^ z4kDq`vaIX}RE5#=>G+F1DI{rU6BANF?uV>pYymKkIiF%>))-GC5{A#X>M-ch?u~Y3 z84nQURkd8Bh0pQht|5%x6xBh+P58PJza=_xjltLBgi4VZ!A5lfZ?6{eQM;-PlC5l5 zGW&YbNqyZV{3AAcIgW-xC~Ok4VMuctsuC|j z4N-K^ua1!+K0cWt-p4O?wsctKjt~G$klaO*dp583+CnHntoPgb^0hpXOPLn*MS1A& z22)hxqN!sElq&S!n)bR;b2iu$zk)x~u;)Ez*(r#Ny`}9ro7UB@=Zl26wLlWvMIybN zd0Yj)bkL&6p0S*J2<4%UI@?MM_18*A%2T7DQ9Y7j+po0_aK$eW0K{@0PE{S7uBxiE zl@4=SD0H4q|Mjs7JvXP0h*!{zU=v*z+y~b`w7ui#r2|_5m!Qt;kOKQw-F+!o3R_zR zjc%k5cZ*n{x<4=P#P0jd1<0ifMhFKHlzT|P(MP&p$1kd0lBzl`U6mmbol_5-X#FP) zLv?#p{AsFtwjienD2c(6HE)Ojv=?wPx7t->b6w`H^boodLq#+{3yJ-Vt7=@7xQGci zcOg$JHsh=jPowY~W44n!`XB1;G1?IzNog8 zqhwqn|1(+%QD;}Z%4mn^(XLQfCG-3YN7T+d4|Qh88TANxRihkk$ zZm`dBa%sAeQk0N*g_NkI#DY>q$zT?TCgUJW&37;ZyKoi(PcoRi-CuIonLpw0qg-TBE1pvc??9$ajaOJllXIG=- zwYU8Q<>mD^JimFn)Mg)hTyK}w$t@U=jsNf-zk|>Ta??c)&olYIf&WQ;cuIe8EqjV> zaJGQ%QJ{?#BDgxb`EzKK%#vO8b4|Q1gWBar2+M~C9|NETvb(fPITMsC%{5rU4VrtCbVgEz8~SNPbHcupV4?2(-!m*jRO%f(mF^w;|9oaYY< zabhm^wny9iud5zQeAV}*>mYOWoBR+_J!D0A&TI%-BM3l(MT~VW8yO^?)4W#cu%I=W z&HEAVXP+(@%h8NcBZgDl`_;|3{}{ibhqLC54_XANh3k(BT2r-lCs^`^asLd+F7pyH zKMk30+4(X|GZ8Y61&Kwf0@SSK8zX|zWALrbv<1VRJSNZ-?}i*u{!r9a*NX@(ebC~M zLCa4jH(xY;k}Ve+=kKrUMevua+;Rlw4z@M29J`beH|QCkL|>ilt_)A~9I3&`jzbKq z^{8g5vB;>NcE)l^ax52SjAgrV|5EBO7LF|J31A&38G+;|+SDL~`QC8SAeKFN(je%& z8q`%pr)ZnlZT$H7Y0?+bJ+;y4{|T7=bq5?^zWmDn1kC$sD-)OnC-);5TTnuQxg}o* zXj>zo>=H9Y#`{5?!7+@n^0GkFr`%=);E%9un_@C7;_O^SR-d|FCH&&3t(Bv;wO<8s z+H|)B9ex#U{0dyjGVYfxB~>4ws@^ZiSWA+?9x1?9I3uCP70zIt`?8FYCYs1+pa zQW9w@gXh9#A)9@i?F)N{fC6TilUKiC7!uF1(sw(IqS|-r&Ky10P)Rb^MXh z{x{Sr0oD#`z5mjGL9NANjR{Vx29N09GDXTL!&}!&4qSm@q23(NSG=3eKM6nX&r;m@93hDt}q*Ftjx5dM6c-lQLb=adHl=g2jDJI9-meG&Gt}2 zEA_n_(8@byf`l%jaIsKB2w$AmP-dNvdaXTVjj?Vj@LAUn@PVQDSNxs1mj$S`fXy?{FBy-U22NADV@%wgC00^rSc(0ZHK(OmIv+2IQRg#?FzM?Ta zitD4oWzy zyEX1F+2u1z*L$PQd348{PxjRXJ_5A)%t;)63C;=z3(oRjLi&Wv%QAM*$^C8SiC#(` zaQN$VB6$jyyeC^5;i$Xihk4Xz-Bd`(uQ6qWK(QtbwHA#sD_;j6mX}$Vh>Ebx>H#9v zmsus?L2a2uzjla<)&H`D_V?rNT>f;T->mvz*E;U;c6c|#j#j?xGHNbiW|UyTz7LVj zsFqupmHq__45Ruyl|325HD1Jg3{bLQ07dOV47UN; z&gmE8x?O9ylWzoeyVl_HBb`Smw`&dPYEyQgWK*Ou=-$lrtbCU9=|gYLs@KH^z~xV& zJ7jUr5cw!@s3S-yB1985BHT>d)e4*hAYM7Z0FAx?jgs()T;MJFe9pP?ub`Us;_eH? z#84$J@a0{8zm>#C8t|8VEcWwru?sC_TK4*k)kE_VJ@k4*&vY(pxV@+UWo>|Q(EoI| zaISA`>9DzHNQB6DqKD5g?*Enmoww%b;R(hAaw)M_X#drL=z;=QI3PlUTt->aY}|h* z-NHV^?QQKoJ|GelJg`g%3+{^c?&k(Tb3%<}*0ctx6pG#3-JKpiMlCSa3u%E65n^oH z6wk)~iQCPOd83WTSQzcG>$;d!KOPK`cJ&Di06$u+g{rIFb=icyn?wlMMOpFPOmjVZ zm%?xl{^GV!#G<6zZe#H_!2szxdT05W(ftO-c5?SaCJ`Ix{h9QhOB%kR<1(iB_cU1C z-v}0wG*50f1(r3>{*Pe61k0$F&6V7H+tu!`JrCT0CHYEhBl;IKTEu7czaDSkmn!-h zV+wJ1F7qv#iRxP3HKL;n_Nre&#XuKQBbDJfsKld?xih^2>RD;`4(j5n_tm}fN;XFd zx>^Gza|h2mFL9y9pPGY_3%Q!NP|Vi4@*_fj+Pjp_*>jMV*bW3sIwLPcE8AJ-2A|{b zm1}#QVOSx?5TDz-3xCwt*%nYEF(}xzAx$E5B7{Pdk@!aTGK!ui&VMk+sD9Yr)Q8zb^akX@h9_FI4=D4 zkp|6Qb4UDl{wfY0!z`reb-XU`*F|C3X+4W`a#;!dC<^Tr5W~v|ITTE3qea<>= ze0X3;r0?HLa&4}nCmR4F_a(!kRhwRuD+u`3?^XS=PW^F(;k!9!c%MivAg8kUQjhpad2ZdL!@NNB#_sAU1o~E>J)aLNuom$n{w+o(VoISSro`(M z1U7q>|8AlT5GjGhZ^jcoUNl)rAdB!*rZ<7nC_e>zM8N4v5N<$M(TRyZDqjGr7Oq_P z2Z0Bx%8`Jkb(ER?%FMB4<|QE$;bvNc&%CnGXWlZ>ymFNJv!NMl*8740KJiHXKFG@@ z3}^=bpX2{#{&!<6CjXQCP|MH5zP7$u@vQF`pVsU9++p9mzOg6a{268-=g+SN%&nY? zDvJ_MR=Xmor^v<}7abGcjQyyW+#$e5j3E^U&;;qyVeWVf6_VFz$9 zvRA}u(HDy~(m^&_;eJ8uJHf1Zocva{d$!n>v>tMwrvL`&$}~06^jO9xN5ll+T$Cq2 zdQ~lgLo>Fw|EkA!C8rH(`Xc40PBFKl`1$iYi(U4pf2fm(e8{abL~&vn4+g@ZSa-YE zh##5M~3~oMrTzSz4YuS>8m8CkE_t z<>)k~UzvL0v$QY|z$NDJCoZABgaee)13N(Xz||8i`cKnUCxVIx12`NLzjK~HkrS**q7j#c~@b`{dv$$ z{MUE5O(xOL%fzN(C-QWen0P-=UF;q(eLS2$?>}hMKaf?N^Cf0L;Rmb`AYTU8T5Da=7~z`eaL zi*BX5F`kS%l*^Od9$bteY_aSu0mBDpoRk-zO{VH${2G1*hrcbz(jOe-pcQO6V9(-v zP@0aAd!Lr4O@E>AK`~}(*p9wdQK2zP=-vnY5ZO4nAd{;ub7y`opBc&j7XHg#Pk?e7 zz?X0zVj=oV-XG_gT>oERpV39V)cU+^g0O3Bj5V>#Y=I4LlL;mqSC%UH0Dqj0EoQWqk24g-}h!xc^>2y9ih{5&~e*{gT<7Yv?N$79alaT0ZALFP< z2)7Nu_w(BuT{M{SEy{yb&XyuM_O6WN0+jvNk*tb^2g%97Bq=q(el}Su@{y$efmi0I zAgL3_Hnv*8m9lSC_R$>u?7`d1Wlb7E038IMdAF76TNd&ocM;kD-ho(1PpDcnjHoL& z6-I6g;AU+4_b7Mk>$5RLi;ccx>jN(Pc_u}WybnsB$R2zBpA?SuNICW8$uERcP0h7! zciMp44ot%2d5ca^tQdRi2-`Q#v9A$>>Bxi1TabON*s6SKuL@B9$uz%G{ycIXp}h4Y z^TktN#vxZY;28e5EY;KIE%dav)6;oO;P5SK0y$u@Shj*I&yUQ&m9`18uG#6h63@^kcB&??{C;R>(lQC!}aUhR$;^ zdbq#Wc(~Po#8xyX#-u#QWenP!{NX0mtlGhKsKeuf!rl9-pYKWI|I&Gk;jd?B3~e)G zAnlP|oJa|mVO;1h>{U8>i6jeORmuD9CnULI0~LOjQNgaO?7_5i1;gk&GAh_}NhWPZ zMjG404*Ld4KT)#MXduXBm;1y)ReRDWcBJvce$Stg@oE|=PR57%VytWB{OvwdaF*3b z0NHs2(w}%NdN|vN{+`<+#jKI&g@M?l83AoW=Y3UX6|ea2M$KbVB6jW2355ON;C9*y zW62{V1!6y&PxryJ_7m_Cjs=a58Z z?!7(huDDea?vgS(>=-)pDRoy27H9t}fPmzR9dM8f+qjrh)N7r*cC~^CugVl5qXv~N zs(-nZ5r=W*MI_2WwWZoap_KP{BfY54)VPVh!8bII3%Ul5%Z;2W$9L)?zQ}prF25^r zKH<>fF=@g4kXy*@J~iSwxF2~fNgtKA_))qP^NLD)RWMeLru-c#{4kU@IM&a-17pbd zL$$F2f5+~@US7H(zmH$Qp=Jevb*C*4nAz*SmLH4U$m!m$kSjtMhEJ;-F=ov_1OD3G zevq}r{Qy>EmDmCkkqJ%y9;0R~3n*BDJwGOlZP`uqmDbx6r^^BJ-@_b!a%`vkR(`>^ z)bJbmyPO3<6>O~5g(stpx2B&Vr!ZGZzi-2Tkr7G>Imjd0&0AfX|kWvlT`bv?9WzH(`EmhB)$_LLrFOQ zRogQSxdv>)T8V%glJoDKsT}&e3RClgn3!u|F&mMy6ueFim>ZHH+jg1~NpAQZ#!@JS zDw<9Lk6ghSpUSnXG6^Noe4cHIb40$zV-9T4_ZOF03qZsON0eigzhJj6%x5QwiYq)l z6#HSe8w3k;x42IFmP!&~6B`dq2ZT&u@Qq0l{=q}Ita+5Qe_}o~ve7QNn9Nh0^9%K% z9-L6;+I<;BJqKom9N#d}w}=>FRj%SNT>1Cg*9=z^S_?X4D~QUJkJE`Lp;Qz%fCM^X zR3O5+3fJY>;E6eV)652$xRkl66jhQ<>6bt9N*$M=r{#AH9XiIM?HJwrdBUPX^n{XOxjDt9a zFEbO7z9N2{d#a$g+TWN7LGQAXnGHtGoodJ`I-pEc{S??0&%E9kDp<3ZslKa-%Ccjr zn105q*y>OMbhSre=_WRASfvGGqaGDgfJu)?N4i@9AhI6B2PanGWDcn-v*rVhcXP_z zUqay;q+N6NGA-{_VZ&@xkEK*lWG$m+J{vovOdv3GRjA^kU8QZlXL`vlOGY8~PVt}fhQ43N@J9+kie5Cw`3m6WD-r=G z7n3ePSOaAcG(U&-39+IqDa2NE^s}!c^#AnsTauQkB%@liSvtA@8zkT7 zB%4ADROv^rz*6qVI=QBgd^a|}lA_5#2$!=alOr)NVS?lR6+kc7L}BCIPM80QWOqWB zx6IXDzAHI;AtK`4VfUa(;8J5zWpXV13;`0ds^$-#XVi!+f&r-&T4UwL<=p1FG z!m0|(##XYVpGIevI15q4xhPJ0QY{--==}RzuOYY|}YL_wt z=%el0FA0Biku#-=#J{9+q{cW-OQ~-X=ROS zN}#gy3D6+c)`Yw(+p?u?SK_Cc4NhQh?6nqs4uPxSxRLcCZwfQjSqiMN_cDkwl-gT0 zIn0q^DFUEhIFf`6s+vp`or-z;1ajgVCakHa2OJSCphyE&Fz-q;J1*~CsDRfprUBy0 zP%~OlV*hdw0n@;$@Wqa68Rsup^aJdqJY?Sh(8O(oG`6#mPhnZh?TI7`FSv}SHM;EJ zFDXK#i97F;?M8P|7)kfyanObaSJmuZIMv);78~E*iKVw#AKHZwz{Gj8>b=&)UJe-Z zz1G5PyXIkm?Irxqvo{0hn#TE?<;6SpvT%<5BXVJ%0|H$eB5MMc3bQA>>>PVEIjDab z(LoN=YKGlXL z?t`%(U-~6EW9;ugMq+GWq9ZNls4M>p z*1Bc0Z`4!@aH{x2scSc-O3{)3tZ|BbUy79LA`eqU1uc=2SuEvp4n<5liC%=^%6+kG z8N2TO^Ynm5ACnp~1@GdMWehO(xWk_7C4%L24-DYJ^zC>LIEX*h_I~}F!2f%^ zlNfhoI6r6b^Hs>AYn(fLjT~+yelm_Dv|5q_(dHSi!ctv{8$=q#^ulgu(@BRpO%F9v zc!lihYR;!DTXNac#YV_)iuxPk{?t#|(HSu*79YtUuj-f*_XAv>V;;9XDiWE$3Jsz3 z9=tqduHKbO?8VV+g6C(PvZzG`y%rL_c(ZiKsOcvP(x`t$p74}-2_~oZll7U=dUd>B z<y4_n;i%F3D46rKIi%g&7t}S)@p_W);kq$(bORdR8qMMxGcP z>pU@#tXeQ8o4k=m&2W`|O2B-$T^RH$Qqy`)%HS)u!}dan0i(};{UO%DVEZ*5feNVZ za~%|U(M4@LRsSfj+jZG2<5|izvpP^Mqhe#vh7V_Qis0~(Gm2dL$ z3uy|5P<8c;f~o+7-kLXG@b-KH1Yj4Teh*Q=F=x;dP>y-0#$hK73JiD8AeSl+4hZ3ehGGszUzn85T!1&+1|ZCcxc-}f1{hgW5UEy zy)gc+^}@g^SD|81zpZ(~6^3g#))dQ7goMuvTIGO4Nnv6w6o?VD z>(USNfpRJP9BkrB2_LCEYr+@?6Dd}gwUcH0NZDAJ>ax2;pN>C&1)mIhQ9Ut1A8 z9{8TP+2a|*UQi#n1Y(2{jpa0tCg8S#G!z@SeO+oz0>Nq=%Js&zx7d$!+}dT|)kARv z=%WY}x5yiU7r{G;J4KSA_PI{{J5>~643!`5w{2b}@Q6GXU#b9dBJkd0F)H94dmn&Q zFfI)Wg|QeViL1zXF%`#sG6luPWTkeg@1o0p{k&;l9sSnG0RF6{Pi%K}AhCdCrlVH+H00naz=2U*$p zw+gL(6G2}IrmCW{5{SrG|eviil0wd^cnHtAzT zqgT^cxB$*3PduimAH^R!p*U`cta$xJcNb6uY@ZG`0h`IK^(G7)nRsqC_y2hhm#Tv96cEVI1-~oGmUMf$%Me^6WL- zB9Dh!O&=Mi7z+qL`}Nu$uJ~|yslZ{MgozZ3pQCHprxJZLejP8O4>?(%J0@rzN_ryT zU(<_jK++m{xKboc>31PvIYv~SUkjhRQw6eQ>(Y+?m3a$UGnuKGD}okRV8h9UAVJT< zvJxHUr&6kCl0v}-Zom|-M#TV~yViyXc46@aC`c~t4DJGCU11zN&vNL4#D`GJ;gfg4 z>=S7T+9FX$hDQXgAx`nB$>Og{@mNkE`($#07BRZc?GTOEAsS5hhXKT6MK`?4m zSC-WZrrrMWrAl&8UhPc#iug}i2>O&pYDVx&9lv^I#`=$)dG$cy<<7dcZiNic@M~1F zA77@eCt~BR%qq#Urc?Hhl#TyM7F;ZXD)Upj1{p)BRERVdwZJpcL#=JKvc>%^fu*`E z;lB{dF#ap4%R+stiI>&9q)D5E(Y$U%8Wi#MGT4d;bM=lrTPlB75_p+FG}`!6yrj4E zUyFah`sUd37%+J8xl9=Jo;*NckbjaqvnsjxdA2hMAqE}t^jhU3Vx{V~F(!m!GYiQZhJ+${a*iTPSsYH5$SERaM%ur>P68pXvH!{w z0b~H@^bkqR%Ft$>7f$M#qz7i3h#IRz)L7l9MU7UT|97IsinOR9ghEsoLBsb3JRg2a zeRW;N_?(G2uGA<< z*NGV^;ru7k@(^pH9NnA(Bkd0(RR=dyx~Wr$Hy#)u?RP*tl)w?ox$(jp7bYaQD-V3I zDMbY!0Yg~u$#xMVsB$8mIqrteeA9wNG<4Y`hY1!sw=?fx0mdhSY?^V)iWOG%^ze)_ z&+6syp?z?aUJm(E9_pzh2(z9O8w7C|zY5}hCWxEDSFyerESsw~zp|@fTSeSt@qh@V zwpHMo1gsE#Qa3qy)wa+>u0*$|UaNHDH}U|T)^gYmIw{@wPE@SQfn2EVca4>i51H*9 zpp~B7pAD7>!x4;Yi8>5?Mh2o{adui2+WGK+pm`aQ<0fTKP#)G)hM(TQ==-CC7~NYrJ$`6{Cc;Fq)~b=_>5Z$c#^?OV*nQ1Neu{suu|!T;%VKj! z%C^?1xq~-}LSw29h$F7Cq>wZieJ%kACm1!ec@tf$zG<{f4DNBmw5z|X$-@$!%;y&! z8RQ{PtD(bpAaV<<<`79;M;M63WN<)F%o6{Zt5n~dK}OdKN4H`EgR)qSbUS4DxP(s? z2Td@ZV(%zpu%8AS0(gU{!79^*)ry#3sN>$KSkvQHFLvqIr2fa;$zuD*KO`W8s^~Wn zf32Lwx9BNAA7Rvp3((iE2h#0mbde9)FAW77OtEGjQx?)c@;&-!` z2BWXyn=+*M-IOLlRKA=*ws03n`k$Tq!+3 z^Cjt-7{BPz2?js=E!Mrtj2i;CA1{(E_1ERgVR}s~2`I@+cs9}?o8vpdKtBkGT{W`168ta_YRY^{4QJ($$4gw*xO_InA%y^^& z>@psdJ2rx`g@r1n>-$I5X#fobR!J$@=b)JmBHr+ei6FigXPRikxL&*wuCogI-6EU^ z!4X9$!lHc*f+E`I1#n5)Q9{|JaG_Pg9`NnskWFoj57D0DJ4N&gzOd?>1+!qq8e*_^ z$GS@b2b-5+txd-g1m74qcm4wo0Mda^-g^dZsM?k8Vkq))ze$Ly6W#hW)H0CwcoE3E z4a~I!lVspp`~hL2=YTNEZa(oGG_FHV#I8on5gPaHB;KhQ>qwy=+M}GTQIaLNEAAK{ zCZ3ax)R>j9k7_amhsVCa%UPh{N%mN2`z7Hi?G)$|{FA4HcUqV!qn9V(-8CeDJ>Bj_ zgD6_NB=-49cd(042FJ4Q9VjFYB8KKJD2*uNv<`ydv>#t|7GRz9;^LDdc0Twwblq}p zXg?KF?CNhkz{f!w)9mW}+m-MGA40O9esGv##WaeP<=P-1amsBra336;pi8`Fi&Mo}7I>#ZYrb z$%s8pzJv#MP{1+3`wnQPMjKzibf(!M=Zz=tZ=pYjgx<)!3m(vE=#JXaYPuuVKr;U( z@sMIanxgPk%-q0A$x$ev6t|>^A0Hditb09dL>;1Y8fngE6{2%IThJmPXaR2(UsKM+KRr3Q;-9)YTkZ z*oW4b@iT9i8J~YXgaxW19+kv>JZ`U?E6MCaIwG93VO7K-nevNCoC9u%+*tLGny=A- zJ%15~R@vb<@BIH=`PoBc<*R9yb?R3{LCrPG`BQr)0*|cpUFo^RWnQ?c!aUpWL z!fjHpEIbPHKM9^~@^Psy61YFWaI0~c6I zwx)y6WqfN}L)sIvit5#a&e2^&} zy=iB9(69`QO+_+}cU({FsaMA{gK5Y}jK6$(568^Q*m z(tqub+&?n}9nT5(&k(;Rqf>8uQ>V_9PNgo}_!>RD@8iS3JFV|qPQM|Ci$-vXVRR1! z5h?3s&?R{YGD)<2JtCN?0gFa7x_CzV+qrwnt8Ob0Ys%kJT&QFqHdVwlRk$CAfO&OS zV83M4#3UaxPx6Igel5RJ=QoJ@&sR4$z@-v&LQ;jQA_w!udV*->2w|NrgcS|o?NUh* z*5xW9Y|RwthB3Tmf_{iY18;@;QJ^0#{Sc=J^7iP594PT7=S(~r^kcbx)ayr;e%z%W zGxS3QZYoUBkCFOOs2>IT;nI(Ny22hFNk#sEK7hm>>+n9odiQHr}j`76Or z=L$f@K~1VjtgfmBc}!9^zu2#zlJZn;=kq(Jf!s>nYxE3pF-BTmWE+b^mps8$-=mb}D8=@lUMxD%BDW)*#uIDR4P zCxgdf;}e@tL*b2B7!q$%HV18XAx}s*1nhz42k@5s5`z8M&6?Nx0#>aeoMUT+a4sAr z+U35?3oP~%4y5hqAsAqPNeEc#nrTTq-kaLAJm|H2SC@YcmLrAem-iSo;@?E*rZt2) z6u2N?*DkzU*v5?;lR|tJdTDJluh4=b%fi^C9<@uPNG#|6_a&&UDkb1|FhrF&MVFXy zLWy7nceSZIu|N?WhgW)Q|7>_qxcp4^yp>g6{N7W@`LIU9m>?VuYW5fNm4`~0i)y)G zXE#^zIA~0_N2__(_=|^*!e6^kCo0U9L}|$GNh0>e5_(CU`ABDoSmnA~ooOGrOPP2q z`zb1}*uedNPa%{##`derae_~ZQp-6mVn;0`EmNZ`Eh;h2zH=aR@|F@xFjSa{P}H9I zu98f!V+eY-#4Cv5ZXOjvUaz`#hFH^}2Qp$3foZlgfh!j&xniz}=i&Dl2 z2koZ@u?-RXQf0@`9*<*8K(%@ier}~2#ieGkd{8=wmN(G`efBhB5XuVtn6wlJN$y<; zD(b8~{2@&-rkK{QEu`PW(6%elk3aFpq&4dTv>bVff_iOl9KIJ@Tm0d$-}MS^x7t3Q z^ab4h%d3Lh2f*#dA86brUT~Yx^FpCGT8eq@0TFy6qjA#5DJgv6cp)H*2IA(VHXBJRbcu*wBvF?Sr@-*FEqCzMeV?pzuD1d+OkbU|Dtr<9nC!0$EWUdwfi5~iQ&b?$m%K*?u4WOkp(29!C#=w0?6lkso zT2rG(y24ilIMHsh0nW5lR`&hI@7w2&P0|WBy>c<1ef?+PB?qS{WQj{EDR1O!Lh+yW z{1f@NkPP4nEH4I@&?9s3fBDHX6@|I7{0&2;NajbETD@!LNWaXIqcqytandjWI1 zeJ8*ZnQ1VBWS%tv*!1L3=g%%Qh2g?3cS0^6`{mQAHHePuwcolk&T|R$o*~8Au6_(_ zZ+fd|Kh&Rujx;sSkVnM->$v^)eP5z{JLEaY;oU7a2ngg*9UHUc1vg5gYR|h&6X-=e zJ-bx}O`VTR9V!q?8}rSodS^VGYG97et+CJB8y5;qhk;H&yZnF@z;i1lAf2Q?rB8?( zM{!3(B^4IvQ)yARruxKq-WqglY=rG*p;W-2xz&c>3|R+Ty%q?`@jblGCnB4ZscCzR5F=r#GM zjuDK=Z#OVjCwOXfLpOD6$Qyt8nhv7Jf~dqY_jSNBcs^M&hw-9L>DRIW7zF_~Zp0wB)151oL1 z6I|Z9tMVi;zbRi~Tfm7YR?OjPvOTE4R=azo9AVdI-HOEXpYSY2ZGm^N>HQq_edHyV zY|Ey~SCPk}%`^cHe;^a^?MjeM5x=#2B5x#!)0Zn^Gi^tna_C)BV~j22Us+g<_5z%J zWRaJRji4kh7jUU9Qfgw-*qYL>N<4M(HS8AozC_Uym&y6l^EsP}HcqITFDN>_F!DpY zUThSY2~2AgYTm_|6>2KfcyYzoP~+1_G-^m-^_G**G0yHItNVXO2>Wp(i8{}psE?EN zen?`l6Dm74`X;`uHoW$mm+KV_*=&(8+6cM5><@p&DXfm`Xy1U56LJfd%@WK)g1uTj zt*LB90tM!j!H1d^vFg_47Ffr6zjca~3FKk2&S#3h=j_hyi1V4#)f5*(Ld4)ZwHJ;5 zLB#RYYYTMm(LZI-y>wQ5!*ARf6gqu=CA33mtnp2kHA8E&M2-+zQOzvKU=a%qZb^1z zGA-%JJ%r)W_!_vv-)1y_m!c(kk#nl%pNc#bC2@DO9Xhwp&j}-Mi}i#yJDU&TDe~Knsj-*1Bec4 zU3=hgz`SydQf8^kWv7o3!xSuBeDLiw zk$NRQfks5(7s4#g?wN5Co${wlNtM@5)vHrjHBwObve-Nn36Jt78sgaaN0**3$`PM^ z<0vcdNsjXNbou{2N;SZP_M{`p0j7KtP8y&dii|O-V2b}UFR2OBBRr7G8Ph|q8?L5s zhSaS5&((Zp&AkgMvPi^dt(PgNn>@JcNcYG+L0q3XYg;0tt}7iTtcpu@=GuRX2#sB% z=ETt$FFh>eYIj&}6Bn^&6mulDT{1~8$qb1Ik?fJ?6%K2&k922}_SoOmjV9Kqu~iY( zXb=;}_baOtXDZH*1i`kfuM#Tk3Z_<{VElpequZF?6uzbHzVJ>wHM5_^-Q08Kx=831Y^r@yvj1{13Kd zMSc>BMQ)+w>NzCZKm9QTip>PUgAT2}KvI6BQ^M%rH{cVDwt$>@k`r>uA~`x`$7a^P zS;`F0sNGF!i})zPQ3=&|@L)@~NJLqD&F)a0LxoPI|BtyhkB_oQ{>LXIfpAV#0#QIB z1i1vm5dypZ)+qpr%TtGMbKks}BuARZA> zP}D?3=y6m$xm4!&epf&9%ri;!^Zk6k|NQo~GI_fCtgf!EuCA&M?ZrPLrR~HYI6@W8 z^zDN)rragmb{~cZ0=o$u*A*;D^_6UeM8q5StW}~d$KOZvavl2*yz4NLpjRJ|^W@ih z%&k0uCYAOvDm{&r`rhg%m4au3=-;Xr&&i#A#Fx=4)b`OY@%TO*iw}#4K00=$Cp7s8z z>0Ophai|-rie)hQx5UrT9Bnn`D0T%>g)dk-s#!zGsbFx1qt$~z0jF#PH%-GiRE_() zwvQM9SxI>(x948vp^cixqYu`wT39>_`_~)r*~E!8nDzz#fPk5H9Dm4qjolfqU1>d8 z2;+|NHMK7>y1E;w=S!M+(%>G&;e3?NOGX(Fs*=v&7=Wu&7!z8Eq)-acb z7y6^HA`zm9VerPg6Cf=uC2?AHC5G<{7>`Xe%T=vFq90pGvoL!2`W+$~DX=x@3KYm9 zypPLbJlOrAu1G~rUiPY?I9#FUI4c)#)0QU8yosBQam`wf8PiRNuCelC{k|p7ANKOw zkv(oQn80H+<|AgLwH%2w(t2UAaLCv20}h$-@7TTEaJMGWUSKxZaI^z6?%A%#gAF81 z3FgAS@zz6|q{ZafEqe8`|7vjpP_sXV8j1#OFpzM4)Y57Jk$|lah(JpX%7yKeD7zf# zLidRr$@Zes|_NX5M>B$$Kinq1|DKI1dUA8=8(;72==oExzngucMK9d-HjjM z>F9GYJaxcACBa=rVv}ooZ#CVh{z&vP-gA8uwfZ+se?7EOW1X9ipN!yJQMI}=0r5wR zsv*kql33UtE{|={5u)mr(k00Rj`DbIe ztZ`{vW&m-GP!;Uq{Uu`m;18`3wXGvb;T0PBIX#*x(JMY2n`k?-$9ZZE1tOjXVzv;% z`J{}6F26d_7G{7JMDgw$t%Cj_`H=pm#1LgHzzcv}-S!hr<-I8X#}cGXWDFVfl#EBl zYfK41*v25?d3V=VeDf-!)H!PNlD^2wMgDG@&e-qt;e%SvyvoHR9iq80kBTq&F^3F&28^goCNGf^hF16=568Dj`ifc`TlE~ zi3!q{<~hu&ZaNN{h#KX59q!K^5YgI0yvugHmOzVcKERGyNbqJLUF<(ul0FDKe}j>u z)F=bG8*8zKGVVi3?ez5;1RIi70ctS#ceoC-m4S@Anej&mDZ&hx%Z6OB%{BawC_keJ z>pdrWN*AsMSysR2eKtLI{Keo}dp%>E!Nuw7-eM|#YMrCUr+S8l=V?{}(ttVOF{)AY zGuP8Kw}4}^l%=Eo@II-?1*(KAWAePO??WvO5l{l|KERfmxUo3==clwRX0R!7o2FFp z60!SbOg1;qt6DxX^nu>_SS6Jcr=#t{F|9q0F>Sp=)YE-5VZDG~P-54A-oXxO!WuAM za}AJUZZ3N0?TtMZB+=_^#w+oRmS6~V=`ax9sm`0O$+iaql`TRv@cTFWwzrCV+Wh*X zZEX_HmV>fLOi}#DVO}Ow<{kq1xog-i5K&h zJVA#%bNCvf@_Y+JuRo08$#M;U8r$_a@QW~O2BgMHV7cZksk#4q^P+pdx6r!pd(Srn zAVdb?;{d_5$@ezfEKl5y?VZmFG~J4`(Y5fRSf|2QM7QFHA(H?@`8Y2%vg!p-sXcgE z4LjhM_yM*jJs!jM<+++l`Ukj=*QpbsxErdjhFoZfJ2OEF(vc?ncMJns9>;wqSU4>m z#76_i(#5H&_j7G=GntODV43p?>MinyeU!ef{t-^U=xw1qJup-&Pw6AUFyvcM8oJ(6 za7L$Jf_uRABg0;v0_!?N?3Fire*s(RN1Z23r*mGp2a$*vB}xco?2~%9xSiNiI?@Ka zsbG&&JHj^y%Xjy5DxM#p{yH!pmq!SA_Mdj>tM;9M`@={;a06K7_P;ul(oLWQ`j2Do zz-_q9I)KY8T%F{XI)h1VV7pSt41O^`LJFEIcS?$PO{hJjaK{FGMM6_hzw5{swfXO3 zUW(syZhZG0{l6GOSK|K5dE@~6uM>kwCkK;C5eKgS=F;t173~q?#N|8D7O!kA{IoW4 z5F(bok9f4)rx6twe92x0O$&zPOg%rCIiz6p>=e5%z?9&U6x>TnwA$yVF+^5Aa0(Bn zWYuko{=~rry!WtYJd9c}$e&T0YkjnH_OcYC-bumkLtLYaQSV`F?NTrGCKnr(I`LR` zxLvFuYC**a!L^^c(JyE4k_26TH&SZzQqu7x7Trp5IUFchUD>vD^9jZaTJcXzAfF=& zrn%ap=&TNv67^UH3HLOJD+>||Mtjkb^YK-im!6)5yK$o6(l{u5RRlUjk9l5dh%p5* zZxx7(MA^IIa_k_+e7rCG4Aug!Bl~0c_rKS_Hn;S>tlWwP2u{2M;gQ!vm^j5Wg2R+rdI)n3Y z4LcXtAl@q6oVopB8O|vN=79PBuF;oc!1912XOtqr=Q4lr<{<*{bSu55Z$l9W6vIht zas~V4@4y@uav7q5`K$3~_-f^pHWBTCZO)9f`IWRuserSEHqX#)!X`aB+xyhDu{L#t zKHbV3RLv%)NNc!Tz5ws{72v~pU#K(HM9pKGxD#o=I>|A`c4muo|ul8vUQ18d`;Z#^pG5%?0PZ^#m zI{Kyr40Q4OQdopw(^%Qg82ewK_qf+=80p~1Ygc}rl!*Cb4 z;_=!K317FNK}RJcbE@x*4> zCt&ETl+Ac>b0>F{PHoVrSqUOBpu;NZoj)R>-5f=*WG!q;gK0hX`9MHFLTQllG&mHl z0t3db!~j@JQj%1CZ8Fkfi=#KVayTZxMZ>l_aG_Fi_LB1%{3`5DK#18_dC7@Q0y_3| zW`gsX;raHHDq=on@~#yC&Fp?sW231E$kC?`O&Plktce;JXuqexze04bmF~nKH_W=k zKH1}N(eV^_Wz6_$i888I*ZzSef_`EP3Fu80(O>l#I$#Xww%8j*hv8vpRrC{M*r#4E zU_kiq3la`kLt8$HRCnTn)WCS~Ne&5CKV&8T1`ub(%lK2xN6jI4U4a%c!KF^$28sbT zkAu&=b89QALdZ>85pb%5nWwr(UxoR7j486^8fb;tX*OEJK2U{yfIBY_vwt#|?{F?h zzKyx8<6QdWYMEC*Rd~Evdj;y|?PU#?ruAp|CB!cL=B7wYb zkwBv7k3W?^@J3!t0Qn?Tf@*+eNTF+;!3Vg6oIzPqYSKxJl>o`-HSh!V*;dQ`HV;eU z2JCMXKqzF`%Yt&%ESrrXS}YbrP1)dnQom0&1QhIW#-?U3pCnClL#sF!f2!?UF;Ut4 zYqE=Y*0Ky7aPSNz<{wpH@-0MV5L_<$?5Jx^iZiPAruepHIQ-Z&JP1^QKe1|avG+F=_}_~ZE-HW{7!|?!t4l|wNGYd1e~*~Y zA%G1wcgm#&eibOrni`SyUw9qf9!NfE#R^-YYWM|c^lieOqJ+t-;kM zoFIRHlU+k;JX4)LU)?77rYgL!#ced3Wjzqq|e{F!P3-O;9|HaGWzHbq4 z>4=!{gIenlzy;%ux#!`j?k7o>xXBJ)T!=%oa7A21mf)H6u9Q`vW}>g2{Z2-`fsI`T zEc9@XOCLUPcyO|9u7Eo;mHKh}otGk&F-Le0WG|-;c|qVD`gy|s3elzifbSN-F!Ey% z5=v@1G*b<4Oe@Djb}6YIlj0dQB;t_3Mz}hkhFt*f?1kO>qy+wKQ^%EYijkLqB}NTm zl#faAVw%Q-p>Xz~<0-0#O$=tx?GIrFQAz3I^c1%}4-TREHBd%Ed|-5$eL8rELxNBj zIxccdxz2W-P4)R%&m2Vy>WLtYMm+H2o0uv-o?QI!e|bY(JcrAfiWvr2A_yfStfhhY zFg^PgY=TmRo_#2VVIW2&)dfzADG5#j=o9WaBkC}Yhd2bz1t-JzPoW2~$>2IU#OPhn zGeZ<8s*mPPLXG>0v9LqT!kv_E%Z4Xd_*CQ0^te7O zcNBF~G)?sn83^YDg~nr<>Dj;z4E>Cp0%QM>{v_4_iOTO)b@@Lqwz3+DWsCD%@;`xv zV1a@x1LdCj$BuTOv7-s6Vn%Qyhcl&=FGOM0T9^3nNh*_=TOT_^-yE{K;54Q8kzxav zd_$(?;Ca}C3V+7Y`G^ljT_hr`Z}n!nK1@!B$r|WU{A_TF2s-d|>(TD>Ct%Bc2l;{a zn09gS0-WckP)rD>eGVWt=h}@p1=`>w%Z){KMEni+tj17zGz}SFv1UY`5Q0V^5Bifc z)bJi-e})?UDd5%^OshmGG;GU|dS8X7b>(WrMfT>KanryR<(V1!g3Ji@zS~Vd56!)X52-P*v-8MiG*XISD8jLhrP){b zIR@OS-!Aj#kPgQ#UoZ!=qje*S8%iNWn7w=<{@~(sp=+V*SXVHu0X4*?|LkZfZ!D-- zHxA@5_Ly8mU6rajWFm@=)O9fQ4#o!Cmh>St#3AlOV3#qiO}hWX(ytmyw`?l??X>wP z1?Sh}U7vRIQ%d)pC_O$HdXGqrbJVu^yN2vV@&w`W7X*AWCW$*xuHBfVF{sO&Bu~HaFn(ZL@8rVfiMUSr6tz=aes^XDQ_`DG zW>>thCJs!)QISNbas}Na1OybW%}e5oCo?j6E?qk*xMWxcMN8koqbg%P`~H@-?`Wwm z->@qzMhNl}=#x8E>{x+)CBGJvvk?;u!TwD!A;j@S{FoXw={yJoiJr{V@wIu`>Bd}m zJ2@g9G8y*mpt=>!fR9&W=nSmypmn1ExI?V2)tFz8;k;g}9}#HH!1SJ8kgGg5xO_`f zJ1o2w@oOPbdM}6cffzAU)LE!3TuAKo!e7Yg{W$CpDh#IGR%#`dRyUD+Nf_47eESB; zh4D_xR^TiGrOlk&&SWy!_N#lwwtd9^_yG*h8p??ZzCjrx`iF`{G)${mhS;rjl*=aN zSmHy7{jxD!SMVYX`TSI4yzXC)iOsUZ4Jp?ZxG0s+FX9=P;~nSY8O>vD7M?w1FI;rI zn8<)L>F{QR$U(cX=&s;}lp2KY<09iZ{EZ)Ypn-1QcKY_gNcy&;PX7r!texnL)H?h> zIPkiw==^3PlWZ8y{zqKFB_k0?;84ww!*lF6r7ipX7K9l(WO-3_Z(ysQlVxU({i8t{2Y z$={w4nfUuhmXR9XLYb}n`U(G>@gBaQ6sjeq;OdwDH3is+CrQz1Y@FR=AJE`UX&XP| z04%NVFnVbWfF1ve8TPUAU8wv`{I_|Iecrb7@dx5H&fCl(AZ6(m%!H>a_=CGk`cQXj zx_#sJwmXdXF+;{&43W85)JHvqH|@f`)d0{wMAx2ZMo@YPuRUUKXAsWtD%Al{xb)p$ zgSQyPD+nedVq;%P-L%mZ=mz{R27h4flY8}>K z_MsB)c0~#cuIG3}aF$(<7e~DSd~AtjU%l=my|1?AzUqZpS(ba0SHVGvFG9+bMKFFR zEnnG#yu23kXPVC%_8{^7dxMMJiRC!PJGpczx|mz(QfVcra?8QbOv69uQuI+5%0)q#X(3@BXME=m|NE39}1s!dP4j>Y4 zq#OoHM9)`I`9owL|Ic^`yVt`MangRikK)!5vHj34OTct_q;0^@ zMzC|6S=Gx@RnBV!bO&Iah$)oW*ie3D3JE8Fu`?qWPLCHEufVR^38#B>kwG}*)Bc1@Oepi1)>|T~3JIEKWatCSIFulOP zR1DK0Jo3tCIT$2%i1X5I;Y6@o&0eFIMzKys=TqBn!{J3;O6o(~lSMAe8UJ_6qqS-n zT~CqRUdEX04rH+2{i1;ICPmtN`qJg43wJ}@X21>%yH}(hSWPVOA3*D-Z7&9iouz}? ziLua=<=ya?YRb8MPHew-bNHiJ*W&R-dkWqsLUILz#bqe3b)CU0V00~x9ENpHhlk@_ zAk^;?Eq{&gYAzhkTMc-e|#0~hypvBbOI}NdyY8>$!A>`Lb>LJZ~|5aM@iH%;#h;x(T zg=Jq!y$aurtHjc!ZEYSql(I;MAbg(sh^e@B#njlsmHNEIztxye+uB0<{RC}#(;lZQ z@@xhj)cGJfVirDCFYQHEI%dU4z+x{qO?WtijNuj6sOjcv6s1v|X}yWF0b`8ogZ3VM zoM#lVDkSo#UO9dwg9!W`p9OH~q17IwY_Vv<@Oy}sPC{4jhmheMwa3$$qmq+fFZ1R& z9f;TiM}x@J^f3w51p4-X%S_+_H}*oEwwoYSo%0E9KlkAPi&7EQ76*D_;BpLA4xNIA z@IYD!Uxzdt?GZkr4Nvx5LxqdL1VR@AppU7nkqi8GU^X0-^^5%@*kfNeFi~DQet-;o z>;;CE<9z$F_<@(mc8t5{1xIq z&cHdmyMu3N&hGocP2bjeql^X-LnWAje~)ZkD$r8rxD?{gcbJT7b_u<^+U1{+j;>{} zYaX01a&AI9?A8@6Hf4ywK?hjc~3^Y01=$ zbVN+B@LjP5YTA!u|DcT3WPQHPp*LBdb@AxXQU2%`U|F9#@QL+FLsy{O3_LcX-(a;QhWEz!{c!dX%&HPax!G4wA%UBqsqlsC20PPc$gOU zoBN`$-?xTA-ZOaFpRMTGA6ZxQIr}wI>6~g=(WAMdc@2*h-KW`#?g;<~cWGB1akhlS zT$77iOtQJct1xq++mOwIZ)|}!@3rx}w(5F++@_Zo$a(6X`#|jx&j@#*&pr6twfUd~ zsR8R=(%pzp)7=uE=7>tPgfNC8UxV%+mVYgU`r=ukjD+{~Fmk2~lBvlsnh?Vd}OC(no zo*rM~l4yz6m4!WHC3t%)y=qfgm=RxsfxM(wDV2q1#7d+_OSG*l>=j>v9^g`sROx7=B|eO=`6e~dV(^cWB3JT@cd`-h!5mz_02KIa88^2_%x8axDN z_nvuJH^JdOVG7~wk0(eDs;j|zz}c2w=S;ve)ZzIEyB(rAHtM|fCU7vmmGFN*~(~Hd~G@!)EiIgR*vOf1(}nXUKlWC_aTa;XJni zo#dNK*(1=art=iKz)atNBYL<~t*dQs)5omkTZtWu z#y@%_Az#Lz8aaeF-Tjm|V0zipBP6WyHqwZ$a{jQM6PD z{%H2 zdDNa;`bn+O^RZ&?x0L_);aL>G>F0)iAQU@3@CU2Hy$v2CD!-%rntMkL$=UR`iqrJy@R{GV#;f zz)wWi_AB&}#86`x0$Nc$tT&Nw$WGMZPWZ;_Nhv&=ceCMHIulqjUNbs|VxPB1zkqjmKk|w?G%(fP35YO=P%K z;4oX*p>D)8fX%9)lBanUNzp3Udse}0Y8W^SMLBt8GYK1j(?32nR0d0aVx z-R>~vbnkVJ_0;UpVqFU7-rGX!2|#<()^+FWk}`GMNAjqVIQ}}b8nJP29YFpGXC1UU z3avt~7S)%{(3&Dl#l}ADazC(IblG0!!d&5i6>{J=Zoi?ucGTa&iAzDm%g(PxQ6t#k zQ|JYVvs(SsUm6{)rk*Lms@(h;sltQNKrlP)x)u8IEdQs_DS+|+_yPn)kXfC6pDJ`d z>QUV*Df%H;4ZO{=BC`{_KrhvE{f@G6u3-0bIvotoNWTQCi6Lwxy<6?=1hrnL z*Z@USk!h9Av{s3=oYd5o{gIlkGBVw) zGp$i0&6;=|(3vJ0ncR|zmYO4JANMHKoPtMEHhPtaY--POjqz>{+!i91(KrU)8h!5P#dO@#x)`7izV`VQ|UmVPt4NZYM-cRV4QJtPgy|H`4 zBd~=K5ug}KP^(B4J3kow30psQw%Ys#n|d0x1v+*>#ZLQ+n*$wN<1g8?K#>j|SYp9# zKwTF{MmN_2|C!OSDIP(oUJn?LzOy3X*Xip72*MweXg(hfdUqWHOuAR-yvR}=Yn$yg(-2P1HTY$n2je<~f zdVnqaZxEic_sm16 ze=YxZC7_U;u<>#&AOlZ#(&)H^svqvdad}e_Ba%EP+y;LLOIf~^coo$f&uEXff=Xf#JBN>z z{Lrogb;`#NafJrt7JP(PnddDdZco$MvGw767yW>lc_3`e%p^TCKgi6qSuQhk`z*{% zZ+-t@FXKyydRi8tA9`9o%hc1-0Wj6p2OOD!?DSKbnBTvn7MUdOd*$$M3!7UZ&5&vw6YnA=Y}f=yW`hlHJ>y{v6V+(^tXi7pS z6&_t-I|pwe@Ei(mA~3HTpzUX+)0A(i2y0N_`A4GqEL87Y4QVf>yyn)^kh+n^I_u7^la{{l5*Q%bw4iN7TL zU-aXZ7oCrQNvQMuhjGe#CB}d?Ke6DaxR*(yKS6EJq2ywjY4V)ARLJwInIO-ycIX`z zem9V&xYD_L;i`H&c!l`T`6s8uCdJ@_rhdUHFV1DCWJ6rU?;6foZT{{AD_bkBb_a{r zxP!&J;Y70y1Tf)B_VNL)2jIN|wj-r@Y^X+L&Z&+mj;W4|)G%}()0lxF*vme`+QwS| zHMXTtsTQx{z4oBPTfner#OU;Wm5A_{?Im2}uNYixV?VtBmN=_X81iwz;5p!+SCj}M zKD`2nSj@u*?45-s6>bQ zU(iw*@lCM2(_Vd%Tc81WlmNWMo5~`$pi&K4o1lDv;3NXuW|ZO+whVRxe+W3B#n2)5 zIZu$onHZsoXoC8=8*!0e4JoX(+_2TCo%dt-f&40Y6bka#knO^b?#D~0IGJGK>{DHV zLH`z>K%YWps`n5}WulhQrm7xYWV2h3)rHO`#xS7O1@kA$QUY_gFh=h{SxXb~@R%|I1~>ciOd&Tjc)>ME*ZNPW~6$BWECa(UA&Z5ChsyTH)<(gWC;=h!=hWrzx1|CFUGdies6zbt3V(fLOVzP5lI469SPV+= zHYyKE77KjDeVm)*u0{i+^M8Qvt+v=!^_{H&5Tp7{_6cj5W{qDSj&`dN8uns$JaWTi7OFrv)c z`z5Czy4_~)pI?J<)!V>$i!DCh@>U4K_w%5;N*DEJt9_@Sl95TCFR}Yqt6lhl-e~~` zA51H|)Lcr4L96AZGqFLT5>4pTqzu`Pj-D&^!OY-vbOn6^ak08`U0tTGZsqjm)$Pth z)aU$~R(gK68hsZ2DAQr|_rPf~RP=XfTz@ll16#PJf@y79=ipxA z^8AY-E$~egTOfZel#GGwe?JcHNd6u%6$cFF7RXKUCx-D-DTcD{WWmfOx}~=+Za$O_ zXo<&rz5OPC{fnOa(fN(uL3%lf@eN)nz@Ua47I7b_i(nJxESCR@H57Ua|ENW1OUs{v zgW?eSVvF6cNACw5{@oxmY!f6RI1XlDZ#a61>TR8x4LSzbjp&dN;Y*Fc4pVev+|owG2o=Syh5Q#r)EcTg($zt`pz{t&Gr_bm z$f?U4NHv%IFqASv$4!qKOM=mx{Cxq37fkz%O&wO{t;pZ6_yZ5VcJB-zN<%hKf;Ehl2E|fn zSr95A)3`QX-kL@Zok3|Uki6+pu6$hVK(`$`x{muYc65b=wGF5{0UIldMGSnPh@&`*4RvMemBh~~?ctM@#h1lv8B){kO%oPB8#)>QIudQIWnC{Xpw zQJCw=3}X8s{a2s)?|bQ|OH0tm6glIiMi9RywNC{_j2GSTt4a87wtPZ$jCl^kFn7hPls z&2$|xlr`HQD1#URy&gyddI^OL&kYbT@~beQelj3?`CT9t^|ud2>aPY#R2fo#wYmd- z;}G4e)gOdLj}xUZb_NB9refUpAJYiO-THKT#jZiF8h3CeB9YX<>#z|XHETU1-FO57 zm*(;^dBoGzBK+_2V{>evE=jcK!nCv3SEGweX28ILAta5PtN{7 z;Jho@Iyn>Y5O|%sA(ejBN3|7`d(?vTC2)ux4^Nr165am1M0nD85+O@1NyI4@w}o%2 zEEI4jEJ$_tUyu%a6k||y@`)SRZxt;Jj2jZ(oQil64KVFO;7_dTVh5Jm(b$f#q_xCg zhU#yoZzKQG(`xexv#P_P`&hJ0<9PbY~ClLFhi;>*Eu+B2VDUbZL*E3$fAeIX8AZ0~+_Jh3}t; z;37SkHZ3mST5CS2u3BIjn*O!_gt;5 zc%gpWAz^@dPC|^MTwn$s71S{E(GUNL*kTj<8}&s=Kj)~{~z4`+*GkD<&w(8T2Xo6@$$gKYiPR(-F6yf(yjI^(enXUu3(NE=+*Z`U^DtA zs5rD?dP>|5E%!OR&r&Z#)rC@BnwO$-upH(7{Ql^{^F)3)fDVF)`rj9mA3o2e{O}C^ zwcH<>`qo01|2BmD}A}xB)HMriyWC;qv{F;GKvI z{G?2vWgr(yU^pHQ0C+I2mBMUu5*W@u+*0Gq;~Emlh*8*;OlF#K=SW_-G4AruLo zx5F{yi7AeQ@Y8SnCM`(cbQ5vj%=SOv61 zV`7qX+E)}~W}H^vhM7pvrsS&;{Ib=OQ{xS#t~9|_hoN}j#%(WuMq0>UBkxGiF4x;8 zVtbv(KbTQCgBut+N0o;YG4$+@&miY4S)=kJ5-$?Y1jwfjLWc&_s{4c(>he-@Ifbg~ z8lZt!V*Z3WhZvrqEEH_&oc4Ta+Fq8#Mz-+LKpt1t;|nB{{Uxd~?PXK|b>qZ$ClcYD z;tpI7GFpf;q7}XtlG#kj zFlKY%9}tj<-8O8mNq(Cia zQxD)9ma(f~nvPJyCPgh}GC~VO5}+f5|NfMEmcAyMTvWrfJxqJ~WsV6^(6{2<50IUj ze;L*~eU)k;*|N>KxhrUUDx=jyaW9T1;2mdO6ZRwz%F>YQa9Qv-w@FCxU~ z74kB0s=mk+EaX*a{L8#TPRPf+dU^qa-uC#Y21^xn(DJQZ-InVJX8=ppTa>_Q5YkY8*KvUJ0ErF}& z9-x#xhVut%3@yb!n>dyF3jMx+;{Ki{Z4l#D)0E|^m$evjA50xBP7U1vuOfUO%+V-v z-V3-98J;#R;iphf0_w5IJG6(B^LMKD;9HJXA+5oK&oKIB0^^YSAq>6^is3yVWb~ig z@JbL@>&Cl04NHX9;w%C4*}h+)i9 zLd75_$qId5LvJ$6CR?F*Y3OBUS&qW2d7g&438iLpT^lQOiiVCRltv8e=$vPk9j>7R zO(^vSCbWx&b|bV6%eJ#ZkDf0hN;aYGtN#}S+H>#p^(08>#(uJpzmquI1`HfItE>p@L^f-ZAJ!8v1K~6pAB53_4Onza~`L9cYD~rlGscvXmIic7LBF z)5^$f*QTL836-^9Xoc>>`-o8B zbR<+L=RzxVtA-vP2dIp9iWT~_hVCO&=69+UTA`uu5Gu1kD>buM*J55w#a8GH4gJ{>ZTE63^gIpSOQ_7?6;^15hHfWR zMl{n3ZKa{Fn9wV&(EWLWjmHR;Il9UUMXYS%>P|uhle4VQH5z&gp)%g9tO7KB^vq+p@NMYtI*-tk*yo$A&?F7LnowC~2+$WB(SdP-jRHailZYD_gKpE%a|jjM zpnaE#jb}A9)2x}XxJ>As8rso>-eQH`sG*0)qGp-jg;r>xhJHb)U}KRLI#fg7Hlep# zp`A7Kzl2JkZ?i%VJ7m015-L=;*b3dFp?8@zFR?<`Y3OZ)%D!J>g+8L8*O~1uwL+I_ z=*5I0SfOp*GAneZhMrHT&_<~hI!;5!5Gu33+zQRq(1C;s#olg(w${)dgi4=%R;YqH zker`Tkw(g_(6=?To!M@=75cn}9yA42$lJ*v_iXR=re>0HUd`Y(Xle#zne8%`wSfeO%Zk>Pt;yydEFmS zL@tk1V0?(lH>(aRpZyIhq47xCjL=}g@?TPOx>@Z1f4=$qSLXJG)_a)2oGS(?z+ z8fqi7D{JOvX+qU`f{)`lfTk15rD#Im*3e%Gl^Nz#nb7Ao^m`LZ_F+Qr($Is1_F&Ci zY$kM`1)4!97r6j9{aYP@#=Ds(VL6KP6Q9 z97lC8XsBRAC?}5UR%+-@mKB@qrmdtP9P7en{@{Z!EgX?q$Vu+Sbcd7tba?}B6XuqS}92#T)~ZGxoWyj ztuj+rGj*I!U2CSUVd_~rwZ=@XW@;CmT5qOqW2z0Q81+g6P01=Uha=p`W4_J9=BdI^ zpNx~pi1eWgeU2P4^cnMA9BR#ElirF$bAYPYH|L;rap-YmvN}(i`OW)m_}Ou2uy8AW zy8=HTq5OI=y-x*8){!M}vl>|;69a>+dw)0uBY^!3E;|t8uczdyb@;~GJRLDd@W8$$ zRh{bo9Z$L~%fbzKXDldqSR=qHJ+t$x5b*ZMW*e@=(c=L>^&)`N-+%GzaU<)-CFN+wA`n^*%xw?o&^GdkS4jpx(!WZfoH$)tXJ& zC&yh{AqK{3ICtC2s5!&M%xe1U@LoUN_;v^9riP1Q=aQK^=ImwZV+PsFw*r5-DbCA0 zHK`tNWUP1v->~Y}Q9+9;)RMR5@x!u51kVy544zkX?^IXb4pR~x8CfC=hN_qc7Yb(` zio-Jb4u&mQw$sN3XhsjzOOt-bljy}qS>)LFaYgPx5uldMG{#~N%P&Ad7|m2UgO9Q)-jM4@AjFCs zwrT1Q$|UGtaxQ3Ezo`M^uhovyP1JpWLhb{FI08aoIW&{7-`$9RmDeRRQ&E?{lGpcY zwtR~RSzUf9lL~@!(p|GwkYrpzPiqiJMA;!KxHK8jvts{uQA$F%<^FdXeOPaMV$^q7+FSAY%oLBhG*?&nO};^emEd2(*{4!oS>M&aqlMeFKfZ%p^CnB+lwILY#8hxT>Oy&fj8flaxBU~h#gy_F`hD|pJ431AfS zPK=R#L=~YOu*nf`X*S7+Cr-wz6Xc$j`&zYs-zjnITHB|__$^|RB9;J*@?8EuqE?LP z*?G@#_uj3Jd~*t}NIk=lbmucnYEb)i65e{tKJ`(Z^noPV%efO_>%VUAN_iR`@!IeQ zo_tHr#UJj#ycCJ7SczPw6W)7QH0PMK{yb@XihESaHoK1m;8-t`gZ7^{j4^;~1h9l% z=r*kPU24SU;}IH7_%}Q3dGE-=b=W7qV}I?KBl58`Fc~+i7bZCUQ&TJQ+NZPT`LEGf zGVC&Yl82scoP@62NbOZ*&4e=LK(p{WDBKfj{?5X~*rKhj`AA+wi~AnaO{ICu7S& zCPZ0ZcllrU1guti0%JLPs<|Syv{syg4jC~6;eFK@Z^dH?n9TE;b^b@fUJ0SU97bPc zv*nct4b2${lh;sA|1q4{DpR9D!GdYu&!gSL$xh$;)S2LYU>(QsFKvKE;ujV^j=;tA zM_uDDTI&ofrx<}R7$)Uc=lQ+67~H8AzCN&fsDimo#k3UdOv25I4^)k5;~9#upXGN; zWp;5_3#MJcgQUL7htN9pB-r<(hj*7DQ%IZw17lHHxEh=qM0*it6Xs4EIiKodBhevm zT%~wN(T~kLOk1?MV5H*`pEx((`|#C(F{f?Mwz9y3snXW6?(n$_ro9^n+o54gyXN_S zhCD3dZ z^f%R(S7lsyEHyMv_98}`=Ema=yulLW3O>TiV(pKKT;U zG4btbCeK;vV>-A@eNDVD#>W!if$#GFj=1@kgTl0<043xN!872s>Fzo6PGkwJu;^+=}3VNZj?wH#Iuyq*HsA$1>; zV7p`5S1h}XOXsh{tC55IKUKZHI)(39^u(g|m(WUx0vK=yi?ZSh3QTxGNxWGoH85g7 z7w`M$P~u+?vr?JD2K?*rtukOQ3q`z?D8T6_T{y^4oaa7;<-8RhIZF8nLHBdcxmXKhibXg%NN^=TRu#YFBg5Why$~zg981no-fNgkt;8i+L7dU+_ zNu&u=Zi4sMa9eS*2xs6dJ?jUV@1vae{FfTyn?bN6zZ%jFJFp*x44ECz*eyTC^SgZo z)$nZcHTIY3)FP*kLA}O_FX1a7gTAMEm|39tFG{tx zmO}sE+m84Dg0rh+iISs01^UJ7vP!QVW{&$HhklMu9=cH$@4&MRu0fIhd4OV4fBy5v z+9hcDf4O!=T%>p6l$+qO&tsh{SfV9~c^5U8u43k9e-m>vS8ySOWt^bl@ZRYQ@I>)( zNkkk;m%lsAz2S619}>Pi;_Qz=0Spe>4TihRVZ!?rcFI8m zt-I*sZD|~teEYf>FDL{ruzGAqSA_Se(8u6`=I5%=xzIo}P#6$9kgqTafxn1gYb3$) zo-_zNhJVygyR8y$%wAdio6&lb(YhbL6!hu;N|wfn(q%KjMLs4aLmmzw-ge;p7WN}z z0l`wcmY!$xbi>mUJ#D2+uyGjtqdm3}(6=qz7aRog6EqS*z9`os2O&laf=j29F?A&~ zI(5ilsSlBQPXCxQDc~pwF69?K@3bAQe(wH9Q~YImtR5p z0ZDkL*X1)#4G--0@_XVP*vItRTa7udp&DNYF$Zc zl$(kF7`?U9g!ajgQpw6@m8=$;r9$c^9*s*&uyuhrg>N_jy8Q3NkzRhO zzo4Qy(RC-$jU}s!&UcJo4KQeo^oFxrjJ}pz=xYQ1HtB2Qp}!&xva;&`nZ9n-mHZVs zEHlZW1^Q}65B+q7e@YKeS6~bzi3}l$Gpr=>7xeJK_kT_g1*ISc(Oin2Qnn)!!=pk& z4eF_ZLJX^3juOKjZ%446c_aqSbzL8vf(zE>{3pg$u-68Xrx`VX|EXMDKuK&AKAm3n zHt3-A^(qVvENKHioOszwt5cm6%`_VdxX7C0X+t~Ai?GWVB_^7ounJQhBp2*NraTV( zj4;=Wtmh-D`nx})0#d+aOLZiM)2!%T*#f`0R##WWAn9=LflEZ4WAnijhwuH?dH#|$ z;<9IS_B-fo1?vIPKYGScbkU5cGkIDr*LO4ilcF1FN*}J}wbYm4#L1U`@F*OsA`5CV z{$})6{jEV5d*zvc`?qZVD#f>>wI6;~!GcnEP_7WrLA*xK?|JYwD(CaG5uXso*6EMF!xR5nN2mCFh0ajJfDa^ z8|i)Fu%|O89?u^B5Aw{0@Sm*-&3ZTTXiqBW%&G4(F_Kje#L0Kc3;9h(KJ+u7$p#~aKZ>cEd3kqLrDHK6fraKx`i zw4Z9|;T~SC!wTMvfHO6mc`pJ@Yy(TW7uCRX^r!npOUx6>nq8;BUF$oXbLRu_=^ZBE zZUB%v1F4z!n5nnwR6gu_b1(BCfnyX}E&2mTK6u4YBr={|&k6l@k1YcKP%I+oygEK{ zDRq>2+m0eC99m@b==#+DLT^2sn-b|7nBfq9Z;E{>` z`j}qlV^)Upk_V*lG99NP_J|Z5#^dgHqbg4A{XawZ5Ez5IeK5a~`dr;hds&!RBJ%0# z{_a5O=^5n9O2$Dn&u8Oux9t>$+b)7k^PM^xv>Q*by&(5poVrgesB zq%VL*dVD|sbxfg=RS!P%t3u1Kvj4*SqDK*Hu|+J}p-BNdM$q zqvrOg84+l6rAmo`lim4CEd5~Gqu>Cl0+ua;H3MDg#(~7TUgPnV)m>(koRPTd`+yOn z=YIA%8rI|S0fMVvy8&0P{#WDb0^$lJ=c{wdpgR7^puT?0GAIkWoc_s$&C%7pZhWC- zY))_~wFSmJEe*QA+%!BXM!GI5%Q`u zV|-K0`CBC8y8-XzwzQn{AGM4xGq&g!`2(eB!x&;3*4;^ZMfa@p5y1Z;&{7Jx-N_tf zG0fFkq|)g5sOgoA=2vUeyJ5 zzb%fB0RGPyUw3Hv)Ir!c|F6cE8b7`^Esk$_ri|~SG>q>7L!}-YAH_f!-#6V`9^adP zZ+Uzy=nvH6-xkM50RLx;Eu5*&Q-)AzGV%$cQyL1ii)%VM+{;J`Z81=y8`Z zlRjy}kQyHBEh7zg#z>!gQBx{RySDhMMGV7(O2M?R0c;Wt#`ZIGx1%I6JXDKpka2X+ z1KvG>qDDNjaY$VYQ(KEbw;GQ&yg_l>2!MnzKO+2;At`pntNq8bc*%>WTnQ1*0@8z> z0l3o=bO+64I*>_$v95G+N;}wn1iBePqv>gZ zh#KG;4XSrH+60ZR8?OUf_)!$D{UTH?>LuuT=MUagSow>GW5 zuci8}r?L9pvFhuqd9i}-Mb*OXU4FSHa`;#9zErjWNN*6VQxKvOz(S+~IGsOrVsS;Z zY~nTI#uWU67w^MUEuC@Y{&?8>D!uR>SEA3%i#aIIvAtjt)kcYt(Kq-1CCFGd^eux;Dm=?2cltyq9&eT zC;^a_F}2|;0UW^lx&k;Qdb|p+;PixUgyfEQt}ssp^}J#6?+7s-ZB+iV#BYCe>m4Ku z#*Z5s5K{0k8ru&tk83kz9+MF2O>KQ%lX)5=KdIK}HKWrfR!cv%aE=oRjuY_@Sm^UZ zEWQEgQ}1{K&gWfJ5#z_bUa1?tnxU@NV`eCXUrbtoML}vEZvQPdkiU=qt2?Jzsg@82 zk8O$CK>k^X17p9k;3K%j#78fqTQPi8^%Q*kk_vph@|+bPBiQTzV|-ZJ>k(`3KmMlp z&(iIcvAw*w_71=c;Qy+`OQU2YWiB3yBHQ>p@IpL#*O9(a&RI#z zoeA3_jj+FKEM3O;P3WYH_k{h4p+5L4${a!&Ob({ajT_#+Z!I}^#cWj5+H;axwJHS< zu;`2i!D_6ta^_3GrMM)Gn=PTSbY z#501%0vQ)s`V#g=$KzebvG`~$gTRd!VFc54LE)w~Dg&kJ1dM8J64y}h;Jr}F(H0?` z0d>csmkkTP75sx1e5>$>oc+hA5=op=u#)JxRZWC+j+n#y)p__sUVK%~ZyUFY)cEs#&c}CAZ zG;@dx8rkmj9ZOu;3piNE5@yWxS=wMvHu+GHpkP`l$~O@Oe*FfxxEV%^3W*EQe#&0TrjaGv>ovJ|>FlE^}WIG}Ust154DzCUf494!T(Pm49hKZ@T zC3ez~S9V#a-~qc@2zPj+gQh&9w@B~ImOSj!!WDCx`iJz zzF#3n?yIJtZu6w%4>=r~hCgWy zin6|%Uwubg*>7h|C79UEh-~*AOSZ3oHlLTw!8Fl%o6Op`*lF`DDZ{&74&Txlt-WpC zfmvC&tn*&aEj1r&%ss2o0YlPO2zmz;JoaFP%@K5GCOT&wi@*~5ty%px(@Ht_ow@E)!7g}iS!w$2d6K^BD^=KG%xs193CG~227Ip{JhpJGg7n^nV z#y8lg@#1X{cErD>0K+H<+~VZYNJ0`vpr;Ui0?8LWfD1N%1C~+zWW;)8%Bvs(zQ74Y z^|Qgq3Gu~W#8%JM03rdRB2y8=E;$($g2C(Rc<~>}5X$n50cE_^hEi@xBZ6+%sINNW zKn?!^&=}|uuQG$iUIxLkwC><;%6aOtvoTKTo!Aiwe-BK|;u-`Omou#Izhs@xX3nA$=Ys|Uw*F@`+Q zH1I|8Sb-X&sFbTobdN7-lB?XXf$Lfo1ZQI$$vf`jnl4C@C5;KJvyC}p&>*bpB$#|5 zuBMv)sz_J^Tc0;)TwUJ4q(OrqZw+k2qdex}i#-26N91BI@mo<7uo^$Lk&HNw9p5S1 zz!lKWrl1OsH?QGSxacFC)iMJ4s2h(M!D2lh@10)=r$Sh})p(q2)fE^H74@{tlt{g= zWNiZcXYgc4aC!uG>zV0RY+(P;`MpP7fg%`8Up$w718^HqE?I#2nDQzxc-pAj%l-kR zDc5>XSzsY_2X%4}sPdQq;S`D+(#+ZTj1sl#hmY_A)J2@1LH&$=Elt-)(UV1fe?!)2 zWi`&8BsFzJ60+}_NX}(6^EuM^ERfO6Hhf}T>inDW5n{+2bhlnT!_u_X#tS6k^79|` zJDArk!8z+FY&@d6ou5WgxAPVhMtAv;!R4#PH7y<^U8?Z7>zqbUJ~++~+}y^fBGwov zsBs2vj*Z(b%@kLICTItstf*_?9clHcw2hZ5g5_`ggV1W zO2IL$6`Jk`oR{VKkHX{UEp!GFX=`)_*T$GSG`k4ut}PwiUnKMTwEF2!VSO#zeKX2gSb!ExefK_Dqpm?XI=c~xi(`q|_*U-V~k7F%MbBH|r%K*#{L`dM}5t+otffTq( zR^z_gei!c@Ibm~Fy8XXluWQ6!r@&g#6KuF8+pvG4C#RsXG~JVA_M|h{e=x1R+5Vvv zvwhOxZD>EgKb%VHuvK8)s%w#eFR=3cFW;fVL8u~2Cohmr*7kEm-bGMQ?2yR0{Z$Lo z?Y!a9U#^0dYBRRT8#6c{%`0g0vx6F-}pXI(X%AkbbgMV)K%qG)cR}Gw5 zm*cBQ5RyEi{waS#LwFeE_$WTY=Ne0KIq>HMKgRnvlYx;)g5C&((Za&3z)ywW2W^0} z@jMs|B0j*7EFK7ItQAEwGd@s^W(EBPzKQl}NdOw~>MhIU#nDwEl4{Iu;Pr zWXd|;DWbZFfr$4B zx0&1zHs`xp)lT!gXnDUJenNbKn2%I2m zsBqjEf%>vnM^Xv~TjLt_7KC|uu^md4C}-FrQKA*87sGADaBI|zz8LOD&Okd-;Hfwk zM?R37tnbmT!@m_w3*LZaUi%!R89_Bis5cg*!}oiF++_Lo z04>G!&_RdVBi%J?tLA!%&=4k}nGhe6ViLaDY>1Du;f(ezuX12@A}o@bTNAiVfN32% zn0hggy5kdUkH7EW$^uf8CyhkO#PrZ3$g93KlZP3}cOlt0PsQwSQ$Z=fsfFJAlHS|+ zgx)LWuc^PF52-)K;Z1oD zr#F$Pepjt!c10c@3y&1+hj&6^0*-_O)~ee7;46@PS*5`NT|8Mr{L8-KB=}jR0NpGz z_(d_%!se2FInx=sMfO&m-oC(p;Qu4-OW>m@mj5@vLJ-16FbDz?6*YJP527GM5|hA2 z5<~&TBZ3AH4GiK5c$qTq#~$o{|I z>Y3TuB&hHI^YfAHO!ahES5;S6S65d@&cKAxBGQc020&1I>ViqFIpF=)^J?U4flFa*O&mBqEpi|>Lld6!*+x->F0KOB)6TJcVUj6hZ&WzycTm2N3q}}fQ zd8vNMaTh3i?6n7NbidXN#Eu8<{b_BK1Co~HH5KR>S+!6lvcixzSaS` zOGB1;D+qbr0hz2JFY0feazKV_$gRx;x3dW`aqFicPY!2oDV-dUt{QTV{-&h^;?|Hi zn+n#0bvr_X2$svBK@0uOfA5O5vspu0AA!|sqO#{!+z!wN4=8~>Q zU9Evh8h9^(Jj$f`J5U4n_Y!Q136!Kya@gr)4g5p{#}i0hsQK^Kz&AB;7=h&RN}{Y( zSi1742A)fxbcJJEeV~CeHSiE6e&GXP)Jz|k6*NFYC2Nvza;8hD`w{^AA@`}(ex z*dBK&p9Y?)fnO6SU$TU{Tmus|u!cbCXA*(uYha|O5Mece5C+#u#I(3n7Y+PK16L5p z=2jxC2l;F?@O2G*!LF8mFST0<5gydQhX~|HE2+rT1`V99fpZCrG5bXgyix;iAyE1$ zgXkU&%+SCh0;Qj%p}I)}Q#J5n0@(}A>`MWJ&ujKN>J@mq9sb#1#;;8fN9wv9cYswo zU5eUYqpq+0ou=+5?{l*-< zEwm(c26U-4&oi4nUba>z$xC*JrD5=}Z4jx(cS zVEG(B(cB$dfeI0RU5nMeHbk@0g<>M>Dc7;0{+g`lHcY{u@^X~rY7dUEAuq%mfai7o z#|GezXDkEIxruMMTi+?(LHJWohlt+U#A*60_&Bzc8o_nigT&&CGxY8ACzd?f`-3Eg z-Xgr~Y#{m>w;eLMdKletxzxwyo!{89cia%+W= z_sE0YZ%_FGdEu`_OnSAtiXuvW--)+eTY=wK!Gdub{DV*UCq$qNR(^eL4I0JnL9^^{`#v$7w=bV5yk+?M`4cp6;S00- z=sUsiD>diEb`oWfRCX{y?))m-sc-ta9nII<(CtPX^bK`bPD+4QDF`CtQQ|$|JGI7& z&!c*wYMHQ6wXebDi}n_e<$q6EIE&+XAo4^sHlCgR!$1}#qGkB8Go+t&W~lzq>vdoA zF^HARce=C7xF`@eJU_X(olEx>h@GTk)p#ji=T_zQyWH!;23^k7`q_z(#-qQ+gYt>z_xVKAycd z6Nb4driMFw8&<$P-~zoGs#uD3qV8wKirCM}*w1S7rwpJ90?bg(KIoq}_|Rg$2?kjY zjs&uFelW(oQNHjf&gEgPZbef-}$4#1JPB`-1YEV$G!fxwZZ@7|-OO z?Loj|bs2)3=`zi^nSRga-oU83NVWR>A?Nux*k6Bw*MDb!ajtfZscF$I?A%0i4n6+K z_&Ky`yMH`~KL1$bb7(F42HdUgU}FIOujB_Pl(-pLCR^~+0>{o*p+D);pMfA?Bl8d7 zT?F2>akxH>1K*dauO0K#k^_|Gk#*+$^y(NrH(boQh}j(wfgl5c|)mfAoBHcMLCvfwwpD%5pZ|9yog59Eof^ z7!2k#p>MFg^4A8KG^>w^!+tZ*+hM3W?z0#DkqYTUCL+_SGu+SnohpQ*gCkI*d>tBv zT9CmK3=#&!3rCxZ;9Zo%Koh7QR~(7Qg2w*Vpj{e14$qb{RHoS=ex+|Ri*(N`VgLrF zNNUV0y+J)nf8ps`yw0PtJQKq?;$c)nAOz>yS?V~vpaF;iY2w9`XC#u_qrQh+GfoLR zUNh>rp1OLGaPR_PQT0m$x_!8o6d0Wd6Yxb}Y-o1J&?IqeVMT4SI&!NyXdpju%YM!3 zwJP&|j7@t+CBJ!o^+9pZn)Zb4&!4^5>(toinJsd&F;qb%MRFfidB^cXl$)us2clnK z%_39)jm>&u8k;H-j9OM`GK#{0%MPir{nwk~23n=}M=-WJv6_n7cX7TkF*VO9ftFrx zYUz(2r|!iS6!;Gi=t-`l*Xg%>$+za}dh9|eD|#9_GSXD`Ar}%aiLYmDg+pDpRmP*D zu8FFr;&}~aX98a!hW@7~L@QgVZr})BMLoXS1xl(egTz6b6L@YN-uZ4dfvO*Ctg1`Z zF?&!OQEx((x9U)8>AOk%x`!_f`&4|fpqA|-GZ9z4DNL_L}OhUH~} zaSpku*Q<1g6a-3eh5b0-i>xX@v^Id8>hMaH zqa}g+QrKbrR)-J#yg-v2dmDI(HQw*4y4jv+gdq)B0(fEGSHW|VvhP5dgQi8 z2)2Av3V#G6Tj0lW_z|Q160;nAWpT@6luXhkIV2*VI{p1#V_;!8IzN^lL-c=7dO-ps zYrTlV2*4~1x?MO>m~Zq{_dJX)Ah08_LArz;UCze`^+u}XqYHnLRvk<?AHh6{Rpb3FVPYVV^0Oo z&WHB^6_C22LqR$(iCt3}ChAyJlj}VEfsOgr^AjM|q8f zn$i84{pVly>S#Es$qQMlBdAZ##do83);fx9{nWyZwoVZ-y+)ztxOKEMUC$d=m%r8#nJ$%nW67mB#xeN4V_ zQz|B#gEI50Z$M0T^$v7Z3^)}aN$Jy@3razB^8@2*)K|#)foU^8&=-rIM5$<20W6L9 zu8)#l*6aGcXu;X_-b>%EUC+G#dVCWmevF978TJn>d^kk9|Lv70?8nux&YV(zl@xj-C+E^2{o+fH( zY63Z_zE#m`50gtrk_>7~;$34fz$w#Kf$RoEgX!#fg zIp68O94)Q=!P!zST8c~rtv|!-dh&5-nC{pJTRz^}BOQC^Rdmdl2AV^$fb8(HmMG}f zhtV@UBFHx7(k{d(X?|Q|wac~f7bh*|hT$F&uLq$ANSp1pcx`j6r~igOH=G{h&%%H$ zI{z}e5#!JPZ>1Z*EI~Kc-K<3?#-DfZYlJ_+@10chpd&}+PtW-Ai#WaX%pYw2aEAt- z>jLi3EVx(*tgkC@@(I&oN~gFM7cK*zrX%DF24pjy`(D?&g8ZsB$1}4k)uGB}oeO>`+|VKy~sAMs1zyX3}h{&9_ft zLo2pFDe{{cPoHb@;m*$wB5*yJUW}$qA!Mp3D5`?WUX@vwW(`-9hQf@5;*_-w6a;h# zOf*BwH3*Xui8#@o{062~&T$1?|A%@A`O z3uPQ~Nqsv!>?GjUrKY|ekJqNCD^Q8m1avhbcMu6=u^Rl9P-Mu9ph&05aTKAxJq`Gq za`)BoLXnH(8k>N|9CD{;XNTM=b!G7Xpl=T$r;s%to{hKxbca**nv3eshoxUiH_8{I z8zXR63FnNMzMYBnB?TdFKJ22LRD0^RM)mFA%m-IE@C%mN_?_GUzq&fX@9P(U-!j}7 z6p!BzMkDx@>~Z23#R}`F^TA)}yXC0G6atK%IDI!W?{D4sgCNiFCW!cX{#8)Kl)D>KMDDi5A+vu;oZS6|zN^Cu@h|k9j6ZWe zwe}4yoyU3gPBaVp)j`!j^$GnruV#AxVqRVQjgxM{Ey8Yh%eBvbKa<_H*Z|8Tdp^6ob+Ge#Hr7M z6Te;`$B7zn!Ug((6P!2RZ7b5+Jr1`Efty21I_C}H#%|0NP{%TN)L@pbEP?Kvfg_)F>ZdDn)?^?%gDc^o@*K^HxcOz(m(Gq1eDN>z zcO&-v)URy*Q14jwe0BC;=$#>PEpA#|Pw)KVYSfna`geD58?v-6%tXIrqd@w&M! zdTa9RBe7DFX2dl-0u4KOX6YTVkYo)e_Wb+`O|!qY=XLzbKUm*iT<4_r<`>X+uI~@d zu$dafU6Gs!V(a@M+ohiuFG4@Nj@3+!t?#FoYXpzFzQ4L7gy(---*@LH=K8)chT2bA z_2q48t)RB-DWFzfRA1iiENevG3U)au@GL3gB!Di?Fk^e`>2Q<>3&zr{e zXMUzRZUXiqMEi#5&uSOfpNF0^`*T{u{^aRue6jwt(EVw}{_MQAvHrYqr)Jjwtv{{f z`%^jaFZz@HUnhUoKWp~qGQ6(GpWAdbj{cnYneeCoLiDFqqy72s?EkqxrhRJJ2KZYC zHrR1mmaSl|(-j8p`7va<#H0SJHrMIvaI>SmPREMO<@8Vbz|ZW@Z;PeqLa2*8_d^#v)%|F7t+P2b}{Gsi?THeZdO)rkH`+Uca) zz5o8-^v5Ju+;~gX7&Wdxp4s7S=~T2N`r}Q!t|y<{2k4H)#@i#GNXH(33>}+zO=IIN z$?V+!Fy3PF`L}ZUQy-Z`YfaaKQ!dW}vVSR;FK>7D`)uq29!)L_G$|UD%k}+j+t?SA z%UN55E@h8`F2f7|N-ke6`Fpvv{b_$Ak5{yf$z#xG%j3yFkyCBVA6mCr(EEA;&|7x3 zMlU9ht7kSMk0rHEYDJ%FTpsQGfTq6+x~1CGEj8xfzg&;hKnv_aOAx$D@N^M$4c5s8 zi)C40`>`%L-=?{zob@|Yj;ErGFR*XE&57_(AROlIr|BM~AIn;gz@i(s7!6O?4O{CG zG+t0$Z#}ZDpR_FNkxQY47Kqp8z8WFtLyv%*KVIM*x-3HWBQWW~ZlC79%G zd_=@nBTj8(?ynqmew}&vPSOmjTAac?fhIWK_y7ttUoAMX z{eTxfmY%-+FnT)UO7t||7M(N0wnZ;=Qv)Tv7S~uclG-_J(MHw}i*MJm_y4tixWeO* z|C?j-Z+62W{~u}je~9vbMSb~y|F*{Df2)&fQCy#PRC}(G^+V6kY<=upKg`87k-{fT zilz{2|2FpnTE(>(M2m5Li)FvaJ|*T&+22F8!uoVwrDOf@^Cs!+Zx5ogp-~NZwgtU4 z*AMf=s!96eQ)gF?L&FZ99cBH{*QD8BuOE&ozwaK3li#W5{)PPh{D~7iKjJh*ewzd9 zdh**{SL0m&ekinvJOEm}gF|!meHY&ex7PYste&L)aSe|^!w#MuMSiE< zs`>W+A-{t$b##;)x<}SwFk)88W#GUoy-nIkAdzE_;3|ym9-E!qczpqAa}%nG;x%L# zv!M7QQI+JbzE)QyG=W13`vhIz7n+=MA87LPh&Y$BZ+g#?d2SJ0? zo{G6Fgarz$gazD0gu8S;tb`Rv^D!5ji%Y?)(V!@J1;aruW(U`4FqFnwDp?~D+FecW}w4l&Xy( zVZ)|*V8g;o2fj~`!e(NSUqO#0ws4pO1 z$WI2k8Mqi1`>pv**91~W{fpGWY3(eV-M8GVswt|9yrJV|%=mgn%!&N{)%`^sB#{d@ zO~Ks+Yf*aLFK zj^SC3=4`P!%F0%c8hSIs0;9g03yjklRQB#f1|+Vx)6FifYbNTk@q8@$9#@3*SC@tCM@|`5{bCYlo;CQRQ$S~?mXO3l+Gx<#HJUZ4V#%RQ*@AUOG z+1*+tPXf30G}Iah$MTzn4A zF!g41BjCOP0mbT=B3731`c_292GcJ^Wf)4MK@uJj3Ew2Z6#(Mx6(AVjej;zvAA4j+ zv{zL9SC=`HXtV(u$Z0}OXW`Ps39q+c-CYUdk$7)t4Rl@9hI=*KLpYfrJ+Pr?XlN4) z>ZsVGK?gs?hbjD!3e5iS$EDKjenQ(5iq6NNpJ-^9(9VRC?e@3JHB=Ew`FNXn+0aKc zbT^?L2~BlEZ`06SgyNRzgXPx9>aMQFDfdh5!W{wy_XVM*<(hQ-tN~ z`4*3@@YpK~nK=NxpkBj2jBKuV*?==Y7bRY%W5a!OrWNH~r-BbjMsIB3x^|)xF=M-(Ern1XDhL-^35dtpG%o5p1}- z4YUHO>-=pHL`@olmB>80R(*E0zVDd+ra#nAYY-G}%&1h4w#DqlAITp>1sXGO|A&54 zqmFzeZ=f2kTEsxuHfoXv^;NqyC{w>qU$_IU&&X8o?%)@)4Rw;YOfDyPA>Ui*u1v@j z|5HzjLbtTMmr}wyT3l5ao`sK@3B^7QX3iIXr@v>17O>{h?Pxo&cD2YAj=jBk6=W1w zm2rIK2WN~iweyQrwxVtWLqR?I9@SiSs+zBV^n@Y|z9*`?I9_#|@yT98dSmBfM)rJf zVCo`oU^P402>#IT=pj;x;ZTEoN=x`8uhGW1jE6{Yl;pQHt|)RWpBqiU%`-Y5Mx;A4 zkyRYX_v9Y%dvF@*OGL_2uit?6uRhwkC_nH9o0PGt=asmqau{HJ5n+}WIBc23I_mX= z6J_033EBDlG~D(hf-VMAD~vWofmW(zkAk5LF$Y?BGYWjh%`QKYk}#z)T2_;v>b9}k zR59MLh~5R0mE4o4)?SZf-D}koSGIE*E*#NQ_v2T{MZ1UT_g=k$pKib&`(r4m{47>b z6To!puaS(C&!8aAIiwcg+IKbLUGP?tFY$X2Z6)V2o`tCz@44k*A`ZZ0CVE%q+*IVB zJZ_2)M|HY*R~AjWY05af;sKrwnWy5j+@)9}NXm+!AEtILD7Z)R9UC7-l*l@=!^ zAirz1|9me(DbyElB;s5;)WN*!IVPEeRv_FdU*W2Q&&|HnVs_+bVV=85v*2gHNv?SPr;EbslTaMZphs_<{*F|}MK7UHo&8M-GoJ{pr@ zFydU|B9sJIxN}^i(vTD_>phOp+`t`7@8Hac85^8&_LX(NXa^n92zje!mH1o3zxl>2 z@bUUZTK>vIwt-y(QjWqMjv{?q`2~)@<8b>TEF>sqX6o(~%w!^t2wa5J;BX+)sA5b_ z)b=%( z;66u?&X=vpwvJ>&XfgZ1lYC#m(joznwG(6k$pSdz`#WSk0|JvpitJLI*@vQ#brq(^ z8>*!Bg;k1N9%SB831@YvXo+Z*G5Wg|U!x}&Xlif~h-FddQWCesD`${6;k z8hcMU^YD@B2u}3|k^3XChUpS#jiY`+PFh6reD50%7NDo21BIV@i!fo$NcEQOIjAOm z!c#G!ST0MPq_>W`s_*c58nd+^N`(a?+${qHFwo8H5ra z8)z(HDpH|VnzDE2b~;BmnAg|&fko^n(N#EFnhIwD`Zcn0CH47%3(-=GXp@yx%>fL2 zqqq{P2o9N%m8u^qf)|MTD3S`Qm9Di%7)HR53UpOhPD>FZ%Mg`H_t-L<7oRKStdPa`Y%)T!^&WTo#r1rtScKX!v$LZl{92wC%9 z@%Mq7>1H4rVt#Q>IOlxKCtG6zVy}mRU2N>vp&w?_fTj9=Cdjk64jICD2CySyDcZ3i zh$&V6tB8#3K9LTwbIPCy2Cp;!2@DJp)3#qEzEI9zmhDZ0k)nlj4?;q-RtrsW)3YUO zA9j#-`Wv@UfWHYj%2Zlq7Nd-ufG=CWh$h5GXe>+Yh460tv_Rn63K7mRTJk~yD^AX< z`WnIse;wEFS)MlsCsH2sjIIZ=Atfh9n?_E7#Ez#wW6IfyoNi+Tg?z$HnT?t_19ASt z1jKb6roo=j|1hOh__LNSBfHt+O#jKzR{j$q+vSxw{M!WOBFXBm5zcf3^P$}#!RzXD zerZh)NMR$Db3+hLBXu{b&kaB}%HpnWcK9c>G$z}+UI9OsCVIvjq7f7&(IV#+#|z0@ zs4+i5dit2@bdVP(>T|1nvDr)H3DZ9^MBNBShTJG0$W~NgWHoR})<&Y(hcX(>_VtY1 zzfSMeK)&AZtmW%uEnnXK7^w=!o%e?_d1Va*y$!1+QSEAD3^420ebar)ni4zz8*DFq zX-Q#m|PjiUFIoI z1~RzA2$l!0BFx^&#YJvS+1ewXx$ObU3HTq(FZv^Vf|$%nYkPBwaIcd;ePJ?od=Dq$ z^SwsWiyHEh4e3V+++IodYRG&Wat$G{?vnf(a;puQ2}rNX=&_OZFil~NprSs)+?1sdEQG`j&-De-?DG~dz7q3|KDD^8C9$nP zOV%kBJ!wziRup&$wy1}%pxwV7GX<<&ST1Th=3Shj?T}|&hX3!#WVCcIB$Q7^s*-c_ zjd62z7mS{;*+dl7Ky(ku=<*F|JAxZm?#R?1KqtMvyv(JN&KIC95gk>vYrndtv z*)7>l^$qjPTlFQVG_od;b4+6RVU!>}VQSd`NZBzV06_p(q!{-mbW8OHN~|ubx1fie zPVi?o{`3CjUh%XfrAU`09n@YZVbz?9~~V9yg_--4{<1)g7BL3iD`E{<>NrQJmYF~nlskrc%qS2 zH9Wr8OR8zUZisOedJ^96L^f6sm;&<^qlnYmcWT(McCPFVIp=hM%q{0;Q7E^R<`jGQ z1BL_Mdil0u82*(daHwK}i8l@;F7gH{M&WUTY#hNPTE#kGZm&>j{+4pPVS6G8ixQf% ziN8H;w4M;C6>57|v57q8g9s0{122c>=aKqweH=yi_0uELyF!xjZ9*{x(u!OFfP+nkAUm&uG*PUU1X;dBFa+zBe zQfkO53}%cEYJf0R9#le$N@wnpjx#h-wo^$4GyZ)&^u;%#Q6#lNGFV`8-BW%&Dll@F zfnoD_zlkJGSJltpCgieEvKN!fRV1vNxcdqoE{&GbANQlDIo@7rU6wMgyg%2`>c z*+Ff>dtk&S4q{MAfsOx`0xJ#-hB?+U>hZhPh7A~;T4K~o0Gsslohh`tqf@}n4??SL zE=t(+LsKfXU*k3_9ijVOBUi@$QkHw8&82%BNChFM(*bl~Kx_NTf zgWM+cv5L$QN0#p_T>g>C#8#&;H68BhDe*$Aa1qXYER+`bTB-{Z61eC(uUDnys(a$i zIm|>KW7Jp06dT@05x4(|tad9fX@4pe;`)(ez?m03aII2Z8zrewEJ)9=0=F$dPDE!c zg@>yWR>tBiV{qqSYgcflDq< zV*O+C|8uj};#iRz{zdrwjG-XjIkAuGmETmq{3jnXMGJ2>x%6!e9JtHUaQ#ZMIAI`K zlRriMMFmSa^I(E`KbX}7G+gQpT>U<-`dM$9^1O`HTZGrVRU*`EEzm|@LR`7XHO-%3 ze2nXRZ{_fXi0)q743{!uzFZ8G1l!yGN>%zIm2++;_6ohM0)I2jznnVw+|&GM?lTz@0kwrcrrQiYEE# zKpl@A(Xrz;WS&gXE)C_*l{qBnFGXwuV+}B}El+BT)!LIPnII{@2in0G+B7Rr-mMbN zK#P>BvL_R917P7Wj4@7tcN437AzpCS99Y}LQ_%~3KCl*d^bVCDm@uZwk7Q59{qiH# zhZRc7q%`JCjIO2?p=ROxib~lg&+_DK$il>F6vE;GZr`fQ0L(=?y=IVTW~{1QR&RhO z_<O-hnPRS6xL{8ZUayhr|k@wui2lb=s z4Hhy=ICF9S_qA8O57E35W_|0h%_e(|9V7v>DL17T&s?#+=KqHr$0yIeA$}G=A8%WLa|4{Ui zFVZXpd)}qIC>2k(18WnpG}1+nF^h5?sk$^$G}%)w7n&O>yH3+>a}}q4!hBJ`)>Kag zZQJlT{L|Qe#q7NYF%rCnyRaKqQZORV* z=_y}>V&P5r2Pvdj#N{b}jZa3!0)9Xv^C@}mtH%FskqB=q5ITqRz|TS+btFm)ur^l5 zB0ziXw9cPq{YIsf>Bpi}SBte>e!>r&Fg9cB2x)(;_XFUhTCNTt`%^8ZKTzv9&s!CH z@qDTaDksC0iT$m&=VM`oWgF4W@3(u}(~-XFgnEb=?lC88=J(I7@t>9xsDoudv2a)h z;3f#oTGXG}uw33(zYk=(xcdI+*?VhSll~vVMIeq>Y`eG<%<3Uq>c4xw25Bo6{2Yyz z_V3{B3-v^gh;t%KaTi=jw zEaF@8{cB2aVBu0ctGEA6M)QKW=T_iZ(le3c%o`f5MCTXdZH}>oRkDZp1M*t@2YZRb zMaF=-d|WG=$NQwt#J>st^wL=!&hhu473itpY9{LOR21TGm=lBby%aj8bXLc6d|Sz% z{HD@g-t2=M)t<5|P!?%V(S+AnDEMQO=5ln0D%NVdPn~QC&W9v=jmvO3=LQi+enihW zh6b;nF2Dt1g)6>_(n$YJJwTG^3Wgf3>ne5@7v;hJw%CO+`{FV%(Fl@Ant2$cf8wYU zmCm9T|dw&>Gb_1_JP3MQ(6YFMvH9hyTQ;w@|kHd8o>mc{D#Sx~`z#UeBFl z@jAjQ-YZ{qnkyMVO2jQZpEnx?QKvB*VMM_IH}YKV$8SSK zEqozrQx6Z&@dL4Vr7WZ`31$p?S^}1`KDGju)@LzbDIKqA_jqyt5u$Ir0e24;47vN@ z5B~$8q`d%!N)7HFh)6-PYWIKPi`;0J53aGrj*L3IsD2 z{miYb^Z}g!!S&}^vRS4wP!PaZL3IExjt8b{;Nu#2T|BU<1}@vhYLiA1h`q+F72F4V|0^maeOz(vX=p{6-G5UD6 z0E;!S6M>w%^)*KS(ZH)TuqlBp36#nGAq~7h1NSenfV5*(u?C)`f&V2?+N80ouF}9} z8W^&_gdT9I3p8-gQzB5y2xN^Kp_4T5eGObhAY%YDLd`UAi3Z+BAats0r69DYRQfqz z17}-6=+sRba;t{;2%)g7%)~!xsRmx5f!Em$mJ;}Y1`g1`;Z~h1U1(9=s)1cKFgpeW z3DgxD*hB++TWxwnRh%c(`5L_YNufbkg4qcmo2nrjHKYw8!Vw`|Qw@AY1OIphz*hK7 zlkVGDLV$ZU@H-nQHr+-IoTh=>ZJ;pv6%8Dzfz>up?CpCsu&)NbMW9em#B!PjcGAG- zY@l#tqy`>YD4l$OKw%gAqxx##ml{|`AY+5|ty7&eaGeGg6UZ7@@^f|M4(aC$8aS3f zx@GmT4O~c|&`!i)jRsECzyN`QjflZ>8aPw~eKt_UV6F!C(!kMn zwIT)+HSjnM973Qd1J{c zA;KaJJc2}2x+@$IYKI1vX<(Q@VTlOPDh(X3f!pjasc6(94b0QPH3UkVZ3ryWz_T>) zHM?35f#WsMqk#(v1V013x2B zs>M8r$Yc$CLj$V`6d7XBuKNCVA;QBNxPm|-Ul#&vH1IYJe3n3w_!9|yLj$kYz%csDTxBo2dlerhzAGpr1g}79)4Gh9qjpI6|b8GIB4}z{mojzz70mdXtfR zss?_ffw=?<)n()+YT)Y{*qcD1fQ;P8Z9;(uHSiPyg?2J>KhnVI8kk~ND~hEQ$Pz-bydmq4K{$)sM< zz>ykwD}fwc`oh6`HL$M+PPV_4VLeR)J89rm1PWJVSdY}eBM(bIhuA5+QFK}9RcbkA{@+E{vwym>G@OVyVUW$ zxVX(&3OZql@;mbV^g57()m!vrWOklZNiIpyC1{b5ft6B=Mb@j1=h*iFNWKJ3os!<9j^rzB`@4|F*V}8Q7G8S4jIPI+ zdgxi8$iB2Oq3VH-$Kb+(P+WH22Jx7Tk_j7d>wTntR0Yrzdh*_7TJ7Axc=JNGM#437O!<@epH#-^ zgmUYEB^Kqm5C}`;ravV_wL{_%n#jPj*WrYN?D;MS33Z=`0|Sm}lvmj&Xae_=P*cV> zgDB_d0v%Z3WU~O=H~n3InRq(p?y%3F1b)_R2==o1eX@zp1vbCe%@=f5J&D$qfheRE z94(S)T0L|8G0=k;5)W3DZEO;$f2Uvl@#(m4GA>-OuTDWOv;j>P{$|R;DpC<)h|=x; z8j(IkiI3lIOSHXwX09bvfq3;*Vo4d~|b-7MkrZ>O>x+(Ylb ziQxbVYW(!yjO09o$9sdfV1wXy)ds!~I0#d`3pV65?SRj+A;Bj~z&pkzyc=DxWd$d} z!_R|KauQKo2xg2gLc|&f4fUmCye0Lt>Hlv8no=D4+Vs!4SLmO?v_^e89HZBsWI|gJ zf85rBbm4)fvS4rQHa*LK%k!V*=)LvqXg}D)ZvW&4?XR1s`OmaL%fN0~`^LAQ_D|ZE zZLGpDMw27nYy=}nlLMdF8lj0sg&N_JUri}E9^Zf*dUT{~bj~3d;wk?gm696z zI-asWntJZ~3aa|`R_lSKiPL+V>$DjWzaVSbg zOC zX*S!NP#vvP*WZmc<8}*aRn*%p3}trm7mXVm%Iq+0+*tpH%&x95x4a#p?=ksODGh3* z$yu*P>^OFo3UBejyOavCUOqd2NPIQII6m?vK25G6*YtXy$hRIVW z-86RG*vL)ls|KynLT&Jc@1}|4rrdD*ID3oK6@DJ&klV99vW+%4cHH<$*ZRhd)kjoP zU6D!Zh6Z0Y+OYLyq^COXpM7C<&O&vROdE(MqQgFX6&=m<190^2#{Xgb|2zJ_3~vqm z->lyMAv_<#|9#=Inuh@t6duP=mwxAZfl)hf-aJo!w*sQ-mRi8^+Ddi35 z3Cpn_sKPKRy&NhK@UKu7@q^u5cl1DHUt+JFu?bT!@NFQ*G~QjoNgOp^i6AMF|Nmb<`*Es`mMdWNV)&T6zcKyWQA1ikw5e z=}t)0?hw2*OeGxm^}KeWsC-6Ok!iDv}C)>_Z{b!XrlisuYp*E z%b$U5u#Hu1A^u+7>ky|H+-ewpSPnl^gU0Ml`+Sbq=&C{}L7gHe1hRo^rEi*bMqrY+ zEVrhX+J}b(&_;|{|@KIaWFu09Wa#IX{F>EDSJC2I0}RIwMof=L^f zK^-?uz}`4I%X?&|zKETuvJI&P{eJbo#k)wk>xZEG*Ee8uHSHOJie;~ag<+ijsZ{M2T5PN)8{29&I?sia zmTY$U6c||zM%ICD)oR|;VB}Uc*slK}v;L|E_J|dq4`SecBm_4(B$Qi#MMq3R>^LeR zkXizSfP{9%c`~8H@I1rsQXLLzLg0pFAw))&SRh$tN1FI9MW6vhn`bq4si&~WWM~BB z<$Q!v_|8C)1b+|2bF5IOq#>Ro5Q;F*01nic!oB3<*7Ei^d{$agnSeM1T(pGZxMg(8xGn&r> zL5I?eARxT-?Cv{3SM$=dbC!@uO%Z-r%Si%%5k)1Jo>gL002R6P47FpzfT5Fdfmu5u zjKn;^F08u!TAV1AZPBDG?295C<~Q}PQ-G{>En2Mi)_Uu*;c84zc1I3Q{@R0Q({NGw zF0~&&u}`g)cI><%%J+643LGpuK=#*k!w z&{k?-wAbO&5J{N(dF1t8l^CwZkPc;sn)pVS9ct#ARCcJj-^VDa+wzOXeV!L&&^M3i zt$$pP&c+uxaaQdF$WlYA_5xsPho5sj6FJLi-O4@06xs;5<9>t=*tkS2^(S3>KR$jw z(&tU|b+4h^Plc#B3dFy9ecAzz56*@-uf^k;cZAJ_!96GejbG`duf|uzBT(Y2+4Pz1 ztKn^;ED-7dAIn2{Pd34jV!)pmQRCEGXNiC@o$jgVMweN6Tgs(U2oQXye zn)#{a`3VmNAT~nn@rSh-{TIgIRGeu9d3O4;GzYvd->DUzc3K?XqgSb!KvKDoJswA- zIQ~umaxr%Rudzo=WiaJxlYlOiy>p_6FEOO0;~c)qf>E`5^MXfc|dKC za-YeLhDZfIeuPJ~a`=rqtybV6g`CVmLxig{0LM+a%Ks?H5Xu(Xhq4hv1Qvv{g+aN9 z`iotwO{8By4!{`F=R1&&E$HLy3EJl-?TSUTj)lm5hqf_fw7-o`ykV%eo)hnjArzl$ z63ru8IrZ$zVfCslQ30tG=ZtYW>bipGuO1CNB(N`>$59zs`NW`V^`~F zha) z){M^zHEYoWxEIWam|`Ih*WW$pjCLnhRNi)y{d##CKA{Ju4F&oQJY~Jhu|yYOe*cnM zACgH$)tR8Ji1ut`+KbWRxQpUwF)Su24sW`Xze0~xlfn7M7?E*k$3OJ2YcW?8AB=5W z%7bf)K$6*Cn{2w^*j(O+vv zkVV(1&Rs}#!ukM4zs)e%a(l2}(j4Rz1WYZ=c=Z~Bwx~^~QwtX-dyAmU_NX*Gk_)Gq zCG-J%FWw4sJS@{5Pon1{5*@r8kLKy%)EMEN_6>YZJxS|&{#iWNfCA73T3I{wpH~=x zJ}@LMnEocR?m-hn8|#z9aN<%<_kN}Ip&!^HzIhO)?n+-5tsK)~;wE^B%+nchDU`2b;}@jb!qODYm<{OEN5Zed za1}O!MZcTpJ6^Y*wLNUfo~7@HYQf96TT%)r^wT=OooMzk4}HWk=Ku~6m6g=Fd>5jB zAP=GiRn@8FVLd%M`d+)&=;cp?V!Z_3U=)-;Xwd?q3EGerky^)mG{#nbdOo^Q0`gte7IeczCdGmF=YrPIrbrG4`?irfEs5dY~0=YZC{J15vJ~YW}c0E zoafQ&&#%38f7COg_ek$LQ0a*}-47gR&8_ohFtB+V z7KACCtoDzIA%@}$bK{5#F9(SVHhJE{N@JHQfnfl?d~Ww`hjY4ZppOJcb4*x9Zp55cB!OI&ImX^gfTOCt>NjYyIz%uE|VfW-w^3yNKL+ zvmyB8NpB!=7g!-OaqB%+Hk;Ul&=lyH>0U;GE8L6&Us$OrjIBW)ohb+m+A8cO90Y@7 ze`Jm4Ei4arp?XTL#N(>#FwJB1zo>J`M4ooqOY9E}!#E2rQ}<`bOuIjvN|5SAB<){c zXi4jbp;GPgW!POqex8(9Kws(F<3_`-rDfY)gO5RXEtql*J~78JgrXVBST)}As`Olj zU>)XVtJlSEV?kU8wa?{_+3Ah-J3Sd6pwsu7oxUr^%9wt){f(kC8pa8lrOU7 zcUm7I3e`E)_^JOjW%vn{0JeNT7t=kI##kUAQUx}Z5X41%aOCGS23Dlf@CxM^&b3z_ zvi|);>E4^tK)Puuo_2Qw>0XwFfeuR%niERK+*Y#I`*#0Dr#I}ssp385FWUV-_i0f( z>}Mr~0yH@3bCU+L_f}R?iA@!~B@1#0^G-o`vFS4R0TQWbzexzd)N3#!8xSHh_>T#( z`?v;#pcd{DXh4XUGcn9bq#r<}n7loR*Uqu;umc8t(9RCTl!YoA69R)j@0efE{vNG z?%APn7@;RLxDlO217M&4JP_Ah96v0 z;59~sy)N{WcYzYtxZaMMF%;^65I3~zwwnT!h7v%j&Rcc|BPkBE23Rr%@?L1vRZBtK zQ*i(wH34}sP3M9foiPd)!{A!|Zn+Mh<^uQE@8SMKDqOtJxgEE`!#6H#^G)C3ARNbI z`iT$~*=S_(H}M+9SK$54IgV0|lcs%DOUUy1iSz)1<9Vm(vv-t$($r+EJ% z-!n3b?=REuKg0VJ+Uv!Ezs^DIe|M%-_PaJK{;wh(JOv}f8XWO$rm3xlH)>F=K32%|VRu1&;QWt0hebcyh#=3caTPpI{ z_V~=Z{;>}4>S>_EX{udO)!007{qy7MKjoj-uh&~gnQx9=V9z&;KGhNxKi}+! z1>8WVH;cpNk$!Rd`DR38xJ{Vtnt1-lD8k;*<(L zMBl2MZp9)sHMt2Wc^l4pm(;9|;v-oo12EV_fTw(x%v(q>t?fl07QDz}1J#*#w>Po$ zP=YV3^iT^=`Fb=`dZ@XlqK}^E5Tt}4tToufjH)L*T%mg^&H+dx5$?`X!IVo%VN&~O zQyx$swKu&Pg&b=rKko?Y?6p&W;gnC5$G+&>oH*3|{EB#PlU~w)0^k~zrrRv9P-LY4Tcx$oo1*PzDZaYFLh zxuh0{Xl`IiB0?A!<7dqM=oqn-7t_Bn8^OKeFW}aa4-fU%L*9B8)@1DRYUQ|fx;9)O zMQ3i-gKn}mSa1^3miDo*&N1?aoqc<1hACPh#J2{@2;qq#N)LY2VaZh?Y4x#93&r@P^gs zu1%E{o}c?@D`yEtrX4aG7zz8ty3d6Tj_wrqgX!RTv!FJI9tfSQ$TUz4m zUAy?+_0)D{eSc2F{`judENP|tKxM;ZoR(kbo{x1OMhWrl#q-C45O&g_o;12OK$p%a zTefVx8-^5znBfocjiv187magO#`x&B1{c;6NpW>!XiM z6-AX1<3evO7bX|B_jYpOJxsu+HG!c%cP^WPmn~SZ2UM~6k&i;)#}tgt6<(u*w`@iS zmmgQ7%t%x-u7+v!W-g*BvJ*qu%((^@=T_RKaQ8Y&jYKJ7uU*JoU(-5y0hfH%w@&&1 z$yoMUS@YwH3be9I^&5b5>yMlJK)g>5_fXhtE=#}DzQWxilxW#?iCa;uu;`iI3Y2lG zdC-xr?>R{30-vy_e2H{Ne0rs58_V`<#LXW}0!Ks#?)~CnI z9!NAOMakfJfiG0nU{`;r$IC=WTa8P`{Ccnx%HNc>iM>SH#BaMrU6QQFd>?qKasQ(^ z+=t_B1C!&v+nhtF8>+F^6SgazBF{)vonh2@& zuq&ZuyIaj+MhT`gjl<^Qo-u41$2Id@jJW>t zzQ%Pj=v=4iTnI6U(YYy5Vn4K$hTCX5pX+%GHcX7t58-_SN}pcrr1aZ8VtoUpO~vZ; z_dERgjp$dskCFZXuygbS88OB2b(Yx=`u1yqT%C!W`Xi|kss}M|#_Whx2WE{>Jx-rm z_FZ2nqylD-Mph{VUj4>g>V|vuuDd`i7Xtxt>|eD&@R^z9!BfF4LgZfH$&CEKk`?l2 zc{Toc_1OzrU2ndLGPI27pk~qqDHT;~+#q`}xL7|TW=Bq3smqN+(b82*@wSN%R}aY% zjsj+Q-s3goWQf-YvLSUDh`<^C9GGcXcX|!oaA3_!S1Js$H(G11_T`%NPCQ7^4r1Y9 zbRz7{z2^(vEhgSLCBVcK?7qXU;a=83e#Z|Yn^gJXws8rc9PuX-uZBAwPyr%PQ2E_v z<)m5AePL59_W~8gz#1v@O7RDV2==uq=He%Q@#iAzC$x!W;`Yr7Y=yv={hr{@z^b{) zt(207NHEZi-y$0kzk|ppREx;_bHWQ*Uod5s-0r z^yqa^Gd64V`bh?31VUnidQ36{7P9hYA9kU|X*oc3EIxRTe9)g`Yt%Fn%}1ci|2cr?ScpK$nF`Oe_oDL9>DoKNd~9huEYzu(=z*^8*zVP{3PO!E(sg zzMP1Wf9K|v9d0tMCr3n16ATX|IGJ{G*4_Edqos$g_PI+B_3*dzMyolR5JHy(mV_Ua z3iZ%3R#7an%Kk*0>#8yMi8Lz<@WE`>$HTcjf0Dh6aAukM5m~Um(z3H#ZnVK<2SDGGFQh^Hi(XTDro&vL1M| zj%;t?3TLyPGk$9uw?4Gyqr_9eOXfEemxJN%v)!JF)YQxA`>I&66Indb2BMDe3zU|a z-QX&|M-+{)KYeK{jQb^g#l-NJfzT|>x#Oa&(h^q>WD8x47k*Dcup}Xp8(Uuosu0ZL zcJ+X%Rt66P_L{Szc#{-8$G+)t$olHMjqTYiO*sk1I0PFba<}!=-H*sSHH=+Vcz2WxOI#lG@sDg3Bv)7R%4lS97 zu;ppzF-|?&gR#je3qGOcwyGNKtR^)ev+P6P(~>w4aL<{uZph%=|T1L#kVxG##t+LLB<)+>~fs- z1}yxmbXN*PvTJw5d`s*8WVXxOQq8Kgdx`F9=mvF|FzYtEAe+vGkaYDTq0#5lAY;f~ zM09HKTZf8=ufcdI2o8cXBBlElA;VIuf9O~XbWF^hY)%Xr)F{(#K+(IWGN?4_m}fZu z;DcMiQmd0UvK7V?dn%}eq?6rrC*^35RqjHR1Dc-l@ATLtis98b!h!-sMqP`=7&v#V z^?WQo2)~ZPqEmOt&`_04Mg4fn9|A2HqozN`44>GgoXE-)ruD-j*esNVapHhpUb8D2 zecP2v^6yjSs0SzUx_g5Q`QBT^;30aYCT>q~S*7@Vl@y$X6ux^_L!^;UWK)9F-~s@l zgIT|A%c|Pfm4QS1)Lza|W_K>V*`$j<7H53{-T^Mc@-O{c$Z#uF%C?`{)<4fSMz3(I z!4_VNa5O)?Z@6i4O$HqjZW6=1(yIe*=&XMPi#1v9-U7bBFt0Q>(q2P<^yUIgzJgMW za#e{QU;$AWnE?L(Fwr*1P|NI7Vhab;37I}+o$Lx=qeY^7*w`6XW0HSTZ+)|BXpbAD za$l0Q@{;QY;7wQ{!dE5Ol+?OrHS;o-o}VH(DAn9q_%H#96K!WaDt7qgTM-J$|OAVMJarIJW1;x6N{bGjn$E`;hk6^A> zCO`q{Gx<9<+cT@zcxtY$e>G$j*`hHy>x`2kSPWX1xh&)MNw9I7OVKaXA1IX{oY=gg zGT)OMp-$e7H}b_Cd;uxpkp7tOWJ2`ZbrW90jHEdM3Crug3)2?O5pz01*2Uj3ztiAS zKmE`aQSjv%1XEo|q$qUv)t6&_g8b+&}i9AaL&Jp^4E|aVA;Z(L_Fm` z%0%J*@nhSp@Tcf>lavC7Nui$j9_!qA|A559CYwQLsFE@B7%kgM&!6URtIadD?|Gqq zJAm~`H|%toqZFoCKrUh#0lR-Oh2uY{n$urENDGGtr4!jZrruzV1R700qI5xU z3PwVKCl^w@M{U>N<5mtm3O4dtn}tOjN=V#@dP@6F^N+~u{skvdJjyUY7jV3c_qgnf z$Ph@64FPR5T`@u%P3Y^C=Y#?M^?9V0v>nQCgz)#;iGCg0Wb@rqF;9j>EzC($z`^_2 z(0CUp=%KOs53~2_^3_@dHnREnCYdxrl^yH*xpqQA^={Js!>4tV=84h~~jcV-m?kZfDunMEG# z+}Dh$j%_R8>K$Tf*g)?mgl!|taYhF!@g_Ja+$*|y_-uITX_TnYHS(EJVcswrWC*(^6gjb{84>X^36l z=xd2XYKFTDKo_woqDgS<)H1CblF=pEHNn!W|0_Z0Zg638+2% z5(K;yqki9z`&~xTm-si3w2Qx6!D~^p(Hm?X$PaXbuWx2GmRr8+WN#>^S|(fkO(ntA z08-t^SdOpM`KZ!pic4XPjOX}#2A=gP&t8@GMBfN~q<@@mhZ*jCe8}+Ya7;B%R2&ujTp9$J!A$VH$?DqyTF2yUIzbi&RBnLo>2Crmg;RRqu zMrV{#k8_k2xm|2K=uHSD9ms=v4HRH8x)#;#-jCaKn-XZG`~rx#`)A&MU)+N01Ty}M zM|B-O$Mva#fSFOES7msfP;pvnUf^7B!VYgBWhKh?b3cWDMeH8Kk4R6{aUXuzVmFnj zfO^+K?1}*}l5WJmfusreH_Iq+*@EW{bcW!KrQpr1MpB>l-oS|J4z}E_6Guiy20l}3 zz@9847rk+wc|*8<#)$+!L$HZ{m>!oHb(Thy zTa>g6zj0{2*B0+@KSCy#;L%&O#cMR%%-#%i_yZBYQ=II(2*;=>Q2rl4V;VS-uBh=E z*0@h;5?q3bk{2-ajP&yc2W+O>`Wm6Bzb*$>!gUmjz}iS>e0LeY+llYEXu!30P4kLA z@)}oHAM^(FjHPv$T8$#GRKoq)OIzO*hM&j#*mF!?V9?42UWS|fDGQ~lCVQj?jve#* z4R2AG&|p9-cHZGZKfG0YnySygWvLcCIV%QGXs|ZHjf|Nn%ATB0OfY0HKVEw*CvRL) z3|+KbYO3_PVFyLw0`g<*oIL?A>8YAmj_&IyOD5be#S_QpB>-oa4LIWRwbfG@)O@pA z0waUx4>59%93%@`N^1$#kv2n&nMdkWKcYwkjF#95-p+D}0k8BOXT3BAZ0E>5`@2Et z9A`y%{X=ffhXxQm&O{XF;!A2U#~2w~ST0V&!g(N8OqgtX$LK4E9+v}CxDc>}$NqXj z;Fkj9)(%-lPPat(!)BSWUH1I~kgaRc&_zb;FlTd*HF-xj%O^mTQ*qgPAo{_~EvO+w z$6ftD;@$*4sv>I}?@nlF2;qh$4vd09K#2$>NEiY%rm+LJv7;!UILf$0amAN`Zb1cX zNH^rtUPTAgQE_)eQ)IkP$@v$lsIsD@H_ZSa(@df9)3>BB(RHfUOh*jAs!^;ruZ?%e2GX zvItK&ktrqHXZo{o-B${-%mbn+@SkmhZd1 zCPBgL9&T=g67W(vx(70<22ry7JhS}WB7}sG^<$d#dvZJr{lz%rWvg7*T^&e;LT+EjfgFE7pJt@?IOtPcB`YuW z6w6G52?P6tKNoN%_VO%wPbT_^^VvKUj{g0T{oBDyz6Ifo{ac#oojTFIAByf3TF}IJ zKz=v#SB&`47QhrFa~pe`1Pg3Yz&0FSw;3A|=f$Y?Wx5WX{{Wq?d38^3TrF7E)vI`5 zHH?Aj+JG2HS`}ZB6n-%7M;?UkMraF~pNJF~)O&=l$fAAXk$uV)SlteVYRm9_o;oC2 z_J%gWLX3~Eklef5Dxo0YeNyPCAzAw<*uj2Fs z;v(vvK~M|S{qf6A;{M~w(KGOtri%33$<`g-o6$BH zheSelD%8n@+h82}GkAQ|G2Dv1$Nn(KWf)?oqenCLOq9}EDc=CT?kVLp-;^kC(~0H9 ztk~4@J~+~%y!YFQIZ43xPb){r&RL}ee2-eOspZX0D^FSF_^yNerYaJ93N3SlLDD%xHb5?^-A?9NFbV$)nsFS;Nz4C>fpRG|Mj zNM0wHP?oht-nXAcPHY2w`COJbc0Gr#Vs!XYY6luqR%KrS$RKcH$H3L|y|8UfHu4$| zUh#?4io&N2lrsqT>DjNAb8i8r)kuMPfV+Wz8G?-}*at%%p`r3X6v_F}_y#+x^2*@R zfCJYB55tXl*w-A2zMFm{D-2S{MpX94%;M3$i8s1}d!$Sixxc%m;^gVk%taO>?kO1`+g zQpwlHVYDjwOL;q`lD~{PQ6>NSpprjzv63HnQpumQ!l&u<;0E&u8lJ=0ps#o=%@dE6 z!jL24*z&fe0otA!2foyMHOL?}YEI%D2U zp@`zAvGh{tGb4`M&4P!Q?#GSeknQGeU_)@`!N}ji4e%ECr^B8I(b~jk;S}j%RjXzL zQ}(SkArdHcZ21}Fuffz5cX~k8hdw4Wn|)fX@$I<)NLvTIzum^fJLvPlDGB-%u8ow? zc8*P+2-3<{sO6jSSPqwFbCC`LmM`*>lY^Hthr*cy;sEp_qCj79U;mBx>L2^<2A@O#)N}y950KIZB+H{cR?qOHbQhS zt_yU7QxrB1(h~3Og{$W!T@#JNf$?T2B&ud zXbDpw92H;*Li4i7_?(ymI;cM==%5jM>ATR&E3SLM7IYPlcmS$GZSo3LTgvT$z$rmj zPlVazoryj;aURdZ#CR#g3;0FZZE)8@GO8&A_`G{?$RJWtEvmRqRuP1p3wWmpc)2+j znFwZ=BmHFIen}wRY9(x4pw)4(Mr&% zHhH;P+*JupBw^~V_hcxK9zvecUEAe%0{y>04GdM;NUy47jk6m!0ry&*>jT4?Tzs! z#QtHZU$;lgL=mn>Gm~TKKKV{^s}`LUS;-!ZX)FRk24Yd~F>T+2?J{4fl@1Y3fmlT(7jdIc_3wNK=x$t%0aDoU$DnCWs)skHxlM-GHpcIj3!Xt>VddB6>j#1f%c63 zlFh{?BK=R}M6)-MMA2U3Z)U=d$+?64rp^ZI5!`Hu+4L&(v++m5gk}3aYLY;A?Tfj8 zxK1=AyiHkB6Fg{luE(8=BwyVX&Je^%0vEHnAaMUIUu3m&2U_F~o@evljCt>wZ#aX0 zD7??J*q<@iu@8lVTzp@DHMbaGU4f|qvZ})fjUzs%LIv`JMAlx;j-W3%Rux|1&P5J> zPXr0nWePm+cb>`C@@Dwts+A8l#DmO_9;9mcxLgA7I2v9QUJY6hMqe zwqq}h*BWyJPj@|UH(LkVthk!p305C+HX#9R5=Xk(IhgZv|M3@zY*CrCG3$l;I3K)o z5#ZEaSEdv-)GDfM69gd16971H+~^+%%IS*uST1e}6wT3HIX|FZ5lNsVP4~J;)F&G! zM3wRGi{rR^`Q`qCr1P-I3H&MAUa*tgQ%+3HwDV-z9Mt%atHioU3GL)~gd*GlsKq*X z8%G5R{2+H66Wt^BA9dFPTWa^uc9vi$wgPqzId%;JS5-oXK_(c%AD~6lJD|Bu+?rQH zyYUxaD=7W>b0QO;4KHy%i4P@A4JWQsZS<8_lO1DoDNneB`&StNK;KuPe4E@;&$M>` zecD|)I2VHbP*D3(W8z2L3G@u7$7>Y`6W3M;Fb1m`ZtTp5{ni<(ytu_8v16Kgn(c{9T#V82%MJ5wkvY$TN`!;_4fhHO94>5O-g#2pB=w&dJ(YAOsNM1imd3_*oOO!xfFA)zheL!B92!D=L1|$RF0U&(NlR&Z% z(y zd$gkz)8_mn*a6azN$(j;5_Z(QBC$2Rv?a?FuQ0Qx+luDcE(AT3@)ON$g%3OVHz-4&ceI-dX{y9fJ(USK#T8 zKi|a(H|Uc#_{y8e;I8v>!l{Fkz#RDdspQEROmo8j@)k}_{?6Q~K8{qe`;l8m?ieHr zoJsP30}pPM)ED+<$&~tBbB_s#DS!%5PrC=-a=l-jl(Q}&MpA+`Q zX9)?xc%VP3Yr#LOIw2EXnAc2EW*l)IRPM%w6jcHLP5*VN!ou(|i%jT6r3;#rPP9QzAlfQ1s8O6_h`*h-{)i*>%BQdtLn)kyFpcyD3Y%2zf&#j|)wBD*#5L*#ppooR%%)w? z)yk=7Pm>{eJTD6~9eGTf#`K@Of`xr+_ZoC2*8UI*xi2GHDfL71zFo|$^!*t?(JMKm zjZUwL`{uJ?_%v?=wHp7q}7sf zuNI%soj%iu;SkBf*g1ow?$e&_C=m57>QDTf*@ZAIK7e9bs@XZ0pXc}POuyK z*8=Cd>+F>Jy^#*kgxJ_ecyb|Pn^GSV%@ZM$7-JNaI-yDb7vAc|q6r*YSmMrh4u!d6 zJkVYawAIc$bh)(KIsKA0tf}U(i9C^hf^!y~5_Sy^v-vw?FzvjC=qHqWOx(m!Fzx_O5p{D)sXjn~T~Hhfh#)PcVtEXj++jEPjaW>Z);60x zCyrB#Tz%RM(2IGY!vSL|m@DL*b75_x7kx1iaB9o)fZ_TuX9OwkhyV<{!b5M9UX2Ux zBt`ErI`@Pa121iUCw6lW`Mc66^tfGBF5C~BW|6WdQpR$EBjDb>oiJ)Ot_s<0#?6E9 zXDNIapp6R-B{64qkez*B*nr;8F?;_SD-n=cMj#`d>Owhh0Ef`@IVzT0lSgBqi#TIO zl1ydo1M7scn44qC`O~t`WMY)!GD{JM$y`7DoMgv7+(&yU2~7#!(kya zpUixw%nXBU*N;CXdBNx7iSM?aMYlRtu!bQ5{cS}`P&$0PX}2zjMx7vMrp{b>^}l>9_UqIY4k;6;Egdex4;s6 z2FenFcYhb-@9=PdX8qA>7Ex;9QAo zo6^H-7&eh%x~sJbG_mi~Ub09;Zt<>m!e0o4qPV}eQM<7d(|>#*fe`>)A8N-G{6{qn z*6dvq85YY7&$Z0J6e$_{ni+Z;AC`bpbeG@E05pmkoJ_%g#seh+8l@;tbjeM$(}X*w`a*t`i;*1xWNSCMGOSA>#^S` z=d_VlIVY#ddu2I)LJ^nCB7kW<`{j$pxU>eMva}{xO*Ul14I<83WmPkVbRkqq$aaRA ztwr-?AJ29c7?(p;V)W*u9dQ&rljNqIAV;+1rC-*hisPnynJOS~KY{*=jv1YfK&7e| z-Lwdr8$EaP4WYyZcax4b$Bkb2gLy>AHj|@8;3tXwG|Kbi$3bKZADTM|MXBX=K7B;J zxqm6_^xGNZ>p%{W72qv=z0+5GZ2H$Hmza{WOIrCB|L+T3A&vk`18X2)@Y50jmVgeIgffYEuZo!HhUsdu; zCuf4mzWjQX4p_ACCizt>zZ&IN=Rb#(&UY51wh_7mbY}|}>A|}m8KQnJZq&3U6 zn1YRW>&ZiMyF%*&O%zef^98R#)1hb6ZdRkgtrM|G^e9%3Yk*SQTh!FJt0-l2bx_t> zF#hjHKy2!WFrg59OUBk1|D}l7FA}k>Sb`OMv5ftgv7MRs)YRB>W$b%aUg35*S@HHx zqUg1ZhKC;+4p>$uiFtmFEs+ zvMwwd&WKV_zO$of+c=r(&rFrWRPZ5_lIjhaYMMyZeKu2dVybcYlh%-kO!y*Gum?{} zag$8(s3tsm_G6!z5E6yuR0Xe78@ zk9T;Gf!i(xhLlpdd)FSoW5Gyeg3zczdWt+Im21!hp2m#JAk!e%y~98+WHg{dG>jL! zxb8$43fc0}d>K{PkmR20+PAS8`UEUychsPv2g4XhYf0?lcV}21H0kC z31(HV=7-_MX0ow8hO=m29Y3)esKK#*?#qRh)+wDknSB?+5tr5TSa}6Yb!pl#_~ar!Kv3Tt;gp?%N{K zE8irgW~devmR9C`mM*@SM*Ry~1uwGcSKISX{KB*19YEdRM{g=~x z!UGyyQ&Vx|9KWODNM4{9*FGJ@=HPBM|F|&@zNK(oSc-K!>=DCpRq-5CR-JDLI}6nW z)-Y3+nvc7-b{jpA0}yl}gbJV)@ZaG~hyPGXYU~w=CHy~BTkv1=b&_CQN%)5XegXPl z3R4E`@4;{TUxxn!c%%aS_3SOZXu?R-Wv#IwBKy3DxjlahP-|Qf0^lkX@Y#nClGCW; z>Kt88#WtSt=GnqFKzb+Bi)OXOkuqJJM18ve6kvS)7TT)2W_@Kg6k^P0XsB38C$)v3 zZBsi)DZuqfAjE14#5T%Rm_*n7SyV2Lq@npB()IDs8b}Cf9ov z-_F9>7uGP=JlDAOs^#fCBE#Wwln#|@Ybv9q9;A5|P0o`=>1{>T#8 za+1zoj0BkyM6(@B#O-dvWUE-6nFD@k4-9b6JI?uCxo-;S)vaF`uV_9`S$Gg1>f2fn zF<6wU$}^jliaiJ`g%xn97jk;EvhAs$_8eOu5^ytv@x|+603OD4!JX}{Y^DVk(JfLF zMv?jrnYtl0HO#y*TXY#a-{w_HH;&fc7*3raH`8dIcLoQz*y&m#Gnra1;2K+9L?1QT zzhFB_jdT{82`$u4P(vgWhkdjqPNE9v*eJRvC$c1GIa*h-xxf=X;E9xNS3)C^V9^BU z`Jrt}=oNs8Er;$!@Vv}f1lLO5J@*!34vRD8KFAw3exL;9K3b6ABZx31bdLP6F(yRg zj_5no56FyjXX3?%IZp{ahcUp9Jbv(4DnCm2!Mkl^H@fxP;}yrzFYs(b{&O6QI<aJJJ8Ey5Ux4~HCka%uYzrsNncLI?{N5DhSEg1D`O zdg4O`U0lr;D&aHmfC?_Nt9S-B6>jrjzjfKncD8661fh)h=}33qAY^8Nq8->O5Fg+e zO1KdpfbAe|rVnlN4~`9IGGNu;jW4V-{IX2)6Ou%i%lEyHR@lTHU!iS*wucmg*!YD5Cx`yoqh;cBX2nO;}ctQn^4qT zfZ@~r4RaS%LC+sKACb#C{)(DdDX8SUyU*hlr2dKc+sc0t{^ls*t?VDySXQZo&ypSb z{^tp>oRC$p%V*=LjJc7e#D5AAh9Gzj!HYodJ&0YD-5P}elKYambLvAmR&ID$4&0Dv zX8`w*WKV`6A>u?O}_FuLCe6VOxs{wcs6D6|H#JX$JdfJHj@|Emp*J-*Ub1#Vzz~K4SZg@9zUCO zG;y(ITGLn}O>3}`2HKh58XHolr`gp^6&cDFOQV{-#lom&lW`-Vtk^IsWsZlbSQTox zeh@@4F0+N8)_5Elw9@5>xP}o_8i|NEMFfq0H|`>|zDQqhFgI;+Ghq;~G%iA4P8-I~2Bsf#JS@`hG3;-20u$Ycn)->F zU}st>%r^hU1UN4(LnCFC(rmN4{H_P2jPG7*r`hIL$r%{pb@4{pZ{9`wO_(9j2?)ld zG5)(YVwqWng5iHa+Hd|s`^_;3Asy#g1YJT_@H8p_x3CvT+t&X327=jAcSXMT6NIDa z5eiCHn{~${#au=Xg&bM>4wrLr<0nW6nC9Rkr|8PK^lz|N24UZ{C|(DvdZhY51O+aH zWn*`DMqo7LwukPa+%{B>>!NOjAdASvD)5{db7UWV33hlrg%H*MiSb}i7_|bhD+t(C z1PqqV*tZ1M57c8Jt9bT{(jpUKbF~ehjjD#pNq2pO_F08TH>72JD>Y+UrZHxw=wfEj zT?;=IR01Chy6Z0a&UL7;2czFUbiZX2`qIOuA+iPDc&irug029h1$dtW>lS!s+lMvc z-1+%18N)thhoQi^?zj)ACx=ta#XnCRv@@axq$8+n&^TLw}5twZOGegtPZ+F+sr#5z59s!56R{ z`xw8O2+T5{eCKa-i*GC3dNQx|{=f6I>iyrz`+p)2;ZOC4KvOLo<#-kMg=nD5$U#dEFR}2l<=FPTvzV_R(gpWTosJX&e3u2A@&W#JuU;aypH3ED1Qm z>lglkcd(sFoT%{q_$!@k@R1cq0@tCB5^c-=VldkV-HgZCS0e78Bh9wyxi5p#RlRxz z%3s3?9_K3{P$<|9iJgyfUP&qEk@Rvfsb7O~R0WfOo_lADa!|--ZpB0#uP-F_3d~B3 z!OH=4#IaO_a>cqo&@R#X^~MFyVeNGcr#>fPJgvvC31g2x8-7XdZ`sc+2t!y%+YjTK z%(R!f1n;8+)}YP{CnF8V6`1LnlXVb?D0^@CkU5_Kx$uodj+xoSQlB3|p+C5v@DtL(w|H#xW7- z=W-d@zPBl>vc|QfTjM2o$cKOd3C}V)IJu1qH$x8@HjE=sLHMW~&Gp+7D9nDQPz)C+ zDuqa17Ma@@21_(3!W>AYM)v(O#i5XM1+v=%XRe7uCq^6heV1hcy19M970;n2;!XT9 z3-I?qV~(9k$^E#o{skd0WO*y*7C=TFLJp|A+({_9cNcZwg#Q~(sewP_?-Lwp^XEac z9mE7jfg+mAZB|#iM7Bs44;w=yc*9u(#L%3nkeP55X*G9KjW=bE9b2vD;!1P4km7_{ z0rN1}hQ-dsfgbVhhl@s+JrDei`(JRmwCEtE$a-LJf4?@Y_O zI2#dw_17&x9o4x&C_`{yXf2j(P$rALMVz?7sQdw%UMQNbL!l$ALQ&S@L{~7UUE~v1 zyy7BMnBn><!u^UPcMA(^FDlHV3Mk%e4JCKY#@Hh$@sN>pjXUcuf(#iR#{Ol&FAd z49qlA43uCDBo?IpD}6xclY&mFsrFA%-MtN72C#AUw<~OxBZ!k0B+M*#4l)LdZYobr zVHwoWrL4{GB<&o#4xVT6{96x7B@X|5Ytm^{!v8{Jq)Ly&Bt_hJSIp(9pS3(DFLxzK z7}G9i=Yz>TFTw@b#@zr`9Go)E>u%|edN8bh?-)U%%%es-FlKp_z^nZQ+}!oIEhZ5O z%t3&wTE>e0b=XudnvmGcfAk!WNP-1V=5?=U3@ZfyOMf z;-ub(V#*m(7Ewa)h;GHf2U+&58HR+$BG8|p>5hOEj2=hx(D7b46DR)e?MGs!1^O@V zvGv@Z`!`ft`;xYcqu3iedX_m%BJ>2lR3w_tN0g9rk10;lc=Xv}I|T1@JezK|0-Z z%M&)R*pFjj)W%T%2&;XE@jl1{S-*HUN%$X}O|*z6xhsB&``Z>az?09N00o^BJq1t7 z11FAG%q@2<(8iZN;eItyG0YGJBM^R8k4V)x3?N{}8t|~?~biahtPf}HX z<*F0qQ;bKk-ymQS3YXCt(TU!(`uMWT8MIt6U53_<*^E zhZFXXxTaj6i?h9T#%c^#F#wJ=B)U2GlfHubD}6a`ihW5DOtw$jr$Mh1$PL~-+6Ld< zk-H0ky@0}sV{iz4H&zUBKfGs1pZ&(As73e{a4Zo;cZH;L-V5A7-(!6L6#Di}3~fK< zpYh-0)D1#+AQVB^gf2R?QhG1gD1zL|l6vZt{9W)jBQUTu1cz(r-TV4L5!0SuIJfMo z#Fwxn;#IM(LLUq{AS@vPzRu(q=Xp75c&;E?G?Xh)Q{Gj98{_rAgZi~vG0xzbJwCfT zvVOcNiKKs>C6GiG(N|z8kv~cQ@ZZ3V2cO0>KxLbR`!#q>`qigTfimM#@*v1XJC}8` zy+h&#qYCiyi@EvK2JJI?qQwk58!QMc0h%f*X-qxOc4HibYfxz|l$4OZfGs$)6aJh| z?&{!o;R9^%d9{zkBIvk}#38_=&^sL95sEH=?5n;~Pqpw#5$5k=;wR0!0=CyNp+nV- z<3Ln|Q}qH|r$7~5`a|0!zKw0S)b16GHdT*<^V{o7m`sCV3Pj6LGGTpL?ND z2DImaF4oi~=%VP6K4?W`2&CbHSvG%9mHR(K#&Pn&c~mQ(Rwob#?_HpQEzm-iVzVOn zeOoF7(lC`W_>%pH`C2>Zu7J9HAXq)d@gAeqL+B7OkOw7U$$b#UnPM8dCnpaSA1g)c zjkZ0(8O?0(KWJq;wlUF!+^f>F0Yy%KJFE*q4Cmyv0gQsFB;m2n!;FKr-OJN>xK9Bn zJ`NBiikpGrTB3NQa}(}I)m?hBw(OgF6Ueq)J^*2-u>&w*8V&nJRI+0eMGnGnL*Nup zmeAP3_H-K-u|Jvv8vj0K6-8Mj@-Nn$;&jR!j@ zAs&6b;RT-U9awQB9ynX>`z}NvXkr-V>9u4d(n1E}+HF|uijL%Uf3B(x2^3~8=_MPb zUFpP3n~pERU&b#Lm{0PTJd|*IvV`270xb|h?#Vd<*~MIci}f~$mKd!$yd#x4C;LOt zhv;Ix=+uWL_gwfGr_ek=PYM4B=R3XV4Xo4H>YEYCV4m+l@Y81Scr$pj3~pliOB!f4fE|D_P3~rFY z-WMv!~W3Yqo-MBHqqt(IxAnNqaHO#6aJTP4$;j)+n- z?fr;I^3Oih^H3D-P?O|T|L!3;6;%t1K`;qsm0W)d-Kfbve-WDwAc-Zg`AWDrHWo7YL2`V~`E5~g#7RcoxhFe<^-X#fEjbKSZ&0b#BxAQYT% zxqwj0&TyAiBF}?gI^Hd0WwExL&jPT{tf)JV6M3y>{u#@K+Zk5geudmC&|L>EASkSQF$7f|fi~_i5CtF}Mg9gf=Q#q<4_jQ7aVTJ%-8B-f; zD}D7@lK0;r);)pWi}-zxAB6IF>Wva<>!opC?E|;A-K`zgnrovyD)t`NHdXA;2sgY# z%V@>32fM%9=?qG%*LG7a-Ql5jT+~9on%AtHg)MO({W~6{ddLfP#E~=6G~JQ&5*||D zUV17tiMTC}55=>N=drQbw+V~TUJSxHx*Ed^97oT@AI8Ebi{I(hN88W|d&t?EsiZxfe~g!DG$Rb*zrWN)I#91ibnk_CxFJfsEG+ z&}CaHPb*MXbrZ?ec-`>8_Sw5t`+k_3jE~Mk);e1O(Moih_Ff1Q%1 z++e^n!}ajYFcq#a0&s;frv@Gx==j2?2|sLbgE16eST9sgwKNJxR9&30RDZ_}#+=XK zq@c+-2CY)0^fRc(ydpc*W6})sOR&-2wjrAIrKs!9zFhfy^_d&}5Ks|WSnRuv?$yHL{2;!!Lx5_M7BcmXh zHr#OcKKQN}uB}78YYJE}nni=1IrkE(Kn|Qiu^|8_IaY)`jbhyK5AHsKTZIB`g_B{< z^pVmxDl-ukeFPtH>s+SKvU@5En5YvH-JQ*rs`?~*^bRC2Kft2w17f!*m(}3lMcI>6 zlmVLp9qxqF(8*P30d#d1-vADRuMFM9)wG1iJzqfGarHW+B90Utn)oX-W=KvEk7!diPju^)g} zra4v7zktL`Du?^Z%WAy1gpO6#Fhbsx0l)FEf{=bbYSqJ^VhCW`n6t(EwnhDA+IsLy zZIk!#7bgAdt%BMI`E@11x&m+f-I7XN3XeVfW(iXqsa71ldPaY^;^i#_PXqtajrarC8}@#fN!DjZ1IUh5ANF`qi@4oWXyDcS&8qJE z158npG_csMUzI_HVd0*0Q!&_N=!M1+oG=qQF>B0{eg zq0<<8EkmcP75@&Z6}7DbPf$_TS3SJP z>?S^^morNVhS;huS(RO!cuvT&S59!+#ajm6GQ?XZ-ZI5oE4;N5Zw|aU#9M2;wH9w} z@YV)Rbb5;$0{=vvsL;n#0X@JajK5ZL+&SuQkj#tW4o7 z6~pvBcb%sL%r_$0Geyyy(F`~vp0}Y1>4oaS z=ojLan$^C<{4(#`zBrKS)!tXN>XO4^Qav{T9%}cT0^Yq;WejczehbCf)NT!GTTF8+ zmov0&t*Ysjc*ErUBpzP91hZPWiXoBQJ=ZTpr?`5bf?=$8zXp%`@FqmDoceGm@wUNy zgYruYKa7u9H;Z3k?q@|F?Kx(|?hU1yl<^sC?gPsm%p_iYqTQ>kDYF;Wl&s2o2SXgX z#D-Z{xes|3xpD%R!RL7fL}s@cCw6QaV(mZ~Ww7_#sC}qk+!Q>TGxI`a)i!VW;D>zn zzcyAJZ#Vtl+EOAXRuF7HJJ1If zazw3KehNCFuL27g6313G^THhc5~p@blmXuO`=vB_J``*opoE`A2+Evj*T*)3-_9J& zj|`#!z?5nq10H1|yK}MLUenu;6=_kw02TF%8=iwl&kkIlUir)$QY((#j97NH3O_OW z#pw7`06?Uzw)yZ*#kW;9BHSRzMo~Xy&&ie(#?X}z;s6Q`6x~uEwkQBFAS?zW#})-g z+7kM311dm*S*OlxrWx4VKjDv3wppm@G@Yfyx+hB$!6|(K{syY_mMg*EK?@htFU8k3m!dJ%ILwPLlj)kOEN3XEZl|#R>ok6@LW6T zo=%yu+W@%OuZ-P>IQxw#C8JEAY6mZh#;#zbAe)PkJp+g6kmOcIV>N>mhVE&b87pF{ zHmD-jk8hMWV?FuSif?}aeP^=TL8x;xMy$o(fmF~KTuX+2guSOn({BY5JX+X~hgLlc ze@iM?ZoxyJzN_N+c#pR7Mtmp>$D&v;%q1}D1-bvrXa6|oe7u>`X5yO2(YjVBDgvyuV_T{7nx8~T%EJ3n6Xs}RTSf0> z$O$PEC6`f)YLzT9_z+STeh?7#!I9e)c#^ye8^C!BYjALjF=iho8kgEp(WNJ}Ls|H( zz+XxOM1TdBXl#06%EA)#R{}D&Sp>AmB1lPDczMgT3`pkBhK02$Y3N%c>cGHEl(6lF<6I?trMfXrZXP{k^Ikrb=Su!NS#=1v;?Tm4)|; zx;Lwtmx}I&qpo&Q5tbaCx(b%u&g=)XAYX(_KL1T++I!IU7*9biz?{n-MBh~ieqmEW zKcg#5Tzkvmkxeabgx6n-AQs#JqJ><*T!jtM%Tq}>t(W^jt8CH-R^3VZC_3z1V3i+T z#KLd`G73{8IHO3Ql|)C2)`Ouq1s7Qar%5)YZ>=)HQSl~3LuG)YGoDHX*DiF>jzUa{ z0Y(HhaQb1yUOF1*%wx7qvLwN(VdTDIbg+4fKSSH}+5k^PuuP?In1#SECT`C}{zYwJ z%*2MO+Th;Gnj^{@OhH%%iIM5k^{t39#_Xpj<+>I9E2^jA8wmUe10;cQffKVEqV=Tm z|FpUDfi>COC97m}d*i88+)p&5HMcapO-wN!w90I%Xe7Tqn&870Mm~K}Vr0dDV6&=( zxEB*_zQt^~5}L-*j_b?Wcw1C#$;cs&aC9NZcTq+g_MaG7(aj{pmP7{&7&9KK#T~5^ zy=~4fyQ1es&j>bnjn1H+6o%UEQq6pa2i`Fym2-0g(6=-vN{sWSmc?uVC)WsgV8i}n>x zP!mE#8k>R={-3Q9dTe}9s{!RfRT63p1_;wkkR1+z%gxRyC;M?3hQl3(4Q;%LD`aMl^EG3 zdSM$bxTY8tR+eiJ1ZRGdiJPslkpG1k+=AT%Yv01*H|3$)n!S!-L#eW6zp`p;q?*!` zYVw#5_r>F{^$!m1kLh(A!u@}Eji3awE2=5+Q8A9p;6iT6+3V*D&OVDpNCs~bJMSPm zyk-C@H>NTTEIYbkw8(^;pgcB{yX#tY7=Y`0VWnn5?C;sKA%d@%?T-d9HUxiY(b}{` zj|uM5qVLnV#S0mU?mv-Ryo|^sx9~t;2!7EfonK`BpW_z^{;(7C3+48a1xlz9?`mA| z2#ec9-)5M_)p1n<7ehEm3{97i+c*KK2{Dj@U#JcEt0{d**?QrN=n^o*e{epO-uq1| zf~Z;ETFRKzhzW@UYd^@CxLwR16=9OifZAji=tYm(!Da>su*~J75FAi}7cpi>Dhq9v zXfj%g5m6D)LVj^ti7e4l1W1@n7?p)xMIwm57HH-6XoMubW~*3-K}pjdHFJD@U=;lV zXH8PZF4KNA%P=KM^5M$xLnK_;Dl`JEI*Du)WE@C7qXU}vmb%Plz}Kh8Y)&Db-}oRJlqDM~n=IsLZ6L&++qEN1?G%s)it$M^I+2A+e!2}3ecLStt` zo?%pzh_WZ6wllQ72+cIXsHkhD7XKJ{vedpE@?{wJX}g}fWFb^@M%TtE}2g}|v9jb2cJ^Wx3Z_h=#;C&H(`g@hN*M|a@< zhS1;eMTZ*f9j6iwiO*_&V!WE_H)Fu}nU;8iVG9_4y;#5qs46f@qZc9<-e=++)5_D) zk)o6q{HNg;9Bh?ygtG7$x-@m*Mnymi{*x)VUdqZ)1Xv3qQ!OU^LZzz3L_mu~*`lNr z-I)lmlug*L;_9P=IcCi9VGhZNEm|tP)VJU()*#e#_a6&eVwjl+6I(RrWSP`*Tl6-b z3i(f~K5~SKf3xbqNvmEjGMP)O#H^Ht%5W# z=Y>n~#MS8d>(4f+Z)PiZoj5Otr4?`O+;dTinjd;;DxFi+{Q6XCr)^9A9glA}e~+cS zTVbisXU%wjO1hWu?gqu}H-EEI-mS3zKcDl>`j(o{CtB41PK)o2Exs+-wjliJ@8j`T zv8?=m^$P$7{&K&QzyApwccKjD|MEX*lM@v7F4Cvg&%6xdlkixu3`g1<@T*PMci7%-3$?~@J}&)SIEp+-hwZHfJ+2(*@C!2;nhgf{E?oYmNV zs)47{ZM@oH?bif#@@n%EXPmW|H4?kgG=pmQUvk4AW&qf^p0gU(wb-$eM$*PYjmTu!ri|yN*zN7(3BhtZuWbKVq)wDdn zCh(twyGlR<*h|-rX-5w4fEh`=##g>yxvT-&gW7=a&aq-^$diB64gU-BXl!_wFp8rA zS9!DX6nG`T+d)J589bQB1zYKkDen3<1vWTb4AVDBbQtD2w|;j9dT$3!@xL&>oQ5MK z+IrrP=Mtu3Bi;3_dLymPv*=v*;3Y`l4jzZynB(-HVfv=KPUA!I95KqLv2*LAUm-OP zibg-XLF!H#X50ed;&3u#TKb;=x0M;ZsoPg}0 znG#E)_;x%H6@uH*%;}?OaRR3siTMAe&x+b#0&D7^wGcbexE$CdL!#$gK#8`;zD%{= zGw&cC@RKAujro`?CLyPbF9k3 zPkmT5Yf7sYUdjq_Q0G1D6T-p2xlb5`Sc`qaMLzph?h~SY?nP)`a;LBa3B*p}Xr|OB z^v=YFGcKg#USW;yv1LZ{5s}&;td2KV)N+qjt0o{bC#1$gzX1Tc^wy_iTNpdGKcPX` zutoFr_7~1;hS6F3*}GFSl*sf*VD9AZj~+rE?Bpt8o>TOeJ- zC|LVgu(^w}(1QSU(%W_?Sb%WP#>1m55o%alw2%1#^w^?Z%@1lbqFMNmT{jf>`xPGY zXrIQ;K7ouQ9ks28KUI92!`s*pn@3TPid^nRU3$B1f$u@DFD2)rM#;3Lykd=zh`6nB1%W?Pl7LgU#eKdLx=C^l{2U zKQ(ZA_TL2p#h!1x2`8I8+OkTd^p@lF6!&`{Vlu5(jG+>YA+)H+@CNlc(h&7@6b2ia;MzFqZcW2k5Zs@gg(nKOMLPf^X65wPf-sVq>BoDhAO zAz1yPY?BsXahm89SO(<4lb6MA+H;>FjooA+#6))?P-gAAx|93t0_UaL?gYLsI2pdj zA`nmlw-To{Cjd%+OmeSPS=hj;%uUt}I1xSt? zp(|)dKV0E>M2tXx9^e(8<(3hQ@|Bz=aTdY21cFcWeul~3pzNERGgNWz5y0gpEjbk`eg^f=@akYbdJEQ?+;XK+(*wh$uWdihY};RAQ%Eln)~oeJ~Wq)g)?l_@9)DC`Eo|lyTiAkf5?k1jl|(akv4@I>&Xuk)Z!34P zYhK4LHiK)?{Nr78b(|S4GZGEA!-tDs1!3svNy?)Zj*i?Tab#|A{~bbw+~6i!ln_rj zq5lPHY|;7r`pp(~GprWPz&sm0Og{FTiJ!hQB*$)OG!t(|Vzeha-#O2wEI9DH^}M{# zswazC?_)hJIgQ*NhU1<6biAYOHlBQ^jZG7hG7Pnq(u24R4wpxBlbF3-7HJK$>8>m6 z71f-L(4BtHH|2tCFm%#77UPIjYD<|@@So6pyhU4|3=l~R+!*EzW8#Ao%t=|ANF<9K z$Rb}S8*I4@fv!=50py10MRc8g@|LfmJoxr3{89C?jUZmaYQ#PiRC|)DY3I@z>*A8* z1+#z&oCXs)GThp(*bH*zXRqP1b_Z5aEa@aAlxhcK-q*3sdMF)P;fm{@*8J|()DZ~EFdGMTEkRA$`~54^n0vo00h7Pn`xO+xz2DF- ze{LG+uq=0Af1w2X+H${IJe5esQ; zi!3DuXN*dU!eYJat}CIv$)?0)M|%@y7WO8w&L=5jg`INy0~iKLl<=1#Sh$F8h46C{b8k^oOLae?#jUy$!LZbZLri zGyQ1-X6*JB(IAnO7EW4_QnKBZ5NqoMiMLorY(!vcqB$5I>1&Ph;^>nir&wfQF=%bFKfgB& zwGc8Jji143lD5lS2)Gxu>RlNYzF*~_MD7%C`|}b zl!BGe_XNq3ttLTGD}kW4!&kgtS@0pF?0bCngFYD0X$OoSCQ%zGg)|NGRBU1*C)zGW zHtnETRnqGMr?#>BX@%$tDWCmOsd%2@l+Vl}ACpB|f|)ic2e$cPN`3_xl2D-0fwwgz zbuOBfFi(5qD3b8_+(OE(L6j6zark3g5;_4ByXZG$(icQi>y=eP&^5Xes(#A^S4aq@ zv5Q-jm(4Eb^xZ-RJz}-dDz4$O)Z(nRLI_PZ6L)r4&9vr+(194Ydz&%waJ%;_d;tK8 z65Q_nNPJfF)9^NOlUL$j&%FypnFU8*MJmBm#A53|;wXiO=(a3SqAbCFfFM;>Upkch zF@?cA1V@jMJWWBxKRlhwfP^J6&gl2w@|U)W#F&LyvA=&po(*)8Q)X6T=Jw~fD<|Pl zkl-$0;)OLSTuAWSIk?X~N;S|43_vX(8a*Az!*YRLAl&n;H@>^0y$~s^Auv>pOmapY zEI?bv3B*h;^y2G{$NgqO-f6J5N(+HBQf@|37T;`s!16x zLdZ?DVGktcl(b`iFYQ3Iw`DsLyhbb!jdsY7hOn~|uqE2liEu?69SW^IE9qH}TK&`w z?bR1zDYN*_XguB#56oAGSs5o?UecScdY7Em%0=E*cW`c3n}0KHqIsxc(x;hV!W*!^*tobX{FM?4BQ@@bD^*sF=uHoCvv>?# zxQD!DyjTVK&yo&7u>ysk*WvD9d_bU2@Gkp+!0EWzDr3Yze;*u{?i@QE2mKi7|I)$- zN(o0<_a`_$>HYM6aAY{yyV5xesNto08Ngg{IF|IyqGkJxPcK0`TsBBI(+gnY z`Nbz;_&3Hs;q~q&!pe%KPQv$T_ z@|U41DEcj&{fTvSc-?GnE&s6?#C((nmG zfv(uRhrd`lgo(h9X39=$kuq++&6swv@a}RdbVrR)J-kg+34Bq((gyX#aJQF;5_kU@ zBaUOU8jasVhm+;VEZtJ7t~lf*Wuf$~w6al11UN~~3-buCF@bv@R5k9zCuD(5uusAD zSu)`dMmLm1{L^0ot|COF00K?`c`MRH6^c#yI-*0CC@1_7O2w8X{5rFYB>v%2Zur{- zh8a)+#xIK)bP+0mOEdVB*4C$#t!nFxLu23pKGdDHGMBuV@wIWHm*u^S$b+5^R*NKl zI0^+=$Bh-)SvELFAUZ02`Crmig7DF4A`Ay-SbGW*E<$GrBz#2Lh*S$C0FS4lE)Wy* zA%oFgd~P^DID24xU?6K$aCILZU>xYr9aR_V!z2SSP_1_?00at*kI+OI9^ev^EojNW zKsRJ`Z2@uy`a4V+RUdK@Q3FA*@Pr{MB7mZ!zA&CcUNobRS07{d7HuD2?Gh>$7|235Sa&aj$PV;P$_A#>P!eGZJ2RGzroCGbND%fcNeoSno};Ah zwn=}RLV&{k0I2N*djk5#f}g@CQSlvS#kAw8FQt(8u3#bR?}-t|%4mqx-BtQ&x@x2leTt4~rB>api#F!~o@>8iDdTAn!%t z?;uq?`Zb1`XvtG7GIDF?)wrQcS~1gM%|FXbc;_RU_TU3yg`jN^WgrSI@anT$Wf*hT zS$uIhaQTTp;gl--^$&?V924_9uNEBd3!}$a02`d$3k27GR9&lHq*8eISk7H?AaF^I zH-CfI{uvmi96<1ZWDG)Wv9@C)SDxD!W-ZInNjI}#GI?&;qm#}+r$O~gE`87ksD(ph zcl=|4?gx?PP)VzjK>N5e0D-;Uh!A4=w_V3ijV@8 zt(_t90&nQZs`&=>jorwGBkEZ*N_tO@%*I_3#e4i`a9ZikCVf^bz@2kKGSQ8!sfSS| z(_EgGrXJT)02YAY2=+;gI3?VGFz9q~F$P{z1|6XHzsUPJ{{csqv4w@ZqJIIMh+1Np zpm1dr#y>O=Dm>XX_$YFzMLD;f0(My+DaR#Im_8gaNIl)f6>nq zZyspe^h6u5+6_7A%g2!|mWQ&IS!E$mL!j^_9pTLyxL=7>x4nkg1j=Z_)f$?mD6fw( zW{ko@BH_IW`~NNHw;fK7tfe%+1txCqot)sPjyXVGI}HwhG2R4m!o*Ms?-pUps*uAM z=|2KF+-q$JE7QJ-wOUMLePvA#fHA9!JK|Y3!qXE@P6I~l6ihK5-hhjw=(p8wj=Vsl ze*T9eGNv~KkM;9!2p$_2D1jR&Uw#v&nvB_lA(z<)2KwWXF))B@j#k#NQf=ScL14?+ zTM8TD;g0EmKnbfTHhK&GP)#)ga+kCoX&$JA>Mt} zcn*jU3yf7kq5TA?ymx`P8U|@|U|?|YE?{av@Gi)oSrA8p&D%LR_ z9_F_Mv&SJOkc#_J_?;*0x{p&TS@1lX#LboUV2Y{PJ#4AKqwz5FrsP>De8_`+2%%D0 zxC~i=LxDKGRaZ;iS%6@VR?Ss{6e{Gj35tehlqiI*!FcdIDPQ1opsKI#&NH)!mfflsc!zV4_=lXL zo<<-T!IIk&OeOos2XYEY+!@g`>Sn5lfP{r%#y2*1HYL6ffosr&KUb_{K-a_)={!6J z+8HC`<<>T8_KqW&@iRWe1hJp}23uULLa0<)tZMI)zh$ZV1@YkQu74O9_zvQW+4H{& zU0*dj24;24$#XyU=u*#A!q}*_0?DXYVwgcY&19%?!s(4$Yb9V%zx? zVg(D33@6qa{49mvbV%bjITok61jS(-eJnZ67IK=+;514Ycgdihu&m}sHNO@DMTT+@ zkHZPZBX3O-%ts05h{Tpm$DWpbdZkKi$MIkp49IF{bq%UE!OC9U5`m+#@k71_skP-@FZ+EK;Y$ zG(wBsgaJihfSc%TcsC9WH}8i?^%q1gOE1qKVO8(tFn8F^iYRx2wA!dxs^OoIzP@5- zENTOW4&Tk72I0m?-i%ro-Hb>`W&W?RzTQhA%;w)|41a-SOhN(iV^FTZLkV%cZ{)pb z67|FQ!ome^u>?^kS=yAvu-POK*)&g#Lm0~gg~z-Vzu5g#g2S%xU*pw1y}^{in?&h9 zVCt;mAp1Lr6PO;W&(5NiJ8CTwl;j3dtEy7pDp|$@>K4{UA7oEf?!z$z$w+(hIoAWurC76lqE!OnU&< zh}dzlinf7zpk3sSxDNvw87`?XG>y+W>`_FG>`&u03=^@^G)LI7RS>%{%ZWvLYe80- zYW?|Qg!!~vuo-g~M;Imbl96I5(yuED=)uw26UKSb>wuZm{z;e5;QwE2i&0+#&yeqM zV7S);B{uhJ*5h%KQZghn@T; zRqxVOwIA>mAN4AuKY=vb2%dwee4LSkBURm#^(*9)U)B0`m}79&`|=)W{R$ zF7o#1$JA~KLD;kCJWP`Q z5rS*MF+I4}ukeqwnuPo`!~;lV0|V{r!lZs%v>IiKNmiYAOsI4g5K|!U=vee2sYrL> zSg^Pz8lx$D^+w6#p`7b$4k4*1>ijKSq87*eQ$T)!YcRe+lr_ejj4T+Z#{G-kxTj`b zoHe||KVD_j9$^E}7PW}=?f2yB?|}oO{XJ|^TKn^;jU1)sbc+)fJB^`3xPlbJ^iS*} zT+D@*aBVei1Bp9KX2H*uAYha8p%}?tzc1Vt(FH1I{Ll{5te@s@j55xDLyYR!r5srU z!S6&dkgr*q&~^#HRb|u;z)L_*w}6GpOcp{JkY$|(KqUJRMH{bkt>b9;Ly}wcKPk5W z)~JRvu&PIP4`$6VZ0vgD$|79%C;p}N|2VD}+j=6;bAsSJ_!WBVjO&xVwZQ7Fkh1_- z_e7>q?<{Xp^F?mV@z#FhSYa>Rl^jo4bHK;H5~4GuvdHZ2w$kDoN?^~6Zo;1MnZ`M{ zHpkbB5u+E4T+bz8u3J2^N8^DWzW@n9_>Zl>-&Rp|1aR5>#oowyiK|iG`4EdLas+@{ z)GKT=UO<31G6wtUHU8VcXM_qj-WaVx8Y|(Iy^(MpbHe(PIma&Xnr;HsLzpx8W&ERt$Ld zO)=pak_<*U9VI+BpB$c1gvZ3rnM8bHDm)Vi56|+ToNx0G+ZnOkm{_0ZE#9q!zXCf1 z0l@uP`lOWh86AnvPtua*zfv`OH*<2lsRFm?oGWh8>2KbmEK7a;TG=*sK4rQ?zOlm6Y0EgIt- z(c1sV5p4p!)W~pS`##=IK3p_!a&+BbviaeM#z525Dz5kq84iE1Y2y$2cJ72?Y=74| z!GB>NNG1SO3a}mqztnTX;8X%A;hos1Tf%G4y3ed3Gp*Rqq@aGdUUGf)(EYd@5-**R z5uS(cf$5#d2oXi*-TVQhLfj9H`1FX^WW*WQB**{pwI;Wofb9k;`uQTyJc;_SZ$Y;2 zgcd}ceyMn;2B9{82Sk96a00md|6}e=z@sX%#_tYENV9~SAQ4cOD5yk50~#elB!NV3 zL$}}n$|xv`xGxNJ3yvUxPGg$pYVZ{YXIya98Jy8E;|L-G2GAt926Py=5!`RvE{F;U zNPoXmb$dy`8Q<^!{h#OK(e%A_YdLk!sZ*y;ojL`h($H-$zzz9=5WFs}l7F19E=47j z>|T33%1w3_#$NBVeWD=@|CbyMKR(`$K=ocEwBaGyeO>( zO7&fDJvqiPCU*g&1bh4b#3{P#Da40yXN$s@{^3{ZL)oCIsSf8RI=s$ZOT{7|FSCc> z;iavy+IZVIM0LjR#y;fFRL~CNra5W-wa#r@|LSzL7oi*&k|4cJqD(Pe=x_@3y2A?B zOFpZl=1@%=(0`{sl-+V!3iMxXP_(L8FY*EAxLDq?`pppxCCI~uoJiMmRo?0qe36q) zLK>q+^aG?jJ7|6R?7vjefLO7P(SNU9&0Y?ZbCvOI=q)((1Q(1~<|>Ekg8_2pnW87} zwNKuwcYI{ygm-rPOk1>JiP&s}!ZZ?H!XMe8vkI}a%v5P3{cLfepIIEET_Vo{A3~tKKTeg%=af&26U!Kr( z2Gb_E9DfhvkN`qLl|kFM0?F=hpdAM4Rr_=`_W4ZFFg@3k6%vkkpMCOL&237>7G=r| zr>WSS5K$^Nqv9j`--DHk-LD6E)b*lGp|{z4Zm$Mj$+7DcGFnJki(fua#O<=@L`8W%Q^az4mV* z6tYSjma+qq0jv70C>-Em`}2&^=Nf1nljZBE1VRkuz-JZgZh+L5^2SY*Y^UM{PMnN^ z)MGaYCZvRHl9=Jp3ZR3E%qm(*llj3D{x<_juLWP%LIz_EOcIwJxLCVE@2Q0&8a6A_ zZ|o1rLXCH3P$Nheg^6%=)Jyp5NbW;j?%?*_Gjx^@1dHJZmJ698YFX{s_(`FuqO&56 zBI2v(Akq0w@vY8N*PuY`nrqa(w1+1`PSqXP>AmtXm>QGiKmq3= z#vICZMZA%Xil*#pzRAC+vWLO>L#ZPw24vV_q*Zxt2BEd3+~+b}!r7C_&yIdTrVYTD zO0!b+tyLL&ebd;0E(;44t$}y{Vvu=ld z?N7*1Msxe>Iqn?)xi1VMpM8!nSh%X0dt7o@-Y^`uNgSJSQ<`kci@2Hg*zvQlBft_n zpK#LvyR7$6gC{aY(UEJ{jG7<`-pG)}BYO-hHSUyS(lD`_aCX~&p;T-Jw-tEkWkNvH z-YrjsT+d}uutG&Zw%c8oqc*RlvyZC=Zpjnp8nTwJZk1JL?YFL#(248{k+U(|cPFTe zUCk)~Opx}R^}sFGtR8ztqR{%hk=r;Hy}5_Sny;s<*(^|H3QJB|o^V!wPg7-oWf$^= z=k~|+I=6ohXUaVBRI&b54(ma$KE^oI*1!?LQX6dSMH2@bvo~2wT^WtpFUXHD?76WP z*^>9P%JhKF^q~CE8``lmuVQ*(Wc{)AdV(NQm3`vFCi}C7ogT;)3ot=>;;#fgXTNrh z3q(WfLQIGWew6dH@mDA%LDR}+x92Q&^Gq&kM5-v;>=OqSGX%;t8=P@UTQ+z_4(POE zgAQR)-no}DS;?RO?sf??8KG~HSF!^g&fdIasVn*suS5VzP}%N+kwLhOIrw_M$Bs?^ z_^p@;^v9$5Xj*}0J9l$?SM+{r8Fu>of?)%V&@+g;#Up!WwG89Dw!XLeHdta}gZ+`a zgW`a@l|YoMQ0U`s`;`W_D|(1DJwM6%h1Taq5aB!D6=kCA))g`^Cj$FnfFf+`u1Ln$Z>IjvFTQSTa^`VwT3A>$)ezCK33 zc$Z-P(ffE#(yR6QD)=Swp3g>+Jzd>}2%`;18CRpl)k26e(3;-E0-LWfzm~L)9E0SjEYIa=h~Upe&No zGwDf}KwxC`lhusOW2FX_MjhlrW^@+j!{2yGtg876Yl2mGgL@)!$%$en4ONJVbP0X2ah-EW(<5Ht$pqffhmS!udi?T*q#e#8#L>ajqhcH}*{~ zQZX6Z&?)0-T;>WDv3Bd*<(K}I7=_ecny9^4KeX5<>4%2cBWnF?Mut1n#+2w1Kue9# z)cRO%l(3Oz%EC<`Te-@oIZID2;i{eV{<`~uAm@Rd%%ED$Az+8&R$#BbmtkbBa>?vU z*P6cVsNGyZ@Ep{dEYeeI4MF?4+3_TqcGpX7(ue6^u!!LZsj7g}7yIqtGNsl?ii=C8 zo3i_aHJ3ML_mwB6#d7>pokB@o!67osg+x$H|5r1#ykh#4%db__e z{H+-C8*UPi#Q^hu;9pQQ-9D4A$kp>bd!Dg zUKo&JXCeSABiGRJudqT#Ceh_jv(X!re#{otP`Ar}?C8juLq|vE4(+j4raU$8Nta){ zkkD;Up875HY|Ia z2xY76De^IA3K8D_L3bjT`6w&Eb|H~OV>!=(EN+!zJ2l*_E=Z9z-qsA{(1)qUllHMx z{WEp_V^j6db?Waz{n>$IIOC0#Fy>ai$#TrfkMSp1^O@9ij=yKk#Eb zxzx3`2k-Xv{S?B!enQPv->9G59^^tDzJQ;#15hERM7Niw&zH(xxIwCQ5b!e-aW6N2kbqJc~t=gBL{vh@uQs&L)`+l(BozTcx--~vu* zligJAO>A^wG4*$dw~J+~t3bjdIUDQ5f=f}`nP23-Ul~GYCt#x^{ZvQTiK)zITcp9y zNu;^?lVqfy79WR(RMt^v7WA+nkcc=Zpj^6qh5lCdD}RAy zBIPrrZe+=K7-_>?@!Wueu~qiBF-hxF!S7YZu4cxPJZ0D=^eGxgStKpXY@MaCCT|}N zW?nh2GMQw}X=GN~h@1DqQ29)NFjlUy@$vYRM<9h?*smD|(7oCdJ%m9+&Pj zAn$Q62j&ef@(haG^UlSc1Uy(}e;w_hz!T{%cf=3D^Y3>Q@e^n9lNt`1V?DmyinO+U*|8O(oevL==Cx^RSv)u`-L0=ltTKt6!c8s}!nKT|7 zkj^iO+_5}Jiu_K16IjH8!7BT~lOSAVNuFQ~$ZqdwmTKC~?st?c4Abq+cB_i369MH6dK!H5g z-|58IY>)4m?oN=949{vi2y5Ga7TThM ztm{>$P=L}EXu+ohcY_%yHQ0V*xeT%D#)a(Wcc4~Z(+=_LW zO(FBZp>MMD9huUs{ahG;CHJljxz?($s1JQ8z~DKl!pdUbjT>GwDy+GEGwg%Q)KV0S zRz_1r9ETLyK8Rf+*(xk=7U5?mwuC#9H>;D~LSAopdW$jy?x`SjP6nH%2jC{zo~;&9 zy=G|Pv}-P(IcxgpaMl?(#aEu;_Lt%Ha)zoXzDbS>Ttr6gZqXyPxJbvJlK&w1`xj*Q z(SBUkc;U>5?|U;m#%(_5ALzez#`JRv&9K?td~W2;H~FXEB(^3IU`zz926StBjKldu zlrhe~j7spKmHX>IIYX_+EjUKTfX*+ss%;nB6A@ok{}~#sBK?Q|*+Hvl%CGemvd0OtLcAs9Afj1L2NwA`+K4tgSIp)rUW zeR3}`S!WG}xl3O86N@OkQdo5GDPg@@cQoyZuL=g+Wa6Jmlu(%erd})tQPJL#^Pilb z5*b@|^?4c#$c~cnkBRJPUp+TxG}>t|K}1GVeE=$Qvx?;m`yc3Z64&GI56_MQ@tc#MNZ2<=763<)Pv4eEzkU;6oq6% zN&Yof_VlQ%ig4J;7mp zU2-U>cK{n-eEb|OLa(WEm_VjlL@3(Z$U-4qJJ}J;_J}<&Qms7uNbIcGO9^QL=BKHe zNo_K*|C&0V28J?qBWfCC!uawLHDSoCzXI^V>SFxi5?HaYk*d@Qo$8C6G`gv#FoEUKO_hZXmNO;2T1xPb@|;>JOrUv0V`ZVo zC7BhT&B(EQ?I)9ujmAL1ehHj&GN#`?seuJWza;YCxd!AffL&9_A5mM`&y-dEldN@ev8F?;t$i7R>hQbfV>Q2UnAA|9svkN@NBk@^A zMfm-yqVI9#55E@6xvI`CII62lU7A`M{>Wox9c`9wp2=l3Wt$(yUX@LKvJ+6YengU0 z*#=za7X21kZBL2ntxL*Yr@wY;^Hr(F-E6P^`c-+7p47Z9uUcTCc(#3t%8>o) zLxRxq0m7e39F?t26~VTO_>eJ0duxwT-S|WL=g2xGC8WlF_B(f~&ivNNz#$rx@0yM~ zDK7s+u_eC<8J+)eoqu$j{E|Wbksq=1jI^E*KOFZNjfAdoCnN+^8natd3EPdn=>gqJ z2#C5b)*CZ8EDvJTLh*sDkrL(>Z~ft71T7>kqWuc8J& zIy?=LXt}2**8vND6ixD$W4V`3lxHKCsH z>tKe-{gwxuQPIuK%2Q1l{*KkZ^*{mk)lf1St%T+JDRb7PYL`T9=H;v z>U;j<%mtfPP&4M_dKIuJjwe*vSq> zV>tbO=gytQ(br9$>K}8Bn(}t?(9x(ln}_g5!h@H-G8-RFu4xZXS;L8rY-6EBS*h4t^yw1IEklb0kGP`Qu}>Q2LhIJ`_8&Y1L>2jPr4(C6@|g zu@6sQ?hAkIi`?k)lwR87mVQ2rEw~%?Jtxouk;9>LS?9dPgpE+n)$3a-47?H>;fb6l zssu908=1b6Jy&i&EaH+@H{bD2^f6}SqI%mGmL=3)yNX{=+}od+Ig14Ivjz6XoRh?Fmj&z8C{wor)=ZS|ttN~)wQ8L9bV?jyoH8}YFqI0T1(cW0 zj!>m?KUNNVC4c)pd?>N$In5vkAe*YBGcIq&$KIk?MfLoQLNDTx5U^}6a=UGz+-~dN zO|QP9;93S4b$(-?>-0e!rtFFvL_{^EeD6KsoHYbEcU@%~H#J;k%-ZMvuELm481ywW zW=@|q>)M-d@`Oj7#9P3B*|eK)oWWb6x#qVwTzkc7HwXN@^{8kZb-JMPnvFr13ZxHB zl_9cXO`bG)=cEp<3gsh|TY-}hB0Fwhe20+y8~ga*fhB$E0etd-eFdRj1U##3=a3Yt zWoF+=RW5OpoY!D~d9Rd`nQm<=7ps*ed6G+=fsvzg9_um!kWE=33(%rP((jir>!T+e zFrJr1wD^Amw|}{;AUS#RuDvx^9q8#T#GKLqfMU>&Ok9yzR!(=zD*eX#N@CTAtJVm` z>Zmw+h916lkQc;AfBYw@_>B7;*~)RW3&uqsC6m4JIsv`)*@w3HH|Aq^OrqZmk4!^9 zZ)xb~tw-ZXh5avHaIjBr)3Kj-Q3sdoxErCr)8%+4BP9Fyf|BhaAirN;tg@MB3%0$H z0W4W7A~n5*G0S9|#(%q2`xc5o@W(4>&WiY&#fEk>9Vu=0Ux}@zcWPp~gX*YhfT{_7 zK#T-wi(cwx|F0sf>yF`R3xZ|u5=gwd=vQZ@NbW54@aCUhF9JNk?KU~*V9H?{8cQ=9 z)AE+yuLhF;?A9Z2PmKcTcTUbDjKHuih)w}Tzp)D#`!e^ciwMlLHP7?S8cW{)-sl3| z=<)x((KKn%%^t0b#Y$2b@G^}HcJ&c4#(Bkpb-kBM0Xqnq;dcCaN5j^gYaeC z?%u_jO0ANyPEwXms%lNFcY_Kyw>j+{fmjtyno_3=YeT2#Ot_$RCChXrXZ`m|PD@lW zkV;bfvkCnSdtiXA;j@*a%zV1YO$~C)P2I*oJQ)^z+`j28oz~-){@%#-c?79A!KLP( zZ_EfK@nRg$$dy&Avgc3_^G_+33upde?jd%_AdhuEDBB}*4}8bm^NqcAp^V2J_7;9U z@v(VQv`(v%lPjiZwY<%KD)zGQ0Vd&d|0gvG4~HdBJJTVam|WGjuBI~wL!0mi@vSQ} z0!Pa+1Z5{lR3AN`rtwLc$QP}hj1fhK&Wx1v7mEj|X|1f~jAZS(>u~AA4(_!cRnxU6 z(pS1Lnqo*KXAf>Un69cl4Y=-2E4fgYOsoX)P-+9raSyj|vwzGQa|q;P^fM#IUR2`!hf8iRB0nr#GK7e>nSMIq2B6w-6>+eK`%R@9R-YA;5RFTuy)2fYOtV2ITukK_6bC=(x8Qev3|K(Ma_0&%)1%S@G3mWvg-!;;f}=ph#8%zuM4 zy?cOHY)cw*f?Z|PGHUivWOStFlzm`rL}ZCdrgtl;g8ORui=j&AmAackYe?crst!3- z139fPajX3?YrPaDPM`q69m|qmIi|>t_?Uri8C~?Vp!@%%Z$I2Un7)lLEk!n(w^bcw z{aUr~OrizVzsmyc)oHAM;N>8Mw9manyja#tgR<7nw#(*=a8mHt$H_;lY+G?_YzT{G z2svP#E&k!&j2IiDE2Mkj9r3NfeOPOM1!8n)oZ!ApqsHWwGyg{DLLR8GI<3ahk#(me zCbB$}GwA}>0p|Mf#@J9G5xAXXLA6YdU}DYEkZXhB6a<}f8#$)Qp2mQ*dd;xaOi|nn zxSmPXS`nYn{~B_&)47y^Mo~dqK5@X{bEKQwE`0yvvHw)jZ|rsbx6;E1}tcoe~6dUKGfo6XjMzViQyxHCv6_K-#L_@ zw*L$)W^lO6UyK(*x`j*$^Z`^VhyHTS;BAGpd`ThkG}>#1s0{B?8?5R3t4aGb_5%Dx zWj|!fX`1OoV0rKgl=vY~Ls@ymwJP@sJRFh3dciD8stvqIyC{Esk#j2|mxA5f3YACx za#omf2v)5m7m-1Nu6dfO+&uC;1?R?jEU47E^3j=E4aFrN|BHbR6wQefy zmE-^LBfuZy06)aEvfGP4p;)wYGzLYQTnAbS@dEC;E8O|pVFk-*VtYmPGBPM~fqP2y zhQFk{EF}C>r2e(1YUE(&&Hj^k`APllbp5?Z>!|84R-PL)GC0+Um3_P957({)jp9g{ z;-ED6FHWofyd%{A7uBaD*WX9iU;m%#-+xL9{?8U44*zIX|BwXy=cL2GLGp)dZR$6} z^#5*>22eG#50wfW*G<<&J9jah|EHAlYt&5E$&r zkO6mt2Bms{_@sU%dz|{BzLIN~$fE3B`!oiaqRO%9#U9gtw3a?CcBtQ@J-pN&Wx(v`i;zL7_TB#JClHDT`##G2o9#u z81{P^Xwrn798_3J=auyQ19kqEUz-0XoZhHkO((yk{?~N=oxiAlxp|OXp0eddj`$Ei zSXDtM{H3&2`YPuNJR>B7z*zi8so5%+uCm=-r`p*D3WLM&HtQYVw%f?B+C`m}s!pom zO$_CoVpkX!H5f%zJFyJz#PQ(RpYlatI2!G3NIU%U@yRlclN(g|*zwLQHt>tK>^4sJ z*}IKPbJuW`Ww$Y@nLIveW9NVb+z|n|Y8M|g)Ji)~r-2@?_+Q~l2R>zul%SWmAf)-P zsCbWfy|d4RPbkwy@KF1imDNMdz;HqVO$d|{3TOgHLvPC*7Z_N5Th?WPldSU&gsa{P zHXbywP<@OY2m|lpk=gjywXdkn>MsW(;+taQgNM54fEmFZ6gw-bInuFCAN(Fi@D5M5Fl#!SZ?zGy;Hs_sN88^r$kTVa|#!&_!WOEt8DuT&Pc$X zy$KgX*{Z^LumUMs8JUlVYurE58@U<}(a&+}mGaE{y%@2%Y+G;uqN#^{eIuU8%87SJ z;3KLGCaO%U%f9fhXb$*49O0YjV9F8e>8qhzQeNxz`+_g8DH0Xtd(oOA*;oHdt8pqK zVrb64oMlH-Xk6maDyyvq6?tF*m!lo$iLZQ<-F-4%tKrS@f=m0<$)@Yog|br2tvgO+ zQpw}T%bvuQbMfTw(e9XQ-U^7L_TdDh!`m z^O=|m?!H52`1Q@yM?_V1p5f84IbyUe6#YbfC8&)4vY0Ow;Zc|;b1*r(E1E{hKyt+k z2KB0wndUSq9pbTOm&Xgf`87kNX;iU%XKVymdgcDl0)>^OA?)ctuvX%GxqRn$i1VxR zL*#OZ3@crJys(nCDWLwJLj@{)AY17BD51P<)lrY?iEfvD3HE=H*jB;ig~C7jz!n}s zSMXJC2(ohB0s_8^*c@f#DiecRPBinD;~!-Ii>%tH{poQ@HZIs$EyW* z{75bu>n4p^>uW(_!dYezw-~Y6IO0Z%p(B;jm3z~wTj*35smv=hSv|(2v#a#aG8v$Q z*hH3P)5YG%3CrGOD{j53ob4|c|Hwa;98DoVe3Q&XuG@ryol@k&t}lET<$^nH<%e1kM4An$eNLORnx|HGpDt1<84J)orE%wz;%|_GjK}2; zkUS1aJZe(ePeLQ5FNLc4ViajIG=+9T4e1vMkWqm*q_h7irrk-$@j*;rBcv%UQ3mW2 zH7l@Fz7I)!|2=aae5jO->CVJbV$iY#f~i!6y;Gz1O3oOfJ-JpP zxb?GfyN-=pn?ZYv0||#yjG8&rCUw+E9jude+c1G(g*bEG(x|ZrYZKjwnHif2dZZS- z$cHcNW4_M^B@akt+pG=)R8@}{ZFaFTEK+Ytt0lgc186$u(SVPwl9v0vaIK=ewm zadZM3>CvdJs?+ek{uRB7Z-&6wuJ_t|Zxb2gw7UwDV)7|tQc@ENqfA-0gfG=050XYBg25^Q7q`m|)1P`jW5bhkvBIO#h z5Lv$*B`+-&*%VqMyp3caU_Nj4`fZ<3ITBi_-*)M@75dHAZ_D+Y;)h5`gdSkjsYC@0 zbqavu-7P;VYQ*tNX;NtW5=X9}t+T!*#tJIMd`_Rg1MAQuqJ&70iSd#h4glxxMemj( zkxQ_6JRlNB ztFUmok_`+l)uULKq<@9(;Su1KIJ7?l?`cVR*9$(hwsO~ZFs&e5g)(ggmtZK6|%T2E?Lebb`gd|{P^hy4ZT}Y%My;+s{Sx8kz2U6meMaC4% zygh}!sW0IjOn}!=nSDLu^*;dYjp%Ik`9#yA!EeDxW(q$~$j5}Fq3lR?1@XngoV1iUiLhLxkqvRd*UXn}k#aG{)?98+7 zp2>N(;FH-)fvhXOZW2nv09*08Sbg8JDM5_Iv&Rr6k8xV>|<^xhI3#rk!|hU27+9zlxx3g+LskQVGMlSPM- zl2WUzyhBn1`9uitvvc{SStvDopf z(-{i4ei-X!#+!}R`SLxBPuY_C3aU`MzcULo06!vSjstXI^RSEndjPrfr-2+;VKPX2 zvwI3@FWjP#W=3lCkrYRZb3kLiOQfZxM*yARO(9dvUY1hvl!6z?jow6$BzEm`-7}#a zGAAX{D%LZg;{F-T4x%ISnF?m`W53D@7z7PbNo8lHfXnTwfa8SDI(0$^3SKcV2-_}` z?kTqfd&g~pNNXS1RhQJtgAB4fB0g1wUy7Yru})Uru|5eNnEzXc2VM&(9?(%79VQz< zy|L2|2eBvxVoYj|y`K`8byX-FpT|~2JMrNPNKcUq;ZoI z2$7m%(Fy6knhmwq0lpP}G``L7GBss!)2m=89FplQX?si%p@P$HYKy|CxdBwr+*bw3 z=5n|Ar8y9}L~ZdV0F8vC!={zh4%WEcs8}c5YL+$|cm1d)e@hf^;Tk^4kW!yMkWbRZ z?|Hz{!J(#I@J+swZ^k_v&7lfbW8kIX?;dN6rE-#^Td8y779GoSc!}#2mg@sGF zj-v;o0svY-q;PX(_%X%C!WM1V*#B#2>5V)o!!mF&%{<;Mg~Mg48O4mUJlNh(>WCLa?@0e_|<5L2oWFvopeAi1S zDqkr$QFGo2QZI9KWR*+Of{knz?XZW7@jx%1q@^`{igjea*Xc`TWR9}tY6=|MN9xvhcv?dU(#2E@vw_%@)#$# z=m-Vt$w|Z^z7_Hf3@j%n6;0wNzHEkK`UY-kC0IHs!S&bhSC$chnMirNSfB|jQO>+7 z9T3F*NkoKIHoI$zW5)kxDVV^q;u*Edmt5a}A!@Rib7bKW-ekwus0}tb)~rw_%go5K zdMahTzYzCQ4R;bntK^fP5E84TVWry?>gzlq(*fBbH9=Rc`H}yR* z4~Zji$S9fvz%)~=8%^--*VwLMgBOex-~QpI!}xX>Wi{U>;oW49T-};?H3_ADc(?Iv zoQ?Is=E~y8lbT(X3#3(W)2t)(>z?s&?D1{0j?-Bkrkz0^SY5gV&>c0<3Es_(K^Yy-`KxWnc&^8Wq3|qrMt+IK(Rh; zt4dq*E)qmzb(z#{zjBsTta+UUu(N{H(~1OVgnhoTZ;{qH|I#Ie_kLn#W0p>X=0zq$ z)=w=4l2wP*>X;rdy0N!EL|+qRCd6<; z9D})&Hz!t5{zf}k*-)}-*ik->XmB`W0xB~R_x-8O~G733~#b;AoLYuA|P?J zwbT+uUwuZhTPcV*!(tU=9M%!Gu8_koo)2L-wp{SlO$un8`ZrR6Z>)wdL6tR{D#rn7 ziYnuCWrQC_mHLm;sj{J7K`UA~+!Ht!;z(s}h-2>^EOjYEf_=)QOw>~upCDKaiTj^V znC7E<2#nfxii%z)QG`+|XjF817D-wH&!k%puKB9^?{IqiU?wEzsSyIR%tVuywajLvo*JsfBiS865x4T*~GAkYTIJ6GVu^QHHfFyt}!QG{(wM@2o|?q_UYo*}sl4H3s(GvI>6~PnB@a^k2rJdL1_Ego z1&qa~7;>X{nhs-Eu$>bG|q|_l8#qAW>N<()CkPVC3c~Fj##hyB_G_Trn;sZAfR#CA$-23qo}OvO1-w3L&)=lu@vtgX-9?Qefnsroc#>^gp-XU{olv%VDTZ z_P+_PDB`H6_&r2csT#w(QAFMrUE{LTWGH@)X=K>77@#Lnl)U07ED+fB+odYCfhO$_ znxMvq`g8)%-td!BAMmbFKh{bG?+MXolLF!8PvpBAEU_18rVq_1TZ%HI)n4fs()3Pe zB)9to3h@~Ai3gaS!uCaEJRIAtG57+<(d1m2Bkwye+@uo(P`yZ;A_-R6 zp{!(Mx$laxOB5-+y~=q!Q0Q!z9h!xbj>TS8cATor*&oBZP5gy(NfWnv_2S|M0cG#| zm4K1`&gw<{aLEu(rCm8~E3OLZ9;J7@g~y5bn<)R!3FFo2(>-S7-15a|<2NIwk??`a zA%~2bztUAnsre%htvpWa@WwgG-=4q62PP~YnZX(zyV^Y)%ZKdpPmoLOhfNOjGFFet zsM+H0rUDC<5Bb)gcEgO4a$E|MX{^r5Ocw2BhTr5A;HKD7R2b`#X1@|kwRJJonMT#S z<%`eIfC8nzgFJ@BoKhwOHk6y(He{FPMo zSJhPxVSCEDB*V|O9SDAP{9hfcb@mIA_)`8BUY+1A8EMI5)KQj-8Zh(b%w0Z-KnGO$Gy}I96vWBnDoJ4X9i^jSIIv@%OE$K6t#p zJ%3LMs35u*zlYhx*zgtuFWeXlz)|<_V$s&x(P-mT*ns14$_h=?UIh=;%{i7G$rl}f zY})Ki$ex5hFtr}k0F71v1#-Fl>#7VqCMX%$SW!fjvmKS9O}A;SA4+&CK9-6vws*s1 zFk}DgU5$J89#5C|CV9u@qYHw95M!n66rJ~W49oC)M1+?U2XA9@2{mA=$?zIgyKo6f zgoLWp=l|KCPTmZF)9jRJ&bUn4uBLJoA3%I556C9A8WmrRmC?YOLPd9o`*Vm5ww*L0 z!zAEM-ZvHeatN2ytdKJ~+}dJJyQrJFV81wa82HyQCvB5Jf%6z~+Gy znqxmpVQ6$F2QcHWnA6^5Ar%R{X#bvM>Y&;{1Bb@EksH@|Ig1n(0;u;ub8NP+=m*ZZ ztq`hCPO*DkRnei!%s@+3>1TMNw`%T?ZK~!1*?gRLJlE!O*RN;Vc80GsdV*@SN%|5A z)CZo8wQtIlX_^kTBp|4GmW#5gTDUF-l07ef$_D!w<*i`%q;)zv+-%|H)$1AM!h;qHpuJ&>TPH4~V6L9ViZ*=x+r)?*A zZm;f@Lq7HouRbt2a6IF%!dTWo>fG+g+f9{2KCcjoTOFV5?@(3P9LPc_>@Ke@WostB zDZIV1bobonMiKk=sGApZzz@D_b5 z#`n(Eb3hrcJ*GO{BNemZBi>0>L>nl2u`2WGZn!&jQ(J?lKqV~I^Sj4R^-LR;S5f++ zVKq}R$GW zpYFn;iK$S;d-F>ELnmW{n*~6(>K`xh z8^Iq>^JfQtEDU_!=(;TS5rws#eluf)PV4Xtvd-bY(RHp9IeA1UnM-0F6Z_}!%`#&J z_Z7}=Pe7X&XJU!kv0)0i?D@J5|4_sZqnT@L^cB1hNV;4+uB-s|m0OV}MLT>Md+~qE z;O62>d|ZHLRDS3GQ>=i>>>J51Rb=d-iop8V+Z6;cPBOB-mMQsH&CkRqw90;eK&UP^ z8C%(lE?&wUfb5>zhhr%vgA3Vq{|rV$f^no{Zl7^3f3})rqFw9sbn(lcv(Kg-;ndkMvWZK_k`c~?0uie z5!=%dxfqVCil>k8b#c`GrGEB}Gl=o zP~ogDe2P9piX$I`^VYch&(dFRZJ@mhBd@Z33xB=scN%%9m3fmh^9YJMK@#&PlbD~C zY2J>q%>Nv!%zJ-LI_!J1mh!2(HvBu_@!4LOws5d&36`SUb zJ8@~M49A0?`H4S zbbj3v{0urbdy94n)hdEJ6`^Gk^;%aJqhnO9^jPJPi69?EI1MoGhFj{0URP^oa3brm zYXm?cd1ww#W@(GD=y)M|?|^#2a}b3#8*_w)4s68bkM=nttP8h;tDqKnlE zu_D}gfB_v;8lm4EffLTm5xr=PRe3h-uoHGzRW4``vl%e2nnUFhNX9zTU`WZVeCH@- zzj}w2*RfTDwuMk99@-@8&R(J98Yl^O)T^r(mtmPj?2Uvs>}=DT!3^`R8T<&|*kOj3 zDcTnOOM(`vu*s{6$sPQRHB{$I5I#c`46B3}OzV8WA-YNt>q=i8aXkRI8sSmzvwF4n zm3};HmNz`HmQG3`4{3TI-y42l1_{3K4)GUD3Wh;j5DgD)G)sN8fo`7Qi|wQ)E}X=Fem|kNMq5&7Ul(`B|jq zd);}mT_l*#cwHEw^d0p640w)#wJim&D5FR7Co7L5Ku1^9_R3Q-Y-`{%PsVnI;mp7q zU&iY`F0ETASIS3U%}PfJMj@f5xAc$^oGNC)2;2s(;UbnK7~TaBGqI>aWY$W(o3N? zW?ErPrl0f47X1x>>VT&~w3(U5z`>cG($|gP$Jj<;s| z2jW+qB)OpGEMs-IGb(DkomHE4hROXGrF#RmCu5J9@ts-pt%u83jD;uAmeR+_-=1?$ z6}3m#X7YSqhOv4)K`JlIs2!Oh@9lVR$9uclk?rIiJIVM=-ZMD~kySeq&1-WObUzqa zt$2_44KknB^rc^jjMl6s=Nr=)0)FTOJ9J8C2e_dV%phrbm0b$?>+Mnu%XO0Ju~RXO zGC@+|oMPCHRPr)E3g2x~^P|S7o+2H_`;YDTGQO4*>~NV(mPY6iSSE!{#$U#pa{uAN zE0xGoyn}7Q$Ldovg|Tog`-8C_+@nWgidl?>e_mtFezL;Ft>-GHSkp4w?nC z+Q<5(iGbULBOc^W3K*?Fi|{+3*&|P}$IF^M2-MhY1lKF}*y^<^lI$@!ojvNHVK3p2 zV#Oc5id*r=F8D(r^>A$887RiWb6NpG`J;{1Jt}JZ)Iy`x7iJi%C&4e5X4H-oez_2S znFPOF+OBq-@XLkp%Ov>aQq3>p;Fku6U!|G^`Z+{CqQbVQ87P-OOkaE;38sHA3@%KCwQ@42^@*p3+8R zVYzf_XrOr}+ZrNuhP6lDBm@$Cf&i2`69WxrRlfBWedx{jF(FYrVIOJ|M#0xS!QB~5 zC(XXn&y0m-vf0G0i8Nt#&hbk896d*vrEa6<0~}Ad`=i<$ZjkA+1Cwh=&4tcPt0o*Z zw}us%hfT4|hETI9^Xqy&o$rQqdyp3V40o0b`NXWftWYwASLMkMH_Fl)n_488B&1W9 z@h{=DSWA_@hBbWvpN$#=7(Lb~VE;xIUSTysGD9zq9fci&X)e^BP3>q8{-9se0U0?y z?spG1F&Tco&y3_?`8Q8lCe?YYGrMCwt2M)~Gak4}E`be}Vc}J7a+s&Al8o%Doo$xx zHtr`t+Pqp{=|1D`2I91r?w;4%7vArYecV+-+1R=19T0ghAEU3~xaB~%62oIu&NDji zHir4=e*UQOib~Ofs)|C2>1#XmMj&7>s%lpA%!3>8fHRHrkrCmoKI43{v1~dYoK~&b z`%c)m5(|YWLV6us8J=D@);hD)Q@VYY=?fq9hF^&lq=N^3N%LiV!YogOtUWY06ocHI z7cqpnwuZ8JIZv#o{LFs|3<3+>Q%pa(M7y1@^mQ0(g|VnFZV^=E)KU?DOVx6KKBY=c ztdH&^!I$wPwDy#4HG*SlMHhLU!ilztFGbX}1Ln{v^&X-M29G;pE*zIyR8n?871t%2 z@|ISuF={3O>K-+2GyOMv@PPJ|a;U4>V~oNeCfY(@W6_Jyf@IRRFt}zJUXJZ#L_N$2 z3m@kbDg%qOou+l`PPsZ^L1NzwQernjFf06 z4%WeaZe!tlAjfH#HckABgC8FBSQFe7`{%4K9?P4{6JR_o2nLL``(QWz%{PxDD&npC zG(2oND0t*-j#2aQLA-Va?Pd|@5$2x5F-1q7ivCb9YC%2IPk!Yp6pDQBDxUKy>y^4t zFG9X@l_&|`RfzV+Jf)IixZURO{xhY~p=*8C4VLoRt&wHnRSEkGOH9Dun80j6n-lr9ImXQ zSa}w|S^T>B#Ryp5ncvR*=JA`yZ#RCs@k^A}svi9I;)Kl+>}K+Q*Fb+KrGrG

    &PPTa#(aA3z&Yz^y6O0_U4RXS76nVpit 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

    }V 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