Skip to content

Conversation

@arnaud-lb
Copy link
Member

@arnaud-lb arnaud-lb commented Jan 27, 2026

Let the compiler know that the inline assembly in zend_safe_address() clobbers the flags register.

We need to add cc in the clobber list for aarch64 (ADDS affect the condition flags), and xer for powerpc64 (ADDC, ADDZE affect the Fixed point exception register AKA xer).

i386, x86_64, and arm were already correct. Other inline assembly blocks seem correct.

I didn't reproduce the issue on powerpc64, but the change was tested at https://github.com/php/php-src/actions/runs/21404066744/job/61623034776.

@arnaud-lb arnaud-lb marked this pull request as ready for review January 27, 2026 18:24
@arnaud-lb arnaud-lb linked an issue Jan 28, 2026 that may be closed by this pull request
@arnaud-lb arnaud-lb changed the base branch from PHP-8.3 to PHP-8.4 January 28, 2026 17:12
@arnaud-lb
Copy link
Member Author

Merged in 93d32ea

@arnaud-lb arnaud-lb closed this Jan 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ARM64] zend_mm_heap corrupted with ZTS builds (Static PHP 8.5.2)

2 participants