diff options
| author | comex <comexk@gmail.com> | 2014-10-21 20:42:55 -0400 |
|---|---|---|
| committer | comex <comexk@gmail.com> | 2014-10-25 16:57:25 -0400 |
| commit | b29e5146ec63e1b35cee45e01f54c4b69f15938e (patch) | |
| tree | 233a13aa471d63ff1c94d9ca316383b3af61b62f /Source/Core/VideoCommon/VertexLoaderManager.cpp | |
| parent | f51c233a08969e4126520561ecb15e56674ffe9d (diff) | |
Convert some VideoCommon stuff to BitSet.
Now with a minor performance improvement removed for no reason.
Diffstat (limited to 'Source/Core/VideoCommon/VertexLoaderManager.cpp')
| -rw-r--r-- | Source/Core/VideoCommon/VertexLoaderManager.cpp | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/Source/Core/VideoCommon/VertexLoaderManager.cpp b/Source/Core/VideoCommon/VertexLoaderManager.cpp index ca925d0302..b8132fa806 100644 --- a/Source/Core/VideoCommon/VertexLoaderManager.cpp +++ b/Source/Core/VideoCommon/VertexLoaderManager.cpp @@ -100,14 +100,14 @@ void AppendListToString(std::string *dest) void MarkAllDirty() { - g_main_cp_state.attr_dirty = 0xff; - g_preprocess_cp_state.attr_dirty = 0xff; + g_main_cp_state.attr_dirty = BitSet32::AllTrue(8); + g_preprocess_cp_state.attr_dirty = BitSet32::AllTrue(8); } static VertexLoader* RefreshLoader(int vtx_attr_group, CPState* state) { VertexLoader* loader; - if ((state->attr_dirty >> vtx_attr_group) & 1) + if (state->attr_dirty[vtx_attr_group]) { VertexLoaderUID uid(state->vtx_desc, state->vtx_attr[vtx_attr_group]); std::lock_guard<std::mutex> lk(s_vertex_loader_map_lock); @@ -123,7 +123,7 @@ static VertexLoader* RefreshLoader(int vtx_attr_group, CPState* state) INCSTAT(stats.numVertexLoaders); } state->vertex_loaders[vtx_attr_group] = loader; - state->attr_dirty &= ~(1 << vtx_attr_group); + state->attr_dirty[vtx_attr_group] = false; } else { loader = state->vertex_loaders[vtx_attr_group]; } @@ -200,31 +200,31 @@ void LoadCPReg(u32 sub_cmd, u32 value, bool is_preprocess) case 0x50: state->vtx_desc.Hex &= ~0x1FFFF; // keep the Upper bits state->vtx_desc.Hex |= value; - state->attr_dirty = 0xFF; + state->attr_dirty = BitSet32::AllTrue(8); break; case 0x60: state->vtx_desc.Hex &= 0x1FFFF; // keep the lower 17Bits state->vtx_desc.Hex |= (u64)value << 17; - state->attr_dirty = 0xFF; + state->attr_dirty = BitSet32::AllTrue(8); break; case 0x70: _assert_((sub_cmd & 0x0F) < 8); state->vtx_attr[sub_cmd & 7].g0.Hex = value; - state->attr_dirty |= 1 << (sub_cmd & 7); + state->attr_dirty[sub_cmd & 7] = true; break; case 0x80: _assert_((sub_cmd & 0x0F) < 8); state->vtx_attr[sub_cmd & 7].g1.Hex = value; - state->attr_dirty |= 1 << (sub_cmd & 7); + state->attr_dirty[sub_cmd & 7] = true; break; case 0x90: _assert_((sub_cmd & 0x0F) < 8); state->vtx_attr[sub_cmd & 7].g2.Hex = value; - state->attr_dirty |= 1 << (sub_cmd & 7); + state->attr_dirty[sub_cmd & 7] = true; break; // Pointers to vertex arrays in GC RAM |
