An attempt at making hxcpp.h parse faster#1303
Open
Aidan63 wants to merge 4 commits intoHaxeFoundation:masterfrom
Open
An attempt at making hxcpp.h parse faster#1303Aidan63 wants to merge 4 commits intoHaxeFoundation:masterfrom
Aidan63 wants to merge 4 commits intoHaxeFoundation:masterfrom
Conversation
added 4 commits
January 30, 2026 22:12
Only used by non templated ArrayBase class
All uses of this headers functions are already guarded behind that define. It has a surprising time cost due to std::vector.
Member
Since pre-compiled headers are used, maybe the cost is only paid once? |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Clang compiler timings do show a ~1s reduction in parse time but this doesn't seem to have had any effect on CI times so I guess it's limited else where now.
The main change is making the two templated types in FieldRef.h non-templated by using
hx::Valinstead as this header was the biggest culprit time wise.Given that this doesn't really improve things over all I'm not sure we want these changes, I'll keep it open for a while though in case I get any other ideas.