diff options
author | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-01-17 16:21:49 +0000 |
---|---|---|
committer | jakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4> | 2012-01-17 16:21:49 +0000 |
commit | 2e851bb8acd6ed85d5f9769a4d522dd0acca046a (patch) | |
tree | 063806ffabfecffdb1aa308a9a26013274f0668b /gcc/hard-reg-set.h | |
parent | 1f7566dab3f20e08a75692c5d1317eb8fb79cdce (diff) | |
download | gcc-2e851bb8acd6ed85d5f9769a4d522dd0acca046a.tar.gz |
PR bootstrap/51872
* hard-reg-set.h (struct hard_reg_set_container): New type.
* target.h (struct hard_reg_set_container): Forward declare.
* target.def (set_up_by_prologue): New target hook.
* doc/tm.texi.in (TARGET_SET_UP_BY_PROLOGUE): Document it.
* doc/tm.texi: Regenerated.
* function.c (thread_prologue_and_epilogue_insns): Change
set_up_by_prologue HARD_REG_SET into struct hard_reg_set_container.
Call targetm.set_up_by_prologue on it.
* config/rs6000/rs6000.c (rs6000_set_up_by_prologue): New function.
(TARGET_SET_UP_BY_PROLOGUE): Redefine to it.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@183254 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'gcc/hard-reg-set.h')
-rw-r--r-- | gcc/hard-reg-set.h | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/gcc/hard-reg-set.h b/gcc/hard-reg-set.h index 9823a5b3441..ecdad174c13 100644 --- a/gcc/hard-reg-set.h +++ b/gcc/hard-reg-set.h @@ -1,6 +1,6 @@ /* Sets (bit vectors) of hard registers, and operations on them. Copyright (C) 1987, 1992, 1994, 2000, 2003, 2004, 2005, 2007, 2008, 2009, - 2010 Free Software Foundation, Inc. + 2010, 2012 Free Software Foundation, Inc. This file is part of GCC @@ -54,6 +54,14 @@ typedef HARD_REG_ELT_TYPE HARD_REG_SET[HARD_REG_SET_LONGS]; #endif +/* HARD_REG_SET wrapped into a structure, to make it possible to + use HARD_REG_SET even in APIs that should not include + hard-reg-set.h. */ +struct hard_reg_set_container +{ + HARD_REG_SET set; +}; + /* HARD_CONST is used to cast a constant to the appropriate type for use with a HARD_REG_SET. */ |