Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
S
swiftshader
  • Project
    • Overview
    • Details
    • Activity
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Chen Yisong
  • swiftshader
  • Repository

Switch branch/tag
  • swiftshader
  • src
  • OpenGL
  • compiler
  • AnalyzeCallDepth.h
Find file
BlameHistoryPermalink
  • Lingfeng Yang's avatar
    Don't dynamically recurse when analyzing functions · 1fb04acc
    Lingfeng Yang authored May 19, 2017
    bug: 38257724
    
    With this CL, dEQP-GLES3.functional.shaders.functions.invalid no longer results
    in a stack overflow and system crash.
    
    The fix is to explicitly loop over switch cases in the function call
    depth analysis.
    
    Later on, we probably want to change TIntermSwitch traversal to loop
    over all cases of the switch statement as well, but that requires
    a lot of changes; all traversers need to be changed to not have to loop over
    switch statements themselves, which will break expectations and
    perhaps functionality that critically depends on seeing/controlling iteration
    over switch statement cases.
    
    Not tested for regressions in dEQP-GLES2.functional.shaders.*
    
    Test: dEQP-GLES3.functional.shaders.functions.invalid.dynamic_switch_recursion_vertex:
    system crash, hang, or fail -> Pass
    
    Change-Id: I5d13a5f3296579c8818975e103f5ed6e03a47b68
    Reviewed-on: https://swiftshader-review.googlesource.com/9789Reviewed-by: 's avatarLingfeng Yang <lfy@google.com>
    Reviewed-by: 's avatarNicolas Capens <capn@google.com>
    Tested-by: 's avatarLingfeng Yang <lfy@google.com>
    1fb04acc
AnalyzeCallDepth.h 1.74 KB
EditWeb IDE
×

Replace AnalyzeCallDepth.h

Attach a file by drag & drop or click to upload


Cancel
A new branch will be created in your fork and a new merge request will be started.