OSDN Git Service

Fix Clang compilation.
authorNicolas Capens <capn@google.com>
Tue, 14 Jun 2016 03:31:26 +0000 (23:31 -0400)
committerNicolas Capens <capn@google.com>
Tue, 14 Jun 2016 03:39:29 +0000 (03:39 +0000)
non-const lvalue reference cannot bind to a temporary.

Change-Id: I561cc8cfcedace6aab949e6e496203f39af77e2e
Reviewed-on: https://swiftshader-review.googlesource.com/5594
Reviewed-by: Nicolas Capens <capn@google.com>
Tested-by: Nicolas Capens <capn@google.com>
src/Shader/PixelProgram.cpp
src/Shader/VertexProgram.cpp

index 2513edf..3048ad1 100644 (file)
@@ -1124,12 +1124,14 @@ namespace sw
 
        void PixelProgram::TEXELFETCH(Vector4f &dst, Vector4f &src0, const Src& src1, Vector4f &src2)
        {
-               sampleTexture(dst, src1, src0.x, src0.y, src0.z, Float4(As<Int4>(src2.x)), src0, src0, src0, Lod, Fetch);
+               Float4 lod(As<Int4>(src2.x));
+               sampleTexture(dst, src1, src0.x, src0.y, src0.z, lod, src0, src0, src0, Lod, Fetch);
        }
 
        void PixelProgram::TEXELFETCH(Vector4f &dst, Vector4f &src0, const Src& src1, Vector4f &src2, Vector4f &offset)
        {
-               sampleTexture(dst, src1, src0.x, src0.y, src0.z, Float4(As<Int4>(src2.x)), src0, src0, offset, Lod, Fetch | Offset);
+               Float4 lod(As<Int4>(src2.x));
+               sampleTexture(dst, src1, src0.x, src0.y, src0.z, lod, src0, src0, offset, Lod, Fetch | Offset);
        }
 
        void PixelProgram::TEXGRAD(Vector4f &dst, Vector4f &src0, const Src& src1, Vector4f &src2, Vector4f &src3)
index 1aeb683..6d3f683 100644 (file)
@@ -1555,12 +1555,14 @@ namespace sw
 
        void VertexProgram::TEXELFETCH(Vector4f &dst, Vector4f &src0, const Src& src1, Vector4f &src2)
        {
-               sampleTexture(dst, src1, src0.x, src0.y, src0.z, Float4(As<Int4>(src2.x)), src0, src0, src0, Lod, Fetch);
+               Float4 lod(As<Int4>(src2.x));
+               sampleTexture(dst, src1, src0.x, src0.y, src0.z, lod, src0, src0, src0, Lod, Fetch);
        }
 
        void VertexProgram::TEXELFETCH(Vector4f &dst, Vector4f &src0, const Src& src1, Vector4f &src2, Vector4f &offset)
        {
-               sampleTexture(dst, src1, src0.x, src0.y, src0.z, Float4(As<Int4>(src2.x)), src0, src0, offset, Lod, Fetch | Offset);
+               Float4 lod(As<Int4>(src2.x));
+               sampleTexture(dst, src1, src0.x, src0.y, src0.z, lod, src0, src0, offset, Lod, Fetch | Offset);
        }
 
        void VertexProgram::TEXGRAD(Vector4f &dst, Vector4f &src0, const Src& src1, Vector4f &src2, Vector4f &src3)