mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-06 05:08:08 +02:00
Implement ex2 opcode
This commit is contained in:
parent
bd38f4d921
commit
1c955171c8
3 changed files with 13 additions and 1 deletions
|
|
@ -302,3 +302,12 @@ llvm::Value * Instructions::dst(llvm::Value *in1, llvm::Value *in2)
|
|||
ry, z, w);
|
||||
}
|
||||
|
||||
llvm::Value * Instructions::ex2(llvm::Value *in)
|
||||
{
|
||||
llvm::Value *val = callPow(ConstantFP::get(Type::FloatTy, APFloat(2.f)),
|
||||
new ExtractElementInst(in, unsigned(0),
|
||||
name("x1"),
|
||||
m_block));
|
||||
return vectorFromVals(val, val, val, val);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -19,6 +19,7 @@ public:
|
|||
llvm::Value *dp4(llvm::Value *in1, llvm::Value *in2);
|
||||
llvm::Value *dph(llvm::Value *in1, llvm::Value *in2);
|
||||
llvm::Value *dst(llvm::Value *in1, llvm::Value *in2);
|
||||
llvm::Value *ex2(llvm::Value *in1);
|
||||
llvm::Value *lit(llvm::Value *in1);
|
||||
llvm::Value *madd(llvm::Value *in1, llvm::Value *in2,
|
||||
llvm::Value *in2);
|
||||
|
|
|
|||
|
|
@ -249,7 +249,9 @@ translate_instruction(llvm::Module *module,
|
|||
break;
|
||||
case TGSI_OPCODE_ROUND:
|
||||
break;
|
||||
case TGSI_OPCODE_EXPBASE2:
|
||||
case TGSI_OPCODE_EXPBASE2: {
|
||||
out = instr->ex2(inputs[0]);
|
||||
}
|
||||
break;
|
||||
case TGSI_OPCODE_LOGBASE2:
|
||||
break;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue