config.guess config.sub configure.in \
stamp-h.in install-sh README configure
-INSTALL_LIBS = libfirm.a libfirm.so
+INSTALL_LIBS = libfirm.a
GENFILES := stamp-h config.log config.cache
# config.status config.h.in $(srcdir)/stamp-h.in
* @see new_get_id_str(), id_from_str(), get_id_strlen()
*/
INLINE const char *get_id_str (ident *id);
-//INLINE const char *get_id_str (ident *id); /* No more supported */
#define id_to_str get_id_str
/**
-# Hey Emacs, this is a -*- makefile -*-
#
-# libFIRM Project
-#
-# $Id$
+# Project: libFIRM
+# File name: ir/ir/Makefile.in
+# Purpose:
+# Author: Boris Boesler, Till Riedel
+# Modified by:
+# Created:
+# CVS-ID: $Id$
+# Copyright: (c) 1999-2003 Universität Karlsruhe
+# Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
#
top_srcdir := @top_srcdir@
-/* -------------------------------------------------------------------
- * $Id$
- * -------------------------------------------------------------------
- * Auf- und Abbau der interprozeduralen Darstellung (Explizite
- * interprozedurale Abhängigkeiten).
- *
- * Erstellt: Hubert Schmid, 09.06.2002
- * ---------------------------------------------------------------- */
+/*
+ * Project: libFIRM
+ * File name: ir/common
+ * Purpose: Construction and removal of interprocedural representation
+ * (explicit interprocedural dependencies).
+ * Author: Hubert Schmid
+ * Modified by:
+ * Created: 09.06.2002
+ * CVS-ID: $Id$
+ * Copyright: (c) 2002-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
#include <string.h>
-/* -------------------------------------------------------------------
- * $Id$
- * -------------------------------------------------------------------
- * Auf- und Abbau der interprozeduralen Darstellung (Explizite
- * interprozedurale Abhaengigkeiten).
- *
- * Erstellt: Hubert Schmid, 09.06.2002
- * ---------------------------------------------------------------- */
+/*
+ * Project: libFIRM
+ * File name: ir/ir/ircgcons.h
+ * Purpose: Construction and removal of interprocedural representation
+ * (explicit interprocedural dependencies).
+ * Author: Hubert Schmid
+ * Modified by:
+ * Created: 09.06.2002
+ * CVS-ID: $Id$
+ * Copyright: (c) 2002-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
#ifndef _CONSTRUCT_H_
-/* -------------------------------------------------------------------
- * $Id$
- * -------------------------------------------------------------------
+/*
+ * Project: libFIRM
+ * File name: ir/ir/ircgopt.c
+ * Purpose: Removal of unreachable methods.
+ * Author: Hubert Schmid
+ * Modified by:
+ * Created: 09.06.2002
+ * CVS-ID: $Id$
+ * Copyright: (c) 2002-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
+
+/**
* Entfernen von nicht erreichbaren (aufrufbaren) Methoden. Die Menge
* der nicht erreichbaren Methoden wird aus der Abschätzung der
* Aufrufrelation bestimmt.
- *
- * Erstellt: Hubert Schmid, 09.06.2002
- * ---------------------------------------------------------------- */
+ */
#include "ircgopt.h"
-/* -------------------------------------------------------------------
- * $Id$
- * -------------------------------------------------------------------
+/*
+ * Project: libFIRM
+ * File name: ir/ir/ircgopt.h
+ * Purpose: Removal of unreachable methods.
+ * Author: Hubert Schmid
+ * Modified by:
+ * Created: 09.06.2002
+ * CVS-ID: $Id$
+ * Copyright: (c) 2002-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
+
+/**
* Entfernen von nicht erreichbaren (aufrufbaren) Methoden. Die Menge
- * der nicht erreichbaren Methoden wird aus der Abschaetzung der
+ * der nicht erreichbaren Methoden wird aus der Abschätzung der
* Aufrufrelation bestimmt.
- *
- * Erstellt: Hubert Schmid, 09.06.2002
- * ---------------------------------------------------------------- */
+ */
#ifndef _GC_IRGS_H_
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*
-* Authors: Martin Trapp, Christian Schaefer
-*
-* ircons.c: basic and more detailed irnode constructors
-* store, block and parameter administration.
-* Adapted to extended FIRM nodes (exceptions...) and commented
-* by Goetz Lindenmaier
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/ircons.c
+ * Purpose: Various irnode constructors. Automatic construction
+ * of SSA representation.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier, Boris Boesler
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
-/* $Id$ */
#ifdef HAVE_CONFIG_H
# include <config.h>
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
-
-/* $Id$ */
+/*
+ * Project: libFIRM
+ * File name: ir/ir/ircons.h
+ * Purpose: Various irnode constructors. Automatic construction
+ * of SSA representation.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier, Boris Boesler
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/**
@todo
/**
* @file ircons.h
*
+ * documentation no more supported since 2001
+ *
* ir node construction.
*
* @author Martin Trapp, Christian Schaefer, Goetz Lindenmaier
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*
-* Authors: Martin Trapp, Christian Schaefer
-*
-* irdump.h: dumping of an intermediate representation graph
-*/
-
-/* $Id$ */
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irdump.c
+ * Purpose: Write vcg representation of firm to file.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier, Hubert Schmidt
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
+
#ifdef HAVE_CONFIG_H
# include <config.h>
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irdump.h
+ * Purpose: Write vcg representation of firm to file.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier, Hubert Schmidt
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
+
/**
* @file irdump.h
* file dumped to.
*/
-/* $Id$ */
# ifndef _IRDUMP_H_
# define _IRDUMP_H_
/**
* The value of this string will be added to the file name before .vcg
*
- * @todo GL: A hack
+ * @todo GL: A hack -- add parameter to dumper function.
*/
extern char *dump_file_suffix;
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*
-* Authors: Christian Schaefer
-*
-* irflag --- optimization flags
-*/
-
-/* $Id$ */
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irflag.c
+ * Purpose: Flags to control optimizations.
+ * Author: Christian Schaefer, Goetz Lindenmaier
+ * Modified by:
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1999-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
+
#ifdef HAVE_CONFIG_H
# include <config.h>
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irflag.h
+ * Purpose: Flags to control optimizations.
+ * Author: Christian Schaefer, Goetz Lindenmaier
+ * Modified by:
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1999-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/**
* @file irflag.h
* @author Christian Schaefer
*/
-/* $Id$ */
-
#ifndef _IRFLAG_H_
#define _IRFLAG_H_
-
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*
-* Authors: Martin Trapp, Christian Schaefer
-*
-* irgmod: ir graph modification
-*/
-
-/* $Id$ */
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irgmod.h
+ * Purpose: Support for ir graph modification.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
#ifdef HAVE_CONFIG_H
# include <config.h>
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irgmod.h
+ * Purpose: Support for ir graph modification.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/**
*
* @author Martin Trapp, Christian Schaefer
*/
-/* $Id$ */
# ifndef _IRGMOD_H_
# define _IRGMOD_H_
-/* Coyright (C) 1998 - 2002 by Universitaet Karlsruhe
-* All rights reserved.
-*
-* Author: Christian Schaefer, Goetz Lindenmaier, Sebastian Felis
-*
-* Optimizations for a whole ir graph, i.e., a procedure.
-*/
-
-/* $Id$ */
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irgopt.c
+ * Purpose: Optimizations for a whole ir graph, i.e., a procedure.
+ * Author: Christian Schaefer, Goetz Lindenmaier
+ * Modified by: Sebastian Felis
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
+
#ifdef HAVE_CONFIG_H
# include <config.h>
-/* Copyright (C) 1998 - 2001 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irgopt.h
+ * Purpose: Optimizations for a whole ir graph, i.e., a procedure.
+ * Author: Christian Schaefer, Goetz Lindenmaier
+ * Modified by: Sebastian Felis
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/**
-* @file irgopt.h
-*
-* Optimizations for a whole ir graph, i.e., a procedure.
-*
-* @author Christian Schaefer, Goetz Lindenmaier
-*/
-
-/* $Id$ */
+ * @file irgopt.h
+ *
+ * Optimizations for a whole ir graph, i.e., a procedure.
+ *
+ * @author Christian Schaefer, Goetz Lindenmaier
+ */
# ifndef _IRGOPT_H_
# define _IRGOPT_H_
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*
-* Authors: Martin Trapp, Christian Schaefer
-*
-*
-*/
-
-/* $Id$ */
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irgraph.c
+ * Purpose: Entry point to the representation of procedure code.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
#ifdef HAVE_CONFIG_H
# include <config.h>
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irgraph.c
+ * Purpose: Entry point to the representation of procedure code.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/**
* @file irgraph.h
* @author Martin Trapp, Christian Schaefer
*/
-/* $Id$ */
#include "irop.h"
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irgraph.c
+ * Purpose: Entry point to the representation of procedure code -- internal header.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/**
* @file irgraph_t.h
* @author Martin Trapp, Christian Schaefer
*/
-/* $Id$ */
# ifndef _IRGRAPH_T_H_
# define _IRGRAPH_T_H_
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*
-* Author: Boris Boesler
-*
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irgwalk.c
+ * Purpose:
+ * Author: Boris Boesler
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1999-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
+
+/**
* traverse an ir graph
* - execute the pre function before recursion
* - execute the post function after recursion
*/
-/* $Id$ */
#ifdef HAVE_CONFIG_H
# include <config.h>
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irgwalk.h
+ * Purpose:
+ * Author: Boris Boesler
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1999-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
+
/**
* @file irgwalk.h
* graph before starting the walker.
*/
-/* $Id$ */
# ifndef _IRGWALK_H_
# define _IRGWALK_H_
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-** All rights reserved.
-**
-** Authors: Martin Trapp, Christian Schaefer
-**
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irmode.c
+ * Purpose: Data modes of operations.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier, Mathias Heil
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
-/* $Id$ */
#ifdef HAVE_CONFIG_H
# include <config.h>
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
- * All rights reserved.
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irmode.h
+ * Purpose: Data modes of operations.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier, Mathias Heil
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
*/
-/* $Id$ */
/**
* @file irmode.h
* UKA tech report 1999-44 for more information about modes.
*
*/
+
#ifndef _IRMODE_H_
#define _IRMODE_H_
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irmode_t.h
+ * Purpose: Data modes of operations -- private header.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier, Mathias Heil
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
-/* $Id$ */
/**
* @file irmode_t.h
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*
-* Authors: Martin Trapp, Christian Schaefer, Goetz Lindenmaier
-*
-*/
-
-/* $Id$ */
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irnode.c
+ * Purpose: Representation of an intermediate operation.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
#ifdef HAVE_CONFIG_H
# include <config.h>
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe 3 2002/02/28 13:33:52
- * All rights reserved.
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irnode.h
+ * Purpose: Representation of an intermediate operation.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
*/
-/* $Id$ */
-
# ifndef _IRNODE_H_
# define _IRNODE_H_
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irnode_t.h
+ * Purpose: Representation of an intermediate operation -- private header.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
+
/**
* @file irnode_t.h
* @author Martin Trapp, Christian Schaefer
*/
-/* $Id$ */
# ifndef _IRNODE_T_H_
# define _IRNODE_T_H_
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*
-* Authors: Christian Schaefer
-*
-*/
-
-/* $Id$ */
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irop.c
+ * Purpose: Representation of opcode of intermediate operation.
+ * Author: Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
#ifdef HAVE_CONFIG_H
# include <config.h>
/*
-* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+ * Project: libFIRM
+ * File name: ir/ir/irop.h
+ * Purpose: Representation of opcode of intermediate operation.
+ * Author: Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/**
* @file irop.h
* 1999-14
*/
-/* $Id$ */
-
# ifndef _IROP_H_
# define _IROP_H_
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*
-* Authors: Christian Schaefer, Goetz Lindenmaier
-*
-* iropt --- optimizations intertwined with IR construction.
-*/
-
-/* $Id$ */
+/*
+ * Project: libFIRM
+ * File name: ir/ir/iropt.c
+ * Purpose: iropt --- optimizations intertwined with IR construction.
+ * Author: Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
#ifdef HAVE_CONFIG_H
# include <config.h>
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/iropt.h
+ * Purpose: iropt --- optimizations of an ir node.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/**
* @file iropt.h
*
-* Declarations for optimizations intertwined with IR construction.
+* Declarations for optimizations of an ir node.
*
* @author Martin Trapp, Christian Schaefer
*/
-/* $Id$ */
# ifndef _IROPT_H_
# define _IROPT_H_
# include "irgraph.h"
# include "irflag.h"
-/* optimize_in_place (n) may change the contents of the ir_node itself,
- [e.g. by making it a Id-node], but does not change its identity.
- So it is safe to be called on already referenced nodes.
-
- optimize_in_place (n) returns a pointer to a node equivalent to `n'
- which should be used instead of `n'.
-
- optimize (n) may deallocate `n' and everything allocated after `n'! */
-
+/** If the expression referenced can be evaluated statically
+ * computed_value returns a tarval representing the result.
+ * Else returns tarval_bad. */
tarval *computed_value (ir_node *n);
+/** Applies all optimizations to n that are expressible as a pattern
+ * in Firm, i.e., they need not a walk of the graph.
+ * Returns a better node for n. Does not free n -- other nodes could
+ * reference n.
+ *
+ * An equivalent optimization is applied in the constructors defined in
+ * ircons.ch. There n is freed if a better node could be found.
+ */
ir_node *optimize_in_place (ir_node *n);
# endif /* _IROPT_H_ */
+/*
+ * Project: libFIRM
+ * File name: ir/ir/iropt_dbg.h
+ * Purpose: Debug makros used in iropt.
+ * Author: Goetz Lindenmaier
+ * Modified by:
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 2001-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/* This file contains makros that generate the calls to
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/iropt_t.h
+ * Purpose: iropt --- optimizations intertwined with IR construction -- private header.
+ * Author: Martin Trapp, Christian Schaefer
+ * Modified by: Goetz Lindenmaier
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/**
* @file iropt_t.h
* @author Martin Trapp, Christian Schaefer
*/
-/* $Id$ */
-
# ifndef _IROPT_T_H_
# define _IROPT_T_H_
-/* Copyright (C) 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*
-* Authors: Goetz Lindenmaier
-*
-* irprog.c: ir representation of a program
-*/
-
-/* $Id$ */
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irprog.c
+ * Purpose: Entry point to the representation of a whole program.
+ * Author: Goetz Lindenmaier
+ * Modified by:
+ * Created: 2000
+ * CVS-ID: $Id$
+ * Copyright: (c) 2000-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
#ifdef HAVE_CONFIG_H
# include <config.h>
-/* Copyright (C) 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irprog.h
+ * Purpose: Entry point to the representation of a whole program.
+ * Author: Goetz Lindenmaier
+ * Modified by:
+ * Created: 2000
+ * CVS-ID: $Id$
+ * Copyright: (c) 2000-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/**
* @file irprog.h
* - (An obstack containing global things, e.g., the above mentioned lists.)
*/
-/* $Id$ */
-
# ifndef _IRPROG_H_
# define _IRPROG_H_
-
-/* $Id$ */
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irprog_t.h
+ * Purpose: Entry point to the representation of a whole program 0-- private header.
+ * Author: Goetz Lindenmaier
+ * Modified by:
+ * Created: 2000
+ * CVS-ID: $Id$
+ * Copyright: (c) 2000-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/**
* @file irprog_t.h
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
- * All rights reserved.
- *
- * Authors: Christian Schaefer
- *
- *
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irvrfy.c
+ * Purpose: Check irnodes for correctness.
+ * Author: Christian Schaefer
+ * Modified by: Goetz Lindenmaier. Till Riedel
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
*/
-/* $Id$ */
-
#ifdef HAVE_CONFIG_H
# include <config.h>
#endif
-/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe
-* All rights reserved.
-*/
+/*
+ * Project: libFIRM
+ * File name: ir/ir/irvrfy.h
+ * Purpose: Check irnodes for correctness.
+ * Author: Christian Schaefer
+ * Modified by: Goetz Lindenmaier. Till Riedel
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
/**
* @file irvrfy.h
* @author Christian Schaefer
*/
-/* $Id$ */
-
# ifndef _IRVRFY_H_
# define _IRVRFY_H_
+/*
+ * Project: libFIRM
+ * File name: ir/ir/old_fctnames.h
+ * Purpose: Some makros supporting old function names.
+ * Author: Goetz Lindenmaier
+ * Modified by:
+ * Created:
+ * CVS-ID: $Id$
+ * Copyright: (c) 1998-2003 Universität Karlsruhe
+ * Licence: This file protected by GPL - GNU GENERAL PUBLIC LICENSE.
+ */
-/* Copyright (C) 2001 by Universitaet Karlsruhe
-* All rights reserved.
-*
-* Authors: Goetz Lindenmaier
-*
-* Some makros supporting old function names.
-*/
-
-/* $Id$ */
#ifndef __OLD_FCTNAMES_H__
#define __OLD_FCTNAMES_H__
#define tarval_P_from_entity(X) new_tarval_from_entity(X, mode_P_mach)
#define get_tarval_entity(X) tarval_to_entity(X)
+/* ident.h */ // @@@ Attention: still in ident.h
+//#define id_to_str get_id_str
+//#define id_to_strlen get_id_strlen
+
#endif