4 * Copyright (C) 1995-2007 University of Karlsruhe. All right reserved.
6 * This file is part of libFirm.
8 * This file may be distributed and/or modified under the terms of the
9 * GNU General Public License version 2 as published by the Free Software
10 * Foundation and appearing in the file LICENSE.GPL included in the
11 * packaging of this file.
13 * Licensees holding valid libFirm Professional Edition licenses may use
14 * this file in accordance with the libFirm Commercial License.
15 * Agreement provided with the Software.
17 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
18 * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR
24 * @brief Manage context-sensitivity markers
26 * @date Sat Nov 13 19:35:27 CET 2004
36 pto_ctx: Manage context-sensitivity markers
40 # include "pto_debug.h"
41 # include "pto_comp.h"
45 /* # include "xmalloc.h" */
49 /* Local Data Types: */
51 /* Local Variables: */
52 static ctx_info_t *curr_ctx = NULL;
54 /* Local Prototypes: */
56 /* ===================================================
58 =================================================== */
61 /* ===================================================
62 Exported Implementation:
63 =================================================== */
64 /* Find the appropriate ctx for the given call and the given graph */
65 /* ctx_info_t *find_ctx (ir_node *call, graph_info_t *ginfo, ctx_info_t *curr_ctx) */
66 int find_ctx_idx (ir_node *call, graph_info_t *ginfo, ctx_info_t *curr_ctx)
69 const int n_ctxs = ginfo->n_ctxs;
71 for (i = 0; i < n_ctxs; i ++) {
72 ctx_info_t *ctx = ginfo->ctxs [i];
74 if ((ctx->enc == curr_ctx) && (ctx->call == call)) {
80 assert (0 && "CTX not found");
85 /* Get the current ctx */
86 ctx_info_t *get_curr_ctx (void)
91 /* Set the current ctx to the given ctx. Return the old value */
92 ctx_info_t *set_curr_ctx (ctx_info_t *ctx)
94 ctx_info_t *old_ctx = curr_ctx;
104 Revision 1.6 2005/12/05 12:19:54 beck
105 added missing include <assert.h> (not anymore included in libFirm)
107 Revision 1.5 2005/01/14 13:37:55 liekweg
110 Revision 1.4 2004/12/02 16:17:51 beck
111 fixed config.h include
113 Revision 1.3 2004/11/24 14:53:55 liekweg
116 Revision 1.2 2004/11/20 21:21:35 liekweg
119 Revision 1.1 2004/11/18 16:37:34 liekweg