diff options
author | Ian Romanick <[email protected]> | 2014-05-14 13:25:14 -0700 |
---|---|---|
committer | Ian Romanick <[email protected]> | 2014-09-30 13:34:41 -0700 |
commit | ab51179f1fe8f365cc5357f498e4ce690c28bd3a (patch) | |
tree | ca8f1936c61ae7698c721ae3ed64aa51bd75bef6 /src/glsl/ir_clone.cpp | |
parent | baf5a756640fde8cd4d4e704ed8c9c45da3e5407 (diff) |
glsl: Replace ir_variable::warn_extension pointer with an 8-bit index
Also move the new warn_extension_index into ir_variable::data. This
enables slightly better packing.
Valgrind massif results for a trimmed apitrace of dota2:
n time(i) total(B) useful-heap(B) extra-heap(B) stacks(B)
Before (32-bit): 82 40,580,040,531 68,488,992 62,973,695 5,515,297 0
After (32-bit): 73 40,580,476,304 68,488,400 62,796,151 5,692,249 0
Before (64-bit): 65 37,124,013,542 95,892,768 88,466,712 7,426,056 0
After (64-bit): 71 37,124,890,613 95,889,584 88,089,008 7,800,576 0
A real savings of 173KiB on 32-bit and 368KiB on 64-bit.
Signed-off-by: Ian Romanick <[email protected]>
Reviewed-by: Matt Turner <[email protected]>
Reviewed-by: Tapani Pälli <[email protected]>
Diffstat (limited to 'src/glsl/ir_clone.cpp')
-rw-r--r-- | src/glsl/ir_clone.cpp | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/src/glsl/ir_clone.cpp b/src/glsl/ir_clone.cpp index 4b444d4683d..86c0e3166d5 100644 --- a/src/glsl/ir_clone.cpp +++ b/src/glsl/ir_clone.cpp @@ -53,8 +53,6 @@ ir_variable::clone(void *mem_ctx, struct hash_table *ht) const memcpy(&var->data, &this->data, sizeof(var->data)); - var->warn_extension = this->warn_extension; - var->num_state_slots = this->num_state_slots; if (this->state_slots) { /* FINISHME: This really wants to use something like talloc_reference, but |