3
0
Fork 0
forked from suyu/suyu

shader/decode: Avoid a pessimizing std::move within DecodeRange()

std::moveing a local variable in a return statement has the potential to
prevent copy elision from occurring, so this can just be converted into
a regular return.
This commit is contained in:
Lioncash 2019-01-28 07:43:19 -05:00
parent a9268286a4
commit 3e1a9a45a6

View file

@ -126,7 +126,7 @@ BasicBlock ShaderIR::DecodeRange(u32 begin, u32 end) {
for (u32 pc = begin; pc < (begin > end ? MAX_PROGRAM_LENGTH : end);) { for (u32 pc = begin; pc < (begin > end ? MAX_PROGRAM_LENGTH : end);) {
pc = DecodeInstr(basic_block, pc); pc = DecodeInstr(basic_block, pc);
} }
return std::move(basic_block); return basic_block;
} }
u32 ShaderIR::DecodeInstr(BasicBlock& bb, u32 pc) { u32 ShaderIR::DecodeInstr(BasicBlock& bb, u32 pc) {