Don't create two DEF UsePos
Improve x86 code generation for passing address of label to stack
leal .L1, %eax
movl %eax, (%esp)
movl $.L1, (%esp)
Fix test
Fix "diff" on Windows
Add --show-diff for Windows CI test
Add --show-diff for Windows CI test
Add more folding rules
typo
Remove *.ir and *.out files for passed tests and generate *.exp and *.diff for all failed tests
Fix fusion of IF(, CMP(AND(, _) 0))
Cleanup instruction selector
[skip ci] Make Tim CODEOWNER of /.github
Update assertion about unsupported property types
[skip ci] Add myself as code owner of stubs
[skip ci] Reorder rules alphabetically
[skip ci] Add myself as CODEOWNER for a couple of extensions
Mainly because I'm the one who's touched them the most recently and has a vague idea how these extensions work.
[skip ci] Add CONFLICTS file for curl tests
Merge branch 'PHP-8.1' into PHP-8.2
Merge branch 'PHP-8.2'
[skip ci] Add myself in CODEOWNERS for few extensions (#10903)
Add myself for ext/date
[skip ci] Fix CODEOWNERS sorting
The alphabet is hard :stuck_out_tongue_winking_eye:
[skip ci] Add myself in CODEOWNERS for curl
[Zend]: Remove unused code in MAKE_NOP macro (#10906)
Prefer to see clean code.
In MAKE_NOP macro, op.num is first set to 0, but immediately set to -1 by SET_UNUSED macro, which invalidates previous set-to-zero code.
So clean the code to make it look nice and neat.
Signed-off-by: Tony Su tao.su@intel.com
Shrink some commonly used structs by reordering members (#10880)
Struct members require some alignment based on their type. This means that if a struct member is not aligned, there will be a hole created by the compiler in the struct, which is wasted space. This patch reorders some of the most commonly used structs, but in such a way that the fields which were in the same cache line still belong together. The only exception to this is exception_ignore_args, which was temporally not close to nearby members, and as such I placed it further up to close a hole.
On 64-bit Linux this gives us the following shrinks:
On 32-bit, the sizes will either remain the same or will result in smaller shrinks.
Implement better diff for run-tests.php
Borrow sebastianbergmann/diff with MemoryEfficientLongestCommonSubsequenceCalculator
Fixes GH-10806 Closes GH-10875
ext/curl: suppress -Wdeprecated-declarations in curl_arginfo.h
Disable the warning before including curl_arginfo.h.
(Follow-up for https://github.com/php/php-src/pull/10531)
Merge branch 'PHP-8.1' into PHP-8.2
Merge branch 'PHP-8.2'
Empty merge
Updated to version 2023.1 (2023a)
Use new ir_init() prototype
Add "const" modifiers
Fix 32-bit clang build
Prefer IR_TARGET_* checks instead of system specific macros
In this series,
flags
argument into ir_init
These are minor fixes based on the discussions that took place previously.
C++: Add guards for relevant headers
Signed-off-by: Anatol Belski ab@php.net
doc: Add short comments to some flags
Signed-off-by: Anatol Belski ab@php.net
ir_init: Expose min limit for constants and instructions
Signed-off-by: Anatol Belski ab@php.net
ir_init: Accept flags as an additional arguments
Signed-off-by: Anatol Belski ab@php.net
Merge pull request #20 from weltling/fixups_00
fixups: Minor improvements to ir.h, ir_builder.h and ir_init
@dstogov From a purely functional point of view, this adds functionality, which is not possible to achieve in any other way. So, I think we should do it in any case, only the specific semantics might be argued.
OK. Lets define the proposed functionality. The first thing you need is an ability to catch exceptions thrown from "shutdown functions" by "exception handler".
Questions:
I would say - "discard" for the first two questions and "catch" for everything else, but note that behaviour of exception handlers is limited by each step of the shut-down sequence. (e.g. output buffers may be flushed, DB connections closed, objects destroyed, global and static variables unset). So may be better to "discard" for everything else after "user shutdown handlers".
no, the C code is exactly right. The new comments may be confusing for people who are not familiar with the problem.
It's better to add comments that EG(trampoline) may be reused in different places (e.g. FFI) and all sensitive fields must be reinitialized.
Fix incorrect optimization
Fixes oss-fuzz #57482
Merge branch 'PHP-8.2'
Fix incorrect optimization
Fixes oss-fuzz #57482