guan404ming opened a new pull request, #19962:
URL: https://github.com/apache/tvm/pull/19962

   ## Why
   
   #19927 made `IntervalSetEvaluator::Eval(IntervalSet)` keep the original 
parametric bound when relaxation loses it to infinity, without checking whether 
that bound references a var being relaxed out. `CompactBufferAllocation` then 
leaked a loop var into allocation extents outside its scope, and 
`MakePackedAPI` crashed with `variable i has been used before definition` when 
compiling cumsum for CUDA (breaking `test_dispatch_cumsum_gpu`, 
`test_sample_top_p_top_k_from_sorted_prob`, and 
`test_renormalize_top_p_top_k_prob` in CI).
   
   ## How
   
   - Keep the original bound only if it does not reference any `dom_map_` var; 
`dom_constraints_` vars stay parametric, preserving the behavior #19927 
intended.
   - Added `test_relax_does_not_leak_dom_map_vars`, which fails without the fix.


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to