summaryrefslogtreecommitdiff
path: root/gcc/rtl.h
diff options
context:
space:
mode:
authorrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2012-03-06 19:22:10 +0000
committerrsandifo <rsandifo@138bc75d-0d04-0410-961f-82ee72b054a4>2012-03-06 19:22:10 +0000
commit7d7b0bace968cfd3544f86e79b164a3160c36a1f (patch)
tree06d59a5aff1f23174b6809d59da5b41885c1f9dd /gcc/rtl.h
parent943b78f0ba49f7d65ffac9b625780c027a940956 (diff)
downloadgcc-7d7b0bace968cfd3544f86e79b164a3160c36a1f.tar.gz
gcc/
PR middle-end/52372 * rtl.h (pc_rtx, ret_rtx, simple_return_rtx, cc0_rtx): Redefine as variables. (GR_PC, GR_CC0, GR_RETURN, GR_SIMPLE_RETURN): Delete. * emit-rtl.c (pc_rtx, ret_rtx, simple_return_rtx, cc0_rtx): New variables. (init_emit_regs): Move associated initialization to... (init_emit_once): ...here. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@185013 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/rtl.h')
-rw-r--r--gcc/rtl.h15
1 files changed, 5 insertions, 10 deletions
diff --git a/gcc/rtl.h b/gcc/rtl.h
index b1b681be568..89c1be85424 100644
--- a/gcc/rtl.h
+++ b/gcc/rtl.h
@@ -2089,6 +2089,11 @@ extern GTY(()) rtx const_tiny_rtx[4][(int) MAX_MACHINE_MODE];
#define CONST2_RTX(MODE) (const_tiny_rtx[2][(int) (MODE)])
#define CONSTM1_RTX(MODE) (const_tiny_rtx[3][(int) (MODE)])
+extern rtx pc_rtx;
+extern rtx cc0_rtx;
+extern rtx ret_rtx;
+extern rtx simple_return_rtx;
+
/* If HARD_FRAME_POINTER_REGNUM is defined, then a special dummy reg
is used to represent the frame pointer. This is because the
hard frame pointer and the automatic variables are separated by an amount
@@ -2112,10 +2117,6 @@ extern GTY(()) rtx const_tiny_rtx[4][(int) MAX_MACHINE_MODE];
/* Index labels for global_rtl. */
enum global_rtl_index
{
- GR_PC,
- GR_CC0,
- GR_RETURN,
- GR_SIMPLE_RETURN,
GR_STACK_POINTER,
GR_FRAME_POINTER,
/* For register elimination to work properly these hard_frame_pointer_rtx,
@@ -2208,12 +2209,6 @@ extern struct target_rtl *this_target_rtl;
#define mode_mem_attrs \
(this_target_rtl->x_mode_mem_attrs)
-/* Standard pieces of rtx, to be substituted directly into things. */
-#define pc_rtx (global_rtl[GR_PC])
-#define ret_rtx (global_rtl[GR_RETURN])
-#define simple_return_rtx (global_rtl[GR_SIMPLE_RETURN])
-#define cc0_rtx (global_rtl[GR_CC0])
-
/* All references to certain hard regs, except those created
by allocating pseudo regs into them (when that's possible),
go through these unique rtx objects. */