Commit 3d7c35f2 by Nicolas Capens

Don't return values from terminator instructions.

All LLVM instructions are LLVM values, but in the case of terminator instructions their value is meaningless, and we don't use them. Bug swiftshader:10 Change-Id: I9eb71e1dcea2614cb810021dfbf3c8908a7e2510 Reviewed-on: https://swiftshader-review.googlesource.com/7355Tested-by: 's avatarNicolas Capens <capn@google.com> Reviewed-by: 's avatarAlexis Hétu <sugoi@google.com> Reviewed-by: 's avatarNicolas Capens <capn@google.com>
parent 3bbc5e16
......@@ -319,28 +319,28 @@ namespace sw
return V(&*args);
}
Value *Nucleus::createRetVoid()
void Nucleus::createRetVoid()
{
x86::emms();
return V(::builder->CreateRetVoid());
::builder->CreateRetVoid();
}
Value *Nucleus::createRet(Value *v)
void Nucleus::createRet(Value *v)
{
x86::emms();
return V(::builder->CreateRet(v));
::builder->CreateRet(v);
}
Value *Nucleus::createBr(BasicBlock *dest)
void Nucleus::createBr(BasicBlock *dest)
{
return V(::builder->CreateBr(dest));
::builder->CreateBr(dest);
}
Value *Nucleus::createCondBr(Value *cond, BasicBlock *ifTrue, BasicBlock *ifFalse)
void Nucleus::createCondBr(Value *cond, BasicBlock *ifTrue, BasicBlock *ifFalse)
{
return V(::builder->CreateCondBr(cond, ifTrue, ifFalse));
::builder->CreateCondBr(cond, ifTrue, ifFalse);
}
Value *Nucleus::createAdd(Value *lhs, Value *rhs)
......@@ -683,9 +683,9 @@ namespace sw
reinterpret_cast<SwitchInst*>(Switch)->addCase(llvm::ConstantInt::get(Type::getInt32Ty(*::context), Case, true), Branch);
}
Value *Nucleus::createUnreachable()
void Nucleus::createUnreachable()
{
return V(::builder->CreateUnreachable());
::builder->CreateUnreachable();
}
Value *Nucleus::createSwizzle(Value *val, unsigned char select)
......
......@@ -64,10 +64,10 @@ namespace sw
static Value *getArgument(unsigned int index);
// Terminators
static Value *createRetVoid();
static Value *createRet(Value *V);
static Value *createBr(BasicBlock *dest);
static Value *createCondBr(Value *cond, BasicBlock *ifTrue, BasicBlock *ifFalse);
static void createRetVoid();
static void createRet(Value *V);
static void createBr(BasicBlock *dest);
static void createCondBr(Value *cond, BasicBlock *ifTrue, BasicBlock *ifFalse);
// Binary operators
static Value *createAdd(Value *lhs, Value *rhs);
......@@ -150,7 +150,7 @@ namespace sw
static Value *createSelect(Value *C, Value *ifTrue, Value *ifFalse);
static Value *createSwitch(Value *V, BasicBlock *Dest, unsigned NumCases);
static void addSwitchCase(Value *Switch, int Case, BasicBlock *Branch);
static Value *createUnreachable();
static void createUnreachable();
// Derived instructions
static Value *createSwizzle(Value *val, unsigned char select);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment