00001 /* Exported functions from emit-rtl.c 00002 Copyright (C) 2004 Free Software Foundation, Inc. 00003 00004 This file is part of GCC. 00005 00006 GCC is free software; you can redistribute it and/or modify it under 00007 the terms of the GNU General Public License as published by the Free 00008 Software Foundation; either version 2, or (at your option) any later 00009 version. 00010 00011 GCC is distributed in the hope that it will be useful, but WITHOUT ANY 00012 WARRANTY; without even the implied warranty of MERCHANTABILITY or 00013 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License 00014 for more details. 00015 00016 You should have received a copy of the GNU General Public License 00017 along with GCC; see the file COPYING. If not, write to the Free 00018 Software Foundation, 51 Franklin Street, Fifth Floor, Boston, MA 00019 02110-1301, USA. */ 00020 00021 #ifndef GCC_EMIT_RTL_H 00022 #define GCC_EMIT_RTL_H 00023 00024 /* Set the alias set of MEM to SET. */ 00025 extern void set_mem_alias_set (rtx, HOST_WIDE_INT); 00026 00027 /* Set the alignment of MEM to ALIGN bits. */ 00028 extern void set_mem_align (rtx, unsigned int); 00029 00030 /* Set the expr for MEM to EXPR. */ 00031 extern void set_mem_expr (rtx, tree); 00032 00033 /* Set the offset for MEM to OFFSET. */ 00034 extern void set_mem_offset (rtx, rtx); 00035 00036 /* Set the size for MEM to SIZE. */ 00037 extern void set_mem_size (rtx, rtx); 00038 00039 /* Return a memory reference like MEMREF, but with its address changed to 00040 ADDR. The caller is asserting that the actual piece of memory pointed 00041 to is the same, just the form of the address is being changed, such as 00042 by putting something into a register. */ 00043 extern rtx replace_equiv_address (rtx, rtx); 00044 00045 /* Likewise, but the reference is not required to be valid. */ 00046 extern rtx replace_equiv_address_nv (rtx, rtx); 00047 00048 #endif /* GCC_EMIT_RTL_H */
1.5.6