summaryrefslogtreecommitdiffstats
path: root/src/compiler/glsl/float64.glsl
Commit message (Collapse)AuthorAgeFilesLines
* glsl: Fix round64 conversion functionSagar Ghuge2019-06-251-9/+12
| | | | | | | | | | | | | | | | | | | | Fix round64 function to handle round to nearest even cases specially with positive and negative numbers with fraction part 0.5. v2: 1) Simplify unused bits (Elie Tournier) Fixes: KHR-GL45.gpu_shader_fp64.builtin.round_dvec2 KHR-GL45.gpu_shader_fp64.builtin.round_dvec3 KHR-GL45.gpu_shader_fp64.builtin.round_dvec4 KHR-GL45.gpu_shader_fp64.builtin.roundeven_double KHR-GL45.gpu_shader_fp64.builtin.roundeven_dvec2 KHR-GL45.gpu_shader_fp64.builtin.roundeven_dvec3 KHR-GL45.gpu_shader_fp64.builtin.roundeven_dvec4 Signed-off-by: Sagar Ghuge <[email protected]> Reviewed-by: Elie Tournier <[email protected]> Acked-by: Anuj Phogat <[email protected]>
* compiler: Add lowering support for 64-bit saturate operations to softwareAnuj Phogat2019-05-151-0/+12
| | | | | | | | | | Fixes 7 Khronos GL CTS tests: KHR-GL45.gpu_shader_fp64.builtin.smoothstep_dvec{double, 2, 3, 4} KHR-GL45.gpu_shader_fp64.builtin.smoothstep_against_scalar_dvec{2, 3, 4} Suggested-by: Jason Ekstrand <[email protected]> Signed-off-by: Anuj Phogat <[email protected]> Reviewed-by: Matt Turner <[email protected]>
* glsl: Add "built-in" functions to do fp32_to_int64(fp32)Sagar Ghuge2019-01-091-0/+31
| | | | | Reviewed-by: Elie Tournier <[email protected]> Signed-off-by: Sagar Ghuge <[email protected]>
* glsl: Add "built-in" functions to do fp32_to_uint64(fp32)Sagar Ghuge2019-01-091-0/+29
| | | | | Reviewed-by: Elie Tournier <[email protected]> Signed-off-by: Sagar Ghuge <[email protected]>
* glsl: Add "built-in" functions to do fp64_to_int64(fp64)Sagar Ghuge2019-01-091-0/+29
| | | | | Reviewed-by: Elie Tournier <[email protected]> Signed-off-by: Sagar Ghuge <[email protected]>
* glsl: Add utility function to round and pack int64_t valueSagar Ghuge2019-01-091-0/+36
| | | | | Reviewed-by: Elie Tournier <[email protected]> Signed-off-by: Sagar Ghuge <[email protected]>
* glsl: Add "built-in" functions to do fp64_to_uint64(fp64)Sagar Ghuge2019-01-091-0/+27
| | | | | Reviewed-by: Elie Tournier <[email protected]> Signed-off-by: Sagar Ghuge <[email protected]>
* glsl: Add utility function to round and pack uint64_t valueSagar Ghuge2019-01-091-0/+32
| | | | | Reviewed-by: Elie Tournier <[email protected]> Signed-off-by: Sagar Ghuge <[email protected]>
* glsl: Add "built-in" functions to do int64_to_fp32(int64_t)Sagar Ghuge2019-01-091-0/+22
| | | | | Reviewed-by: Elie Tournier <[email protected]> Signed-off-by: Sagar Ghuge <[email protected]>
* glsl: Add "built-in" functions to do uint64_to_fp32(uint64_t)Sagar Ghuge2019-01-091-0/+20
| | | | | Reviewed-by: Elie Tournier <[email protected]> Signed-off-by: Sagar Ghuge <[email protected]>
* glsl: Add "built-in" functions to do int64_to_fp64(int64_t)Sagar Ghuge2019-01-091-0/+18
| | | | | Reviewed-by: Elie Tournier <[email protected]> Signed-off-by: Sagar Ghuge <[email protected]>
* glsl: Add "built-in" functions to do uint64_to_fp64(uint64_t)Sagar Ghuge2019-01-091-0/+18
| | | | | Reviewed-by: Elie Tournier <[email protected]> Signed-off-by: Sagar Ghuge <[email protected]>
* glsl: Add "built-in" functions to convert bool to doubleMatt Turner2019-01-091-0/+12
| | | | | | And vice versa. Reviewed-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do ffract(fp64)Matt Turner2019-01-091-0/+6
| | | | Reviewed-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" function to do ffloor(fp64)Matt Turner2019-01-091-0/+13
| | | | Reviewed-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do fmin/fmax(fp64)Matt Turner2019-01-091-0/+20
| | | | Reviewed-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do ffma(fp64)Matt Turner2019-01-091-0/+6
| | | | | | Definitely not actually a fused-multiply add. Reviewed-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do round(fp64)Elie Tournier2019-01-091-0/+42
| | | | Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do trunc(fp64)Elie Tournier2019-01-091-0/+22
| | | | | | v2: use mix. Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do sqrt(fp64)Elie Tournier2019-01-091-0/+272
| | | | Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do fp32_to_fp64(fp32)Elie Tournier2019-01-091-0/+38
| | | | Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do fp64_to_fp32(fp64)Elie Tournier2019-01-091-0/+101
| | | | Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do int_to_fp64(int)Elie Tournier2019-01-091-0/+23
| | | | | v2: use mix Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do fp64_to_int(fp64)Elie Tournier2019-01-091-0/+41
| | | | | | v2: use mix Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do uint_to_fp64(uint)Elie Tournier2019-01-091-0/+22
| | | | Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do fp64_to_uint(fp64)Elie Tournier2019-01-091-0/+61
| | | | Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do mul(fp64, fp64)Elie Tournier2019-01-091-0/+148
| | | | | v2: use mix Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do add(fp64, fp64)Elie Tournier2019-01-091-0/+433
| | | | | | | v2: use mix and findMSB to optimise. v3: [Sagar] Fix zFrac0 == 0u case in __normalizeRoundAndPackFloat64 Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do lt(fp64, fp64)Elie Tournier2019-01-091-0/+50
| | | | Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add utility function to extract 64-bit signElie Tournier2019-01-091-0/+7
| | | | Reviewed-by: Kenneth Graunke <[email protected]>
* glsl: Add "built-in" functions to do eq/ne(fp64, fp64)Elie Tournier2019-01-091-0/+56
|
* glsl: Add "built-in" function to do sign(fp64)Elie Tournier2019-01-091-0/+10
| | | | | | v2: use mix. Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" functions to do neg(fp64)Elie Tournier2019-01-091-0/+26
| | | | | | v2: use mix. Signed-off-by: Elie Tournier <[email protected]>
* glsl: Add "built-in" function to do abs(fp64)Elie Tournier2019-01-091-0/+11
| | | | Signed-off-by: Elie Tournier <[email protected]>
* glsl: Create file to contain software fp64 functionsMatt Turner2019-01-091-0/+58
The following patches will add implementations of various double-precision operations to this file. Reviewed-by: Kenneth Graunke <[email protected]>