mirror of
https://github.com/RPCS3/rpcs3.git
synced 2024-11-16 23:17:29 +00:00
rsx: Allocate scratch memory using simple array with no default initialize
- This cuts down processing time significantly by eliminating calls to memset_stosb
This commit is contained in:
parent
129e947720
commit
7ec481d99b
@ -164,7 +164,7 @@ struct convert_16_block_32_swizzled
|
||||
}
|
||||
|
||||
u32 size = padded_width * padded_height * depth * 2;
|
||||
std::vector<U> tmp(size);
|
||||
rsx::simple_array<U> tmp(size);
|
||||
|
||||
rsx::convert_linear_swizzle_3d<U>(src.data(), tmp.data(), padded_width, padded_height, depth);
|
||||
|
||||
@ -243,7 +243,7 @@ struct copy_unmodified_block_swizzled
|
||||
}
|
||||
|
||||
const u32 size_in_block = padded_width * padded_height * depth * 2;
|
||||
std::vector<U> tmp(size_in_block * words_per_block);
|
||||
rsx::simple_array<U> tmp(size_in_block * words_per_block);
|
||||
|
||||
if (words_per_block == 1) [[likely]]
|
||||
{
|
||||
@ -488,7 +488,7 @@ struct copy_rgb655_block_swizzled
|
||||
}
|
||||
|
||||
u32 size = padded_width * padded_height * depth * 2;
|
||||
std::vector<U> tmp(size);
|
||||
rsx::simple_array<U> tmp(size);
|
||||
|
||||
rsx::convert_linear_swizzle_3d<U>(src.data(), tmp.data(), padded_width, padded_height, depth);
|
||||
|
||||
|
@ -25,7 +25,13 @@ namespace rsx
|
||||
public:
|
||||
simple_array() = default;
|
||||
|
||||
simple_array(u32 initial_size, const Ty val = {})
|
||||
simple_array(u32 initial_size)
|
||||
{
|
||||
reserve(initial_size);
|
||||
_size = initial_size;
|
||||
}
|
||||
|
||||
simple_array(u32 initial_size, const Ty val)
|
||||
{
|
||||
reserve(initial_size);
|
||||
_size = initial_size;
|
||||
|
Loading…
Reference in New Issue
Block a user