mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 03:08:05 +02:00
adjust llvm code to the changes in 2.3
This commit is contained in:
parent
6807b4f6b1
commit
19f15277d1
3 changed files with 26 additions and 28 deletions
|
|
@ -166,10 +166,9 @@ llvm::Value * Instructions::rsq(llvm::Value *in1)
|
|||
Value *abs = callFAbs(x);
|
||||
Value *sqrt = callFSqrt(abs);
|
||||
|
||||
Value *rsqrt = m_builder.CreateFDiv(ConstantFP::get(Type::FloatTy,
|
||||
APFloat(1.f)),
|
||||
sqrt,
|
||||
name("rsqrt"));
|
||||
Value *rsqrt = m_builder.CreateFDiv(ConstantFP::get(APFloat(1.f)),
|
||||
sqrt,
|
||||
name("rsqrt"));
|
||||
return vectorFromVals(rsqrt, rsqrt, rsqrt, rsqrt);
|
||||
}
|
||||
|
||||
|
|
@ -278,9 +277,8 @@ llvm::Value * Instructions::rcp(llvm::Value *in1)
|
|||
Value *x1 = m_builder.CreateExtractElement(in1,
|
||||
m_storage->constantInt(0),
|
||||
name("x1"));
|
||||
Value *res = m_builder.CreateFDiv(ConstantFP::get(Type::FloatTy,
|
||||
APFloat(1.f)),
|
||||
x1, name("rcp"));
|
||||
Value *res = m_builder.CreateFDiv(ConstantFP::get(APFloat(1.f)),
|
||||
x1, name("rcp"));
|
||||
return vectorFromVals(res, res, res, res);
|
||||
}
|
||||
|
||||
|
|
@ -319,13 +317,13 @@ llvm::Value * Instructions::dst(llvm::Value *in1, llvm::Value *in2)
|
|||
m_storage->constantInt(3),
|
||||
name("w"));
|
||||
Value *ry = m_builder.CreateMul(y1, y2, name("tyuy"));
|
||||
return vectorFromVals(ConstantFP::get(Type::FloatTy, APFloat(1.f)),
|
||||
return vectorFromVals(ConstantFP::get(APFloat(1.f)),
|
||||
ry, z, w);
|
||||
}
|
||||
|
||||
llvm::Value * Instructions::ex2(llvm::Value *in)
|
||||
{
|
||||
llvm::Value *val = callPow(ConstantFP::get(Type::FloatTy, APFloat(2.f)),
|
||||
llvm::Value *val = callPow(ConstantFP::get(APFloat(2.f)),
|
||||
m_builder.CreateExtractElement(
|
||||
in, m_storage->constantInt(0),
|
||||
name("x1")));
|
||||
|
|
@ -526,7 +524,7 @@ llvm::Function * Instructions::declarePrintf()
|
|||
|
||||
llvm::Value * Instructions::sgt(llvm::Value *in1, llvm::Value *in2)
|
||||
{
|
||||
Constant *const1f = ConstantFP::get(Type::FloatTy, APFloat(1.000000e+00f));
|
||||
Constant *const1f = ConstantFP::get(APFloat(1.000000e+00f));
|
||||
Constant *const0f = Constant::getNullValue(Type::FloatTy);
|
||||
|
||||
std::vector<llvm::Value*> vec1 = extractVector(in1);
|
||||
|
|
@ -547,7 +545,7 @@ llvm::Value * Instructions::sgt(llvm::Value *in1, llvm::Value *in2)
|
|||
}
|
||||
llvm::Value * Instructions::sge(llvm::Value *in1, llvm::Value *in2)
|
||||
{
|
||||
Constant *const1f = ConstantFP::get(Type::FloatTy, APFloat(1.000000e+00f));
|
||||
Constant *const1f = ConstantFP::get(APFloat(1.000000e+00f));
|
||||
Constant *const0f = Constant::getNullValue(Type::FloatTy);
|
||||
|
||||
std::vector<llvm::Value*> vec1 = extractVector(in1);
|
||||
|
|
@ -571,7 +569,7 @@ llvm::Value * Instructions::sge(llvm::Value *in1, llvm::Value *in2)
|
|||
|
||||
llvm::Value * Instructions::slt(llvm::Value *in1, llvm::Value *in2)
|
||||
{
|
||||
Constant *const1f = ConstantFP::get(Type::FloatTy, APFloat(1.000000e+00f));
|
||||
Constant *const1f = ConstantFP::get(APFloat(1.000000e+00f));
|
||||
Constant *const0f = Constant::getNullValue(Type::FloatTy);
|
||||
|
||||
std::vector<llvm::Value*> vec1 = extractVector(in1);
|
||||
|
|
@ -814,10 +812,10 @@ llvm::Function * Instructions::findFunction(int label)
|
|||
llvm::Value * Instructions::constVector(float x, float y, float z, float w)
|
||||
{
|
||||
std::vector<Constant*> vec(4);
|
||||
vec[0] = ConstantFP::get(Type::FloatTy, APFloat(x));
|
||||
vec[1] = ConstantFP::get(Type::FloatTy, APFloat(y));
|
||||
vec[2] = ConstantFP::get(Type::FloatTy, APFloat(z));
|
||||
vec[3] = ConstantFP::get(Type::FloatTy, APFloat(w));
|
||||
vec[0] = ConstantFP::get(APFloat(x));
|
||||
vec[1] = ConstantFP::get(APFloat(y));
|
||||
vec[2] = ConstantFP::get(APFloat(z));
|
||||
vec[3] = ConstantFP::get(APFloat(w));
|
||||
return ConstantVector::get(m_floatVecType, vec);
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -69,10 +69,10 @@ llvm::Constant *Storage::shuffleMask(int vec)
|
|||
{
|
||||
if (!m_extSwizzleVec) {
|
||||
std::vector<Constant*> elems;
|
||||
elems.push_back(ConstantFP::get(Type::FloatTy, APFloat(0.f)));
|
||||
elems.push_back(ConstantFP::get(Type::FloatTy, APFloat(1.f)));
|
||||
elems.push_back(ConstantFP::get(Type::FloatTy, APFloat(0.f)));
|
||||
elems.push_back(ConstantFP::get(Type::FloatTy, APFloat(1.f)));
|
||||
elems.push_back(ConstantFP::get(APFloat(0.f)));
|
||||
elems.push_back(ConstantFP::get(APFloat(1.f)));
|
||||
elems.push_back(ConstantFP::get(APFloat(0.f)));
|
||||
elems.push_back(ConstantFP::get(APFloat(1.f)));
|
||||
m_extSwizzleVec = ConstantVector::get(m_floatVecType, elems);
|
||||
}
|
||||
|
||||
|
|
@ -295,10 +295,10 @@ llvm::Value * Storage::immediateElement(int idx)
|
|||
void Storage::addImmediate(float *val)
|
||||
{
|
||||
std::vector<Constant*> vec(4);
|
||||
vec[0] = ConstantFP::get(Type::FloatTy, APFloat(val[0]));
|
||||
vec[1] = ConstantFP::get(Type::FloatTy, APFloat(val[1]));
|
||||
vec[2] = ConstantFP::get(Type::FloatTy, APFloat(val[2]));
|
||||
vec[3] = ConstantFP::get(Type::FloatTy, APFloat(val[3]));
|
||||
vec[0] = ConstantFP::get(APFloat(val[0]));
|
||||
vec[1] = ConstantFP::get(APFloat(val[1]));
|
||||
vec[2] = ConstantFP::get(APFloat(val[2]));
|
||||
vec[3] = ConstantFP::get(APFloat(val[3]));
|
||||
m_immediates.push_back(ConstantVector::get(m_floatVecType, vec));
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -264,10 +264,10 @@ llvm::Constant * StorageSoa::createConstGlobalVector(const std::vector<float> &v
|
|||
{
|
||||
VectorType *vectorType = VectorType::get(Type::FloatTy, 4);
|
||||
std::vector<Constant*> immValues;
|
||||
ConstantFP *constx = ConstantFP::get(Type::FloatTy, APFloat(vec[0]));
|
||||
ConstantFP *consty = ConstantFP::get(Type::FloatTy, APFloat(vec[1]));
|
||||
ConstantFP *constz = ConstantFP::get(Type::FloatTy, APFloat(vec[2]));
|
||||
ConstantFP *constw = ConstantFP::get(Type::FloatTy, APFloat(vec[3]));
|
||||
ConstantFP *constx = ConstantFP::get(APFloat(vec[0]));
|
||||
ConstantFP *consty = ConstantFP::get(APFloat(vec[1]));
|
||||
ConstantFP *constz = ConstantFP::get(APFloat(vec[2]));
|
||||
ConstantFP *constw = ConstantFP::get(APFloat(vec[3]));
|
||||
immValues.push_back(constx);
|
||||
immValues.push_back(consty);
|
||||
immValues.push_back(constz);
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue