We are running a survey to help us improve the experience for all of our members. If you see the survey appear, please take the time to tell us about your experience if you can.
I test it on a very simple fragment shader:
#version 310 es precision highp float; precision highp int; #define HLSLCC_ENABLE_UNIFORM_BUFFERS 1 #if HLSLCC_ENABLE_UNIFORM_BUFFERS #define UNITY_UNIFORM #else #define UNITY_UNIFORM uniform #endif #define UNITY_SUPPORTS_UNIFORM_LOCATION 1 #if UNITY_SUPPORTS_UNIFORM_LOCATION #define UNITY_LOCATION(x) layout(location = x) #define UNITY_BINDING(x) layout(binding = x, std140) #else #define UNITY_LOCATION(x) #define UNITY_BINDING(x) layout(std140) #endif uniform mediump float _Cutoff; UNITY_LOCATION(0) uniform mediump sampler2D _MainTex; in highp vec2 vs_TEXCOORD0; layout(location = 0) out mediump vec4 SV_Target0; mediump vec4 u_xlat16_0; bool u_xlatb0; mediump float u_xlat16_1; void main() { u_xlat16_0 = texture(_MainTex, vs_TEXCOORD0.xy); u_xlat16_1 = u_xlat16_0.w + (-_Cutoff); SV_Target0 = u_xlat16_0; #ifdef UNITY_ADRENO_ES3 u_xlatb0 = !!(u_xlat16_1<0.0); #else u_xlatb0 = u_xlat16_1<0.0; #endif if(u_xlatb0){discard;} return; }
I don't understand why does Mali Offline Complier give me 0% in section "16bit arithmetric"?
All variables are mediump except UV. It should have a relatively high percent of 16bit arithmetric.
Duplicate of Cannot understand 16-bit arithmetic result of Mali Offline Complier - Graphics, Gaming, and VR forum - Support forums - Arm Community