Bug 108160 - GLSL version >=1.30 built-in functions present in version <1.30
Summary: GLSL version >=1.30 built-in functions present in version <1.30
Status: RESOLVED MOVED
Alias: None
Product: Mesa
Classification: Unclassified
Component: glsl-compiler (show other bugs)
Version: 18.2
Hardware: Other All
: medium normal
Assignee: mesa-dev
QA Contact: Intel 3D Bugs Mailing List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2018-10-03 12:22 UTC by Felix Potthast
Modified: 2019-09-18 19:46 UTC (History)
0 users

See Also:
i915 platform:
i915 features:


Attachments
Test shader (2.99 KB, text/plain)
2018-10-03 12:22 UTC, Felix Potthast
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Felix Potthast 2018-10-03 12:22:33 UTC
Created attachment 141854 [details]
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
Comment 1 vadym 2018-10-31 16:37:51 UTC
Patch: https://patchwork.freedesktop.org/patch/259519/
Comment 2 GitLab Migration User 2019-09-18 19:46:17 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/mesa/mesa/issues/820.


Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.