New issue
Advanced search Search tips

Issue 923949 link

Starred by 1 user

Issue metadata

Status: Unconfirmed
Owner: ----
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug



Sign in to add a comment

side effect of uintBitsToFloat on const vectors

Reported by fabrice....@gmail.com, Yesterday (32 hours ago)

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/71.0.3578.98 Safari/537.36

Example URL:
https://www.shadertoy.com/view/wdSGRh

Steps to reproduce the problem:
cf https://www.shadertoy.com/view/wdSGRh
1. uvec3 A = uvec3( 0xFFFF0000U , 0x80000000U, 0U )
2. uvec3 B = vec3( apply uintBitsToFloat on each component of A)

What is the expected behavior?
B[2] == 0

What went wrong?
B[2] == B [1]  != 0 

Does it occur on multiple sites: Yes

Is it a problem with a plugin? No 

Did this work before? N/A 

Does this work in other browsers? No
 firefow

Chrome version: 71.0.3578.98  Channel: stable
OS Version: 
Flash Version: 

- Only on OpenGL, even with recent driver
- not occuring if A is made non const ( e.g. by adding uint(min(0.,fragCoord.x)) )

May somebody please set the flags	
Blink>WebGL
Internals>GPU>ANGLE
?  thanks !
 

Comment 1 by fabrice....@gmail.com, Yesterday (32 hours ago)

NB: in https://www.shadertoy.com/view/wdSGRh , 
white if B[2] == 0 otherwise black.
top: with A  const  -> black
bottom: wint A not const -> white

Comment 2 by fabrice....@gmail.com, Yesterday (32 hours ago)

NB: I know uintBitsToFloat is "undetermined" on some special values like NaN.
Here, the main bug is the side effect on another component of the same vector.

It might look like a corner case, but it can easily occurs when one maps ints in float buffers. ( masks, sprites, manual treatment of high precision... ).

Comment 3 by swarnasree.mukkala@chromium.org, Yesterday (26 hours ago)

Labels: Needs-Triage-M71

Sign in to add a comment