glslang/SPIRV
Neil Roberts eddb1318ae Use the correct type for the constant for matrix/scalar division
When a matrix is divided by a scalar it tries to take the reciprocal
of the scalar to convert the operation into a multiply. However it was
always doing this by making a 32-bit constant. If the scalar is a
double then this would end up making an FDiv instruction with
different types in the operands.

This patch adds a helper method called makeFpConstant which makes a
floating-point constant of the given type. The code to take the
reciprocal now uses it to make the same type as the result.

Fixes https://github.com/KhronosGroup/glslang/issues/1278
2018-03-13 13:50:56 +01:00
..
bitutils.h Parser: Implement extension GL_AMD_gpu_shader_half_float. 2016-09-30 16:13:06 +08:00
CMakeLists.txt Fix issues of SPIRV headers 2018-03-02 17:42:37 +08:00
disassemble.cpp SPV: Implement Vulkan 1.1 features and extensions. 2018-03-06 16:12:04 -07:00
disassemble.h Non-functional: White space after "//", mostly for copyrights. 2017-01-06 12:34:14 -07:00
doc.cpp SPV: Implement Vulkan 1.1 features and extensions. 2018-03-06 16:12:04 -07:00
doc.h [lumped builds] Add include guards (#pragma once) to header files that did not have any. 2017-05-10 16:58:38 +03:00
GLSL.ext.AMD.h Non-functional: Move to latest headers. 2018-03-02 12:36:02 -07:00
GLSL.ext.EXT.h Fix issues of SPIRV headers 2018-03-02 17:42:37 +08:00
GLSL.ext.KHR.h Fix issues of SPIRV headers 2018-03-02 17:42:37 +08:00
GLSL.ext.NV.h SPV: Update SPV header to official Rev. 10 of 1.0, and fix the consequences of doing so. 2017-02-27 01:50:28 -07:00
GLSL.std.450.h SPV: Implement Vulkan version of GLSL (KHR_vulkan_glsl). 2016-02-15 21:46:55 -07:00
GlslangToSpv.cpp Use the correct type for the constant for matrix/scalar division 2018-03-13 13:50:56 +01:00
GlslangToSpv.h Fixed GCC+Clang errors and warnings on Linux and OSX. 2018-03-03 13:04:12 -08:00
hex_float.h Build: Attempt better support for VS 2012. 2017-08-25 21:35:37 -06:00
InReadableOrder.cpp Use unordered_set in ReadableOrderTraverser. 2017-05-11 20:48:34 -04:00
Logger.cpp [VS2010] Remove use of ranged-for loops 2016-05-17 01:20:30 +02:00
Logger.h [VS2010] Remove use of "= default" and "= delete" 2016-05-17 01:20:25 +02:00
spirv.hpp SPV: Implement Vulkan 1.1 features and extensions. 2018-03-06 16:12:04 -07:00
SpvBuilder.cpp Use the correct type for the constant for matrix/scalar division 2018-03-13 13:50:56 +01:00
SpvBuilder.h Use the correct type for the constant for matrix/scalar division 2018-03-13 13:50:56 +01:00
spvIR.h SPV: Memory model: Reduce set of memory-semantic bits requested for "all". 2017-12-16 00:34:08 -07:00
SPVRemapper.cpp SPV: Implement Vulkan 1.1 features and extensions. 2018-03-06 16:12:04 -07:00
SPVRemapper.h Remapper: make remapper robust against non-exiting error handlers 2017-09-20 15:19:43 -06:00