Branch: refs/heads/yves/split_matched_state_regexp_struct
Home: https://github.com/Perl/perl5
Commit: 5a430b4cd9ef33435c427b469365f88d8f3e1a46
https://github.com/Perl/perl5/commit/5a430b4cd9ef33435c427b469365f88d8f3e1a46
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M regexec.c
Log Message:
-----------
regexec.c - minor cleanup of CAPTURE_xxx code
I left a bit of debugging and commented out code in the PR. This
removes or reworks that code to not run in production mode.
Commit: ebf9b54f74aac495f12beb65b1932f09d25dc566
https://github.com/Perl/perl5/commit/ebf9b54f74aac495f12beb65b1932f09d25dc566
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M dump.c
M regcomp.c
M regexec.c
M regexp.h
Log Message:
-----------
regcomp.c - Use RXp_OFFSp() to access offset data
This insulates access to the regexp match offset data so we can
fix the define later and move the offset structure into a new struct.
The RXp_OFFSp() was introduced in a recent commit to deliberately
break anything using RXp_OFFS() directly. It is hard to type
deliberately, nothing but the internals should use it. Everything
else should use one of the wrappers around it.
Commit: 2084f1e57db92e3a7bf43785b44f4fed76df21d0
https://github.com/Perl/perl5/commit/2084f1e57db92e3a7bf43785b44f4fed76df21d0
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M regexp.h
Log Message:
-----------
regexp.h - standardize macros, and parenthesize parameters
Obviously this isn't required as we build fine. But doing this
future proofs us to other changes.
Commit: 02d4366149f935ada11ae42e590a3d50c51af6be
https://github.com/Perl/perl5/commit/02d4366149f935ada11ae42e590a3d50c51af6be
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M dump.c
M regcomp_debug.c
M regexec.c
Log Message:
-----------
regexec.c - use RXp_LASTPAREN(rex) to access rex->lastparen
This field will be moving to a new struct. Converting this to a macro
will make that move easier.
Commit: 79c554c9cd0a59da814c9fb6bd2d0e7b3a417395
https://github.com/Perl/perl5/commit/79c554c9cd0a59da814c9fb6bd2d0e7b3a417395
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M regexp.h
Log Message:
-----------
regexp.h - add missing defines
We were missing various RXp_XXXX() and RX_XXXX() macros. This adds
them so we can use them in places where we are unreasonable intimate
with the regexp struct internals.
Commit: 7b7fec21711dc2e4862406aa1180a9ae357e4d61
https://github.com/Perl/perl5/commit/7b7fec21711dc2e4862406aa1180a9ae357e4d61
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M dump.c
Log Message:
-----------
dump.c - use RXp_ macros to access regexp struct members
We will move some of these members out of the regexp structure
into a new sub structucture. This isolates those changes to the
macro definitions
Commit: 006657d5018b87d994b77f3b718e5bc1a3215ecd
https://github.com/Perl/perl5/commit/006657d5018b87d994b77f3b718e5bc1a3215ecd
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M regexec.c
Log Message:
-----------
regexec.c - use RXp_LASTCLOSEPAREN(r) to access r->lastcloseparen
We will move this struct member into a new struct in a future patch,
and using the macros means we can reduce the number of places that
needs to be explcitly aware of the new structure.
Commit: f95247ed88d564830cb8b2cae008daeeddc2c277
https://github.com/Perl/perl5/commit/f95247ed88d564830cb8b2cae008daeeddc2c277
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M dump.c
Log Message:
-----------
dump.c - fixup missing case
Commit: 776174467f5a1cf234ba3fec5fbb5c02ddde0235
https://github.com/Perl/perl5/commit/776174467f5a1cf234ba3fec5fbb5c02ddde0235
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M regexec.c
Log Message:
-----------
regexec.c - use macro to access rex->subbeg
We will move this member to a new struct in the near future,
converting all uses to a macro isolates that change.
Commit: 0c6f9ae947e7c860dd8999e1ce32adc7fc25afc1
https://github.com/Perl/perl5/commit/0c6f9ae947e7c860dd8999e1ce32adc7fc25afc1
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M regexec.c
Log Message:
-----------
regexec.c - use RXp_SUBLEN(ret) for ret->sublen
This member of the regexp structure will be moved to a new
structure in the near future. Converting to use the macro
will make this change easier to manage.
Commit: fbca4b6068537199f2198c42f592098b2016b64c
https://github.com/Perl/perl5/commit/fbca4b6068537199f2198c42f592098b2016b64c
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M regexec.c
Log Message:
-----------
regexec.c - use RXp_SUBOFFSET(rx) instead of rx->suboffset
We will migrate this struct member to a new struct in the near future
this change will make that patch more minimal and hide the gory details.
Commit: 5ac37a4b6d7dbb6a4677a74cd4b7b466c8c96a9b
https://github.com/Perl/perl5/commit/5ac37a4b6d7dbb6a4677a74cd4b7b466c8c96a9b
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M regexec.c
Log Message:
-----------
regexec.c - use RXp_SUBCOFFSET instead of rx->subcoffset
This member of the regexp struct will soon be migrated to a new
independent structure. This change ensure that when we do the migration
the changes are restricted to the least code possible.
Commit: b70562d06d235c954073d4c6af6b333e28b455e9
https://github.com/Perl/perl5/commit/b70562d06d235c954073d4c6af6b333e28b455e9
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M regexec.c
Log Message:
-----------
regexec.c - use RXp_SAVED_COPY(rex) instead of rex->saved_copy
We will migrate this member to a new structure in the near future,
wrapping with a macro makes that migration simpler and less invasive.
Commit: 7e96d6201c2275975a01c50ec6eb6bdf470ef44e
https://github.com/Perl/perl5/commit/7e96d6201c2275975a01c50ec6eb6bdf470ef44e
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M regcomp.c
Log Message:
-----------
regcomp.c - use macro wrappers to minimize impact of struct split
We will move various members of the regexp structure to a new
structure which just contains information about the match. Wrapping
the members in the standard macros means that change can be made
less invasive. We already did all of this in regexec.c
Commit: 6e1a4ff81c6df494463384e4df7037ba656c587c
https://github.com/Perl/perl5/commit/6e1a4ff81c6df494463384e4df7037ba656c587c
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M regexp.h
Log Message:
-----------
regexp.h - use RXp_SAVED_COPY(ret) to access ret->saved_copy
This member is moving out of the regexp structure and into a
new structure in the very near future. Using the macro to access
it minimizes the size of that change.
Commit: 3b8433fec0638ba162f0d35929928411655423c7
https://github.com/Perl/perl5/commit/3b8433fec0638ba162f0d35929928411655423c7
Author: Yves Orton <[email protected]>
Date: 2023-01-26 (Thu, 26 Jan 2023)
Changed paths:
M regexp.h
Log Message:
-----------
regexp.h - fixup mistake in comment
rex->maxlen holds the maximum length the pattern can match, not the
minimum. The copy was obviously copied from the rex->minlen case,
so fix it to be correct.
Commit: 613cee322a1064597f02e5bd37bb8166a98d9b17
https://github.com/Perl/perl5/commit/613cee322a1064597f02e5bd37bb8166a98d9b17
Author: Yves Orton <[email protected]>
Date: 2023-01-27 (Fri, 27 Jan 2023)
Changed paths:
M regcomp.c
M regexp.h
Log Message:
-----------
WIP
Commit: 8186a6e0aacd0013b9912f7b06163c2119d4a59b
https://github.com/Perl/perl5/commit/8186a6e0aacd0013b9912f7b06163c2119d4a59b
Author: Yves Orton <[email protected]>
Date: 2023-01-28 (Sat, 28 Jan 2023)
Changed paths:
M dump.c
M ext/B/B.xs
M perl.h
M regcomp.c
M regexp.h
M sv.h
M sv_inline.h
Log Message:
-----------
WIP - add SVt_RXMO to store regex match offsets
Compare: https://github.com/Perl/perl5/compare/5a430b4cd9ef%5E...8186a6e0aacd