GCC Middle and Back End API Reference
|
#include "config.h"
#include "system.h"
#include "coretypes.h"
#include "tm.h"
#include "diagnostic-core.h"
#include "rtl.h"
#include "ggc.h"
#include "gt-lists.h"
Functions | |
static void | free_list (rtx *, rtx *) |
static void | free_list () |
static rtx * | find_list_elem () |
static void | remove_list_node () |
rtx | remove_list_elem () |
rtx | alloc_INSN_LIST () |
rtx | alloc_EXPR_LIST () |
void | free_EXPR_LIST_list () |
void | free_INSN_LIST_list () |
rtx | copy_INSN_LIST () |
rtx | concat_INSN_LIST () |
void | free_EXPR_LIST_node () |
void | free_INSN_LIST_node () |
void | remove_free_INSN_LIST_elem () |
rtx | remove_free_INSN_LIST_node () |
rtx | remove_free_EXPR_LIST_node () |
Variables | |
static rtx | unused_insn_list |
static rtx | unused_expr_list |
rtx alloc_EXPR_LIST | ( | ) |
This call is used in place of a gen_rtx_EXPR_LIST. If there is a cached node available, we'll use it, otherwise a call to gen_rtx_EXPR_LIST is made.
Referenced by find_constant_src().
rtx alloc_INSN_LIST | ( | ) |
This call is used in place of a gen_rtx_INSN_LIST. If there is a cached node available, we'll use it, otherwise a call to gen_rtx_INSN_LIST is made.
Referenced by find_constant_src(), free_INSN_LIST_list(), and one_code_hoisting_pass().
rtx concat_INSN_LIST | ( | ) |
Duplicate the INSN_LIST elements of COPY and prepend them to OLD.
References unused_expr_list, and XEXP.
rtx copy_INSN_LIST | ( | ) |
Make a copy of the INSN_LIST list LINK and return it.
|
static |
Find corresponding to ELEM node in the list pointed to by LISTP. This node must exist in the list. Returns pointer to that node.
References XEXP.
void free_EXPR_LIST_list | ( | ) |
This function will free up an entire list of EXPR_LIST nodes.
void free_EXPR_LIST_node | ( | ) |
This function will free up an individual EXPR_LIST node.
References free_INSN_LIST_node(), and remove_list_elem().
Referenced by df_word_lr_top_dump().
void free_INSN_LIST_list | ( | ) |
This function will free up an entire list of INSN_LIST nodes.
References alloc_INSN_LIST(), NULL, and XEXP.
void free_INSN_LIST_node | ( | ) |
This function will free up an individual INSN_LIST node.
References remove_list_node(), and XEXP.
Referenced by free_EXPR_LIST_node().
List management for the GCC expander. Copyright (C) 1987-2013 Free Software Foundation, Inc.
This file is part of GCC.
GCC is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version.
GCC is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with GCC; see the file COPYING3. If not see http://www.gnu.org/licenses/.
|
static |
This function will free an entire list of either EXPR_LIST, INSN_LIST or DEPS_LIST nodes. This is to be used only on lists that consist exclusively of nodes of one type only. This is only called by free_EXPR_LIST_list, free_INSN_LIST_list and free_DEPS_LIST_list.
rtx remove_free_EXPR_LIST_node | ( | ) |
Remove and free the first node in the EXPR_LIST pointed to by LISTP.
void remove_free_INSN_LIST_elem | ( | ) |
Remove and free corresponding to ELEM node in the INSN_LIST pointed to by LISTP.
References XEXP.
rtx remove_free_INSN_LIST_node | ( | ) |
Remove and free the first node in the INSN_LIST pointed to by LISTP.
rtx remove_list_elem | ( | ) |
Removes corresponding to ELEM node from the list pointed to by LISTP. Returns that node.
Referenced by free_EXPR_LIST_node().
|
static |
Remove the node pointed to by LISTP from the list.
Referenced by free_INSN_LIST_node().
|
static |
An EXPR_LIST containing all EXPR_LISTs allocated but currently unused.
Referenced by concat_INSN_LIST().
|
static |
Functions for maintaining cache-able lists of EXPR_LIST and INSN_LISTs. An INSN_LIST containing all INSN_LISTs allocated but currently unused.