1c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Copyright (c) 2011 The Chromium Authors. All rights reserved. 2c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// Use of this source code is governed by a BSD-style license that can be 3c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// found in the LICENSE file. 4c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 5c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#ifndef BASE_DEBUG_ALIAS_H_ 6c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#define BASE_DEBUG_ALIAS_H_ 7c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 8c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#include "base/base_export.h" 9c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 10c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)namespace base { 119ab5563a3196760eb381d102cbb2bc0f7abc6a50Ben Murdochnamespace debug { 12c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 135e3f23d412006dc4db4e659864679f29341e113fTorne (Richard Coles)// Make the optimizer think that var is aliased. This is to prevent it from 14c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// optimizing out variables that that would not otherwise be live at the point 15c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)// of a potential crash. 16c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)void BASE_EXPORT Alias(const void* var); 175d1f7b1de12d16ceb2c938c56701a3e8bfa558f7Torne (Richard Coles) 18c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)} // namespace debug 19c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)} // namespace base 20c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles) 21c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)#endif // BASE_DEBUG_ALIAS_H_ 22c2e0dbddbe15c98d52c4786dac06cb8952a8ae6dTorne (Richard Coles)