Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
  • mesa mesa
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 3,061
    • Issues 3,061
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 993
    • Merge requests 993
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • MesaMesa
  • mesamesa
  • Issues
  • #820
Closed
Open
Issue created Sep 18, 2019 by Bugzilla Migration User@bugzilla-migration

GLSL version >=1.30 built-in functions present in version <1.30

Submitted by Felix Potthast

Assigned to mes..@..op.org

Link to original bug (#108160)

Description

Created attachment 141854 Test shader

In GLSL versions 1.00 ES, 1.10 and 1.20, Mesa includes some built-in functions which shouldn't be present in that version, namely:

genIType abs(genIType x) genIType sign(genIType x) genIType min(genIType x, genIType y) genIType min(genIType x, int y) genIType max(genIType x, genIType y) genIType max(genIType x, int y) genIType clamp(genIType x, genIType minVal, genIType maxVal) genIType clamp(genIType x, int minVal, int maxVal) genType trunc(genType x) genType round(genType x) genType roundEven(genType x) genType modf(genType x, out genType i)

I attached a shader that defines all these functions. It compiles with glslang for every GLSL version, but not with Mesa for GLSL version <=1.20

Attachment 141854, "Test shader":
test.glsl

Version: 18.2

To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
Time tracking