Skip to content

[Integration] main (96fb215) -> swift/main #589

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 25 commits into from
Jul 20, 2022

Conversation

hamishknight
Copy link
Contributor

No description provided.

hamishknight and others added 25 commits July 7, 2022 11:47
This allows us to catch the case where a match
occurs without optimizations, but doesn't occur
with optimizations. Additionally fix the `xfail`
param such that it can't be used on tests that
actually match expectations.
…ftlang#560)

This fixes infinite loops when we loop over an internal node that does not have any forward progress. Also included is an optimization to only emit the check/break instructions if we have a case that might result in an infinite loop (possibly non-progressing inner node + unlimited quantification)
)

- Adds new instructions for matching characters and scalars case insensitively
- Compiles ascii character matches into the faster scalar match instructions even in grapheme semantic mode
- Optimizes out unnecessary runtime grapheme boundary checks for all ascii strings
- Also includes fixes to scalar matching in grapheme semantic mode (swiftlang#565)
Remove the DSL -> _CharacterClassModel conversion,
and _CharacterClassModel's custom character class
matching logic, none of which is being used.
`makeDSLTreeCharacterClass` was the last API
that required it to be public. Remove it, and
replace it with some static members on `_AST.Atom`.
Map to `.newlineSequence` instead of `.newline`,
which allows it to create the correct consumer.

rdar://96330096
Explicitly disambiguate the fact we're talking
about `.`, which does not match newlines unless in
single line mode.
This time as a "true any" that matches any
character, including newlines.
This should map to `.any`, not `.dot`.

rdar://96509234
This enum will start including cases that only the
DSL can use, so move it off the AST.
Introduce `startOfInput` and `endOfInput` assertion
kinds, and map the DSL to them such that they do
not depend on matching options.

rdar://97029630
remove input

doc fixes

remove dot

fix test

update docs
Move options from RegexComponent to Regex
- Added some basic statistics to benchmark measurements
- Added new benchmark mode, InputList 
- Fixed CLI flags
-New benchmarks:  Emojis, dice notation, swiftc error messages, ipv4, ipv6, mac addresses
@hamishknight
Copy link
Contributor Author

@swift-ci please test

@hamishknight hamishknight merged commit 34d057d into swiftlang:swift/main Jul 20, 2022
@hamishknight hamishknight deleted the main-merge branch July 20, 2022 10:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants