Module: Mesa Branch: master Commit: fde23b61a996b0f3348f20e7636253465822aca1 URL: http://cgit.freedesktop.org/mesa/mesa/commit/?id=fde23b61a996b0f3348f20e7636253465822aca1
Author: Francisco Jerez <[email protected]> Date: Fri Sep 20 16:27:42 2013 -0700 i965: Initialize all member variables of bblock_t on construction. The bblock_t object relies on the memory allocator zeroing out its contents before it's initialized, which is quite an unusual practice in the C++ world because it ties objects to some specific allocation scheme, and gives unpredictable results when an object is created with a different allocator -- Stack allocation, array allocation, or aggregation inside a different object are some of the useful possibilities that come to my mind. Initialize all fields from the constructor and stop using the zeroing allocator. v2: Use zero initialization for numeric types instead of default construction. Reviewed-by: Kenneth Graunke <[email protected]> --- src/mesa/drivers/dri/i965/brw_cfg.cpp | 3 ++- src/mesa/drivers/dri/i965/brw_cfg.h | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/mesa/drivers/dri/i965/brw_cfg.cpp b/src/mesa/drivers/dri/i965/brw_cfg.cpp index f4cfcd5..02ae37e 100644 --- a/src/mesa/drivers/dri/i965/brw_cfg.cpp +++ b/src/mesa/drivers/dri/i965/brw_cfg.cpp @@ -44,7 +44,8 @@ pop_stack(exec_list *list) return block; } -bblock_t::bblock_t() +bblock_t::bblock_t() : + start_ip(0), end_ip(0), block_num(0) { start = NULL; end = NULL; diff --git a/src/mesa/drivers/dri/i965/brw_cfg.h b/src/mesa/drivers/dri/i965/brw_cfg.h index 27bc8b6..505a5cf 100644 --- a/src/mesa/drivers/dri/i965/brw_cfg.h +++ b/src/mesa/drivers/dri/i965/brw_cfg.h @@ -39,7 +39,7 @@ public: class bblock_t { public: - DECLARE_RZALLOC_CXX_OPERATORS(bblock_t) + DECLARE_RALLOC_CXX_OPERATORS(bblock_t) bblock_link *make_list(void *mem_ctx); _______________________________________________ mesa-commit mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/mesa-commit
