Skip to content

Conversation

blueskythlikesclouds
Copy link
Contributor

@blueskythlikesclouds blueskythlikesclouds commented Oct 7, 2025

Fixes #100138.

The specialization constant patching code was rejecting signed values, assuming it needed to set the MSB to respect LLVM IR's VBR encoding. However, as explained here, the contents of the integer actually do not matter at all, because we can just keep emitting continue bits even if the bits are all zero.

Godot already uses an appropriate sentinel value to enforce 32 bits in the output bytecode, so this approach works fine.

@blueskythlikesclouds blueskythlikesclouds requested a review from a team as a code owner October 7, 2025 10:27
@AThousandShips AThousandShips added cherrypick:4.4 Considered for cherry-picking into a future 4.4.x release cherrypick:4.5 Considered for cherry-picking into a future 4.5.x release labels Oct 7, 2025
@AThousandShips AThousandShips added this to the 4.6 milestone Oct 7, 2025
@blueskythlikesclouds blueskythlikesclouds force-pushed the d3d12-spec-constant-patch-fix branch 2 times, most recently from 5458698 to c26d71f Compare October 7, 2025 12:46
Copy link
Member

@clayjohn clayjohn left a comment

Choose a reason for hiding this comment

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

seems fine to me

@clayjohn clayjohn removed cherrypick:4.4 Considered for cherry-picking into a future 4.4.x release cherrypick:4.5 Considered for cherry-picking into a future 4.5.x release labels Oct 7, 2025
Copy link
Contributor

@Repiteo Repiteo left a comment

Choose a reason for hiding this comment

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

Local dev builds fail from the sign change. Given the lambda already expects a uint64_t, we should be doing the same with the base variable

@Repiteo Repiteo merged commit 599fd73 into godotengine:master Oct 13, 2025
20 checks passed
@Repiteo
Copy link
Contributor

Repiteo commented Oct 13, 2025

Thanks!

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

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bicubic Lightmap Filtering Fails to Engage Under DX12

4 participants