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.h
Find file
BlameHistoryPermalink
  • Olli Etuaho's avatar
    Fix precision tracking for built-in function return values · d2a67b96
    Olli Etuaho authored Oct 21, 2014
    Previously, the type of the return value of all function calls was set to
    the type of the return value in the function signature. This did not
    carry precision information.
    
    This patch changes this so that the return value precision is set
    correctly for built-in functions. For single-argument math functions, it
    mostly depends on that addUnaryMath sets the type of the return value to
    be the same as the type of the operand. The type is replaced but the
    precision information from the operand type is retained when needed. For
    multi-argument math functions, precision is determined based on all the
    nodes in the aggregate after the type has been set. For texture
    functions, the precision is set according the sampler type as per ESSL
    1.0 spec. For textureSize, the precision is always highp as per ESSL 3.0
    spec.
    
    BUG=angle:787
    
    Change-Id: I48448e3ffe38656b91177dee9b60dd07a03cd095
    Reviewed-on: https://chromium-review.googlesource.com/224951Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
    Reviewed-by: 's avatarNicolas Capens <capn@chromium.org>
    Tested-by: 's avatarOlli Etuaho <oetuaho@nvidia.com>
    d2a67b96
IntermNode.h 21.6 KB
EditWeb IDE
×

Replace IntermNode.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.