• Lei Wang's avatar
    [Pipeline] Skip condition expression analysis for global reading (#713) · c1eef511
    Lei Wang authored
    * Update submodule 'tvm' to commit e11521e6936a827efa334588d29571fbb4620107
    
    * Refactor inject_pipeline.cc to enhance pipeline body rewriting and condition handling
    
    - Introduced a new function to replace IfThenElse nodes with their then_case while preserving attributes.
    - Streamlined the PipelineBodyRewriter to improve buffer access rewriting and async state management.
    - Enhanced the handling of pipeline loop conditions and added support for predicate conditions in the pipeline body.
    - Removed obsolete code and improved overall code clarity and maintainability.
    
    * lint fix
    
    * Refactor return statements in inject_pipeline.cc to remove unnecessary std::move calls
    
    - Updated return statements in multiple methods to return objects directly instead of using std::move, improving code clarity and potentially avoiding unnecessary moves.
    - Ensured consistent handling of BufferStore and BufferLoad nodes during pipeline transformations.
    
    * test fix
    
    * Enhance global read detection in pipeline planning
    
    - Updated the handling of global reads to account for condition expressions within IfThenElse nodes, ensuring accurate identification of global memory accesses.
    - Introduced a new flag to track whether the visitor is within a condition expression, improving the correctness of buffer access analysis.
    - Refactored the VisitStmt_ method to properly handle the structure of IfThenElse nodes, enhancing the clarity and maintainability of the code.
    c1eef511
pipeline_planning.cc 21.6 KB