Branch: refs/heads/maint-5.38
  Home:   https://github.com/Perl/perl5
  Commit: df8707751df7697b24b598ae63b44e1e79895721
      
https://github.com/Perl/perl5/commit/df8707751df7697b24b598ae63b44e1e79895721
  Author: Tony Cook <t...@develop-help.com>
  Date:   2024-12-30 (Mon, 30 Dec 2024)

  Changed paths:
    M lib/perl5db.t
    M op.c

  Log Message:
  -----------
  don't clear IOK on @{"_<$file"} entries when a dbstate is freed

These are meant to be IOK even when non-breakable, and I broke that
when fixing #19198.

Fixes #21564

(cherry picked from commit e4afee5bc9d5b14a4d9a02eff8c153831edd0547)


  Commit: c34af27e70f3c5a75c270368c5bc0ba2a1fdabef
      
https://github.com/Perl/perl5/commit/c34af27e70f3c5a75c270368c5bc0ba2a1fdabef
  Author: Masahiro Honma <hira.t...@gmail.com>
  Date:   2024-12-30 (Mon, 30 Dec 2024)

  Changed paths:
    M inline.h

  Log Message:
  -----------
  utf8n_to_uvchr: check the state of DFA after the first transition

(cherry picked from commit 079900bbc162f26bba6696fb13c82dcdf4bb5b61)


  Commit: 3e448e4de0fbb2736a882ec2754ca7be8ce33200
      
https://github.com/Perl/perl5/commit/3e448e4de0fbb2736a882ec2754ca7be8ce33200
  Author: Masahiro Honma <hira.t...@gmail.com>
  Date:   2024-12-30 (Mon, 30 Dec 2024)

  Changed paths:
    M inline.h

  Log Message:
  -----------
  utf8n_to_uvchr: consolidate condition checks within while loop to share code

(cherry picked from commit 0069b5031c15e97c8848e04504aa35ead5dd2cf7)


  Commit: 94d84e2398fdb126ee444d142bfe7a46e93e63a3
      
https://github.com/Perl/perl5/commit/94d84e2398fdb126ee444d142bfe7a46e93e63a3
  Author: Masahiro Honma <hira.t...@gmail.com>
  Date:   2024-12-30 (Mon, 30 Dec 2024)

  Changed paths:
    M AUTHORS

  Log Message:
  -----------
  chore: run `Porting/updateAUTHORS.pl`

(cherry picked from commit 29501f0a538173b08a71931d81608462a65b81aa)


  Commit: 147d35e0d3119aaac40c0723e277011853a945c1
      
https://github.com/Perl/perl5/commit/147d35e0d3119aaac40c0723e277011853a945c1
  Author: Tony Cook <t...@develop-help.com>
  Date:   2024-12-30 (Mon, 30 Dec 2024)

  Changed paths:
    M sv_inline.h

  Log Message:
  -----------
  bodies_by_type[SVt_PVNV]: handle __float128 NV alignment on 32-bit

Perl SV body structures include xmg_stash and xmg_u fields at the
front, which are only valid for type SVt_PVMG and higher.

This allows those fields to be at a constant offset from the start
of the body.

To save memory perl generally allocates the bodies where
type < SVt_PVMG without the space needed for these two fields,
offsetting the body pointer back by the size of the two fields.  At
least for the first body in an arena this is technically
undefined behaviour, but we've done it forever.

With -msse __float128 requires 16 byte alignment, but for XPVNV
bodies the hack used here means that the base of the XPVNV
body ends up mis-aligned on 32-bit systems.

On 64-bit systems the combined size of those fields is 16-bytes so
the modified pointer is still properly aligned.

To fix this allocate the full XPVNV structure when 16 byte alignment
is required for NV, NV is more than 8 bytes and pointers are small
enough that the NV would have been mis-aligned.

Fixes #22577

(cherry picked from commit 914b0076e0ecf29ef800cad16518e6d8d3cb3f67)


Compare: https://github.com/Perl/perl5/compare/c8c17b59ce49...147d35e0d311

To unsubscribe from these emails, change your notification settings at 
https://github.com/Perl/perl5/settings/notifications

Reply via email to