X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fopt%2Fscalar_replace.h;h=8c15701ca62e0d3d743ee703a8e17e411f720659;hb=64f5f0cf11fe4a0d4753060e45639604d725652d;hp=4ed3f1f2387f1a0b400db7c2a0dfc333ee6924b9;hpb=b73f55938b96a97a0c9322f22e18258e50546c93;p=libfirm diff --git a/ir/opt/scalar_replace.h b/ir/opt/scalar_replace.h index 4ed3f1f23..8c15701ca 100644 --- a/ir/opt/scalar_replace.h +++ b/ir/opt/scalar_replace.h @@ -1,34 +1,39 @@ /* - * Project: libFIRM - * File name: ir/opt/scalar_replace.h - * Purpose: scalar replacement of compounds - * Author: Beyhan Veliev - * Created: - * CVS-ID: $Id$ - * Copyright: (c) 1998-2005 Universität Karlsruhe - * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE. + * Copyright (C) 1995-2008 University of Karlsruhe. All right reserved. + * + * This file is part of libFirm. + * + * This file may be distributed and/or modified under the terms of the + * GNU General Public License version 2 as published by the Free Software + * Foundation and appearing in the file LICENSE.GPL included in the + * packaging of this file. + * + * Licensees holding valid libFirm Professional Edition licenses may use + * this file in accordance with the libFirm Commercial License. + * Agreement provided with the Software. + * + * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE + * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR + * PURPOSE. */ -#ifndef _SCALAR_REPLACE_H_ -#define _SCALAR_REPLACE_H_ +/** + * @file + * @brief Scalar replacement of compounds. + * @author Beyhan Veliev, Michael Beck + */ +#ifndef FIRM_OPT_SCALAR_REPLACE_H +#define FIRM_OPT_SCALAR_REPLACE_H -#include "irgraph.h" +#include "firm_types.h" +#include /** * Returns non-zero, if the address of an entity - * represented by a Sel node (or it's successor Sels) is taken. + * represented by a Sel node (or its successor Sels) is taken. * * @param sel the Sel node */ -int is_address_taken(ir_node *sel); - -/** - * Do the scalar replacement optimization. - * Replace local compound entities (like structures and arrays) - * with atomic values if possible. Does not handle classes yet. - * - * @param irg the graph which should be optimized - */ -void scalar_replacement_opt(ir_graph *irg); +bool is_address_taken(ir_node *sel); -#endif /* _SCALAR_REPLACE_H_ */ +#endif /* FIRM_OPT_SCALAR_REPLACE_H */