summaryrefslogtreecommitdiffstats
path: root/gfx/angle/src/compiler/translator/RemovePow.cpp
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@gmail.com>2018-07-18 08:24:24 +0200
committerwolfbeast <mcwerewolf@gmail.com>2018-07-18 08:24:24 +0200
commitfc61780b35af913801d72086456f493f63197da6 (patch)
treef85891288a7bd988da9f0f15ae64e5c63f00d493 /gfx/angle/src/compiler/translator/RemovePow.cpp
parent69f7f9e5f1475891ce11cc4f431692f965b0cd30 (diff)
parent50d3e596bbe89c95615f96eb71f6bc5be737a1db (diff)
downloadUXP-fc61780b35af913801d72086456f493f63197da6.tar
UXP-fc61780b35af913801d72086456f493f63197da6.tar.gz
UXP-fc61780b35af913801d72086456f493f63197da6.tar.lz
UXP-fc61780b35af913801d72086456f493f63197da6.tar.xz
UXP-fc61780b35af913801d72086456f493f63197da6.zip
Merge commit '50d3e596bbe89c95615f96eb71f6bc5be737a1db' into Basilisk-releasev2018.07.18
# Conflicts: # browser/app/profile/firefox.js # browser/components/preferences/jar.mn
Diffstat (limited to 'gfx/angle/src/compiler/translator/RemovePow.cpp')
-rwxr-xr-xgfx/angle/src/compiler/translator/RemovePow.cpp13
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