Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
  • This project
    • Loading...
  • Sign in / Register
A
angle
  • 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
  • angle
  • Repository

Switch branch/tag
  • angle
  • src
  • compiler
  • translator
  • IntermNode.cpp
Find file
BlameHistoryPermalink
  • Olli Etuaho's avatar
    Make UnfoldShortCircuit to change AST instead of writing output · a6f22096
    Olli Etuaho authored May 08, 2015
    This is needed to make way for further AST transformations to handle array
    expressions that need to work correctly together with unfolding short-
    circuiting operators. This also improves the maintainability of HLSL output
    by isolating the unfolding into a separate compilation step.
    
    The new version of UnfoldShortCircuit traverser will traverse the tree until
    an expression that needs to be unfolded is encountered. It then unfolds it and
    gets reset. The traverser will be run repeatedly until no more operations to
    unfold are found. This helps with keeping the traverser's design relatively
    simple.
    
    All declarations are separated to single declarations before short-circuit
    unfolding is run. Previously OutputHLSL already output every declaration
    separately.
    
    BUG=angleproject:960
    TEST=WebGL conformance tests, angle_unittests, angle_end2end_tests
    
    Change-Id: Id769be396adbd4c0223e418980dc464dd855f019
    Reviewed-on: https://chromium-review.googlesource.com/270460Tested-by: 's avatarOlli Etuaho <oetuaho@nvidia.com>
    Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
    a6f22096
IntermNode.cpp 53.4 KB
EditWeb IDE
×

Replace IntermNode.cpp

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.