Skip to content

Conversation

asgerf
Copy link
Contributor

@asgerf asgerf commented Oct 15, 2025

Fixes a minor perf issue in type resolution

@asgerf asgerf added the no-change-note-required This PR does not need a change note label Oct 15, 2025
@github-actions github-actions bot added the JS label Oct 15, 2025
@asgerf asgerf marked this pull request as ready for review October 16, 2025 07:49
@asgerf asgerf requested a review from a team as a code owner October 16, 2025 07:49
@Copilot Copilot AI review requested due to automatic review settings October 16, 2025 07:49
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR improves performance in type resolution by adding pragma[nomagic] annotations and refactoring a complex join operation into more efficient helper predicates.

  • Adds pragma[nomagic] annotations to prevent expensive magic reorderings in various predicates
  • Refactors the complex join in valueHasType predicate by extracting helper predicates getAReadContentRestricted, valueReadStepOnContent, and typeMemberHostRead
  • Adds a cached annotation to the main valueHasType predicate

Reviewed Changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated no comments.

File Description
TypeResolution.qll Main performance improvements including pragma annotations and join optimization through extracted helper predicates
NameResolution.qll Additional pragma[nomagic] annotations for consistency and performance

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

JS no-change-note-required This PR does not need a change note

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants