X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Fopt%2Fopt_polymorphy.h;h=3615d5c839b7f4dd4aaa293af895c4030ebe2c36;hb=c7dc950ac0cdd7d24acffb798b5867d0db5dd7c8;hp=8ba92c03f9b4bf346dc62d82e345b0c175b391c3;hpb=8eb0a1256d88d68e762c1f087bffadca68dc5c12;p=libfirm diff --git a/ir/opt/opt_polymorphy.h b/ir/opt/opt_polymorphy.h index 8ba92c03f..3615d5c83 100644 --- a/ir/opt/opt_polymorphy.h +++ b/ir/opt/opt_polymorphy.h @@ -1,27 +1,42 @@ /* - * Project: libFIRM - * File name: ir/opt/opt_polymorphy.h - * Purpose: Optimize polymorphic Sel and Load nodes. - * Author: - * Created: - * CVS-ID: $Id$ - * Copyright: (c) 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. */ -/** @file - * +/** + * @file + * @brief Optimize polymorphic Sel and Load nodes. + * @author Goetz Lindenmaier, Michael Beck + * @version $Id$ + * @summary * This file subsumes optimization code from cgana. */ +#ifndef FIRM_OPT_OPT_POLYMORPHY_H +#define FIRM_OPT_OPT_POLYMORPHY_H -#ifndef _OPT_POLYMORPHY_H_ -#define _OPT_POLYMORPHY_H_ - -#include "irnode.h" +#include "firm_types.h" /** * Transform Sel(Alloc)[method] - * to SymC[method] + * to SymC[method] under the following conditions: + * + * - opt_dyn_meth_dispatch must be set + * - the method is not overwritten OR + * - the dynamic type is known */ ir_node *transform_node_Sel(ir_node *node); @@ -35,4 +50,4 @@ ir_node *transform_node_Sel(ir_node *node); */ ir_node *transform_node_Load(ir_node *n); -#endif /* _OPT_POLYMORPHY_H_ */ +#endif /* FIRM_OPT_OPT_POLYMORPHY_H */