Mesa (gallium-0.1): glsl: fix broken +=, -=, *=, /= operators

Brian Paul brianp at kemper.freedesktop.org
Fri Jan 9 00:24:50 UTC 2009


Module: Mesa
Branch: gallium-0.1
Commit: 1efbad7499626fd5e3718f07de4ed51a346710df
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=1efbad7499626fd5e3718f07de4ed51a346710df

Author: Brian Paul <brianp at vmware.com>
Date:   Thu Jan  8 15:32:02 2009 -0700

glsl: fix broken +=, -=, *=, /= operators

These functions need to return the final computed value.
Now expressions such as a = (b += c) work properly.
Also, no need to use __asm intrinsics in these functions.  The resulting
code is the same when using ordinary arithmetic operators and is more legible.

---

 src/mesa/shader/slang/library/slang_core.gc   |  569 ++++++++-------
 src/mesa/shader/slang/library/slang_core_gc.h |  954 ++++++++++++-------------
 2 files changed, 786 insertions(+), 737 deletions(-)

Diff:   http://cgit.freedesktop.org/mesa/mesa/diff/?id=1efbad7499626fd5e3718f07de4ed51a346710df



More information about the mesa-commit mailing list