From b0d173f4053ee006717fb1c04cf12d1d687052e6 Mon Sep 17 00:00:00 2001
From: Brian Paul <brian.paul@tungstengraphics.com>
Date: Tue, 15 Jul 2008 15:32:53 -0600
Subject: mesa: fix some broken /= operators

---
 src/mesa/shader/slang/library/slang_core.gc | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

(limited to 'src')

diff --git a/src/mesa/shader/slang/library/slang_core.gc b/src/mesa/shader/slang/library/slang_core.gc
index 82828a826c..0fd2b7e6b3 100644
--- a/src/mesa/shader/slang/library/slang_core.gc
+++ b/src/mesa/shader/slang/library/slang_core.gc
@@ -1226,6 +1226,7 @@ void __operator /= (inout int a, const int b)
    float invB;
    __asm float_rcp invB, b;
    __asm vec4_multiply a, a, invB;
+   __asm float_to_int __retVal, a;
 }
 
 
@@ -1518,7 +1519,7 @@ void __operator /= (inout vec2 v, const float a)
 {
    float invA;
    __asm float_rcp invA, a;
-   __asm vec4_multiply v.xy, v.xy, a.xx;
+   __asm vec4_multiply v.xy, v.xy, invA.xx;
 }
 
 
@@ -1543,7 +1544,7 @@ void __operator /= (inout vec3 v, const float a)
 {
    float invA;
    __asm float_rcp invA, a;
-   __asm vec4_multiply v.xyz, v.xyz, a.xxx;
+   __asm vec4_multiply v.xyz, v.xyz, invA.xxx;
 }
 
 
@@ -1568,7 +1569,7 @@ void __operator /= (inout vec4 v, const float a)
 {
    float invA;
    __asm float_rcp invA, a;
-   __asm vec4_multiply v, v, a.xxxx;
+   __asm vec4_multiply v, v, invA.xxxx;
 }
 
 
-- 
cgit v1.2.3