diff options
author | wolfbeast <mcwerewolf@gmail.com> | 2018-08-05 11:35:53 +0200 |
---|---|---|
committer | wolfbeast <mcwerewolf@gmail.com> | 2018-08-05 11:35:53 +0200 |
commit | 6bd66b1728eeddb058066edda740aaeb2ceaec23 (patch) | |
tree | 985faf01c526763515731569fa01a99f4dbef36e /gfx/angle/src/compiler/translator/RemovePow.cpp | |
parent | e0a8dcfed131ffa58a5e2cb1d30fe48c745c2fdc (diff) | |
parent | 559824514dc95e02fbe81f1786e6ac13ee8e9d55 (diff) | |
download | UXP-6bd66b1728eeddb058066edda740aaeb2ceaec23.tar UXP-6bd66b1728eeddb058066edda740aaeb2ceaec23.tar.gz UXP-6bd66b1728eeddb058066edda740aaeb2ceaec23.tar.lz UXP-6bd66b1728eeddb058066edda740aaeb2ceaec23.tar.xz UXP-6bd66b1728eeddb058066edda740aaeb2ceaec23.zip |
Merge branch 'master' into js-modules
Diffstat (limited to 'gfx/angle/src/compiler/translator/RemovePow.cpp')
-rwxr-xr-x | gfx/angle/src/compiler/translator/RemovePow.cpp | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/gfx/angle/src/compiler/translator/RemovePow.cpp b/gfx/angle/src/compiler/translator/RemovePow.cpp index 192084c36..ba505753a 100755 --- a/gfx/angle/src/compiler/translator/RemovePow.cpp +++ b/gfx/angle/src/compiler/translator/RemovePow.cpp @@ -13,9 +13,6 @@ #include "compiler/translator/InfoSink.h" #include "compiler/translator/IntermNode.h" -namespace sh -{ - namespace { @@ -58,15 +55,19 @@ bool RemovePowTraverser::visitAggregate(Visit visit, TIntermAggregate *node) TIntermTyped *x = node->getSequence()->at(0)->getAsTyped(); TIntermTyped *y = node->getSequence()->at(1)->getAsTyped(); - TIntermUnary *log = new TIntermUnary(EOpLog2, x); + TIntermUnary *log = new TIntermUnary(EOpLog2); + log->setOperand(x); log->setLine(node->getLine()); + log->setType(x->getType()); TOperator op = TIntermBinary::GetMulOpBasedOnOperands(y->getType(), log->getType()); TIntermBinary *mul = new TIntermBinary(op, y, log); mul->setLine(node->getLine()); - TIntermUnary *exp = new TIntermUnary(EOpExp2, mul); + TIntermUnary *exp = new TIntermUnary(EOpExp2); + exp->setOperand(mul); exp->setLine(node->getLine()); + exp->setType(node->getType()); queueReplacement(node, exp, OriginalNode::IS_DROPPED); @@ -95,5 +96,3 @@ void RemovePow(TIntermNode *root) } while (traverser.needAnotherIteration()); } - -} // namespace sh |