X-Git-Url: http://nsz.repo.hu/git/?a=blobdiff_plain;f=ir%2Ftr%2Fmangle.h;h=d8e2b427ab29f3902f088b58eda3d1d150748438;hb=ec68b2aaadb9504d101e6cbc4a58c69f3897f489;hp=c1f1b3320184adc8b742caf1d13046b0d6d5d073;hpb=efbeaff549fcc6015da255ed4d453a95937ff0fd;p=libfirm diff --git a/ir/tr/mangle.h b/ir/tr/mangle.h index c1f1b3320..d8e2b427a 100644 --- a/ir/tr/mangle.h +++ b/ir/tr/mangle.h @@ -1,16 +1,41 @@ -/* Copyright (C) 1998 - 2000 by Universitaet Karlsruhe -** All rights reserved. -** -** Authors: Martin Trapp, Christian Schaefer -** +/* + * Project: libFIRM + * File name: ir/tr/mangle.h + * Purpose: Methods to manipulate names. + * 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 mangle.h +* +* FIRM name mangling -- methods to manipulate names. +* +* @author Martin Trapp, Christian Schaefer */ +#ifndef _MANGLE_H_ +#define _MANGLE_H_ + # include "ident.h" # include "entity.h" -# include "type.h" - -void init_mangle (void); +/** initializes the name mangling code */ +void firm_init_mangle (void); +/** Computes a definite name for this entity by concatenating + the name of the owner type and the name of the entity with + a separating "_". */ ident *mangle_entity (entity *ent); -ident *mangle_type (type *type); + +/** mangle underscore: Returns a new ident that represents first_scnd. */ +ident *mangle_u (ident *first, ident* scnd); + +/** mangle: Returns a new ident that represents firstscnd. */ +ident *mangle (ident *first, ident* scnd); + +#endif /* _MANGLE_H_ */