Convert DF_REF_INSN to a function for now

gcc/
2014-08-19  David Malcolm  <dmalcolm@redhat.com>

	* df-core.c (DF_REF_INSN): New, using a checked cast for now.
	* df.h (DF_REF_INSN): Convert from a macro to a function, so
	that we can return an rtx_insn *.

/
2014-08-19  David Malcolm  <dmalcolm@redhat.com>

	* rtx-classes-status.txt (TODO): Add DF_REF_INSN.

From-SVN: r214160
This commit is contained in:
David Malcolm 2014-08-19 15:18:42 +00:00 committed by David Malcolm
parent a231b8a5c5
commit 8020a4d5c5
5 changed files with 18 additions and 1 deletions

View file

@ -1,3 +1,7 @@
2014-08-19 David Malcolm <dmalcolm@redhat.com>
* rtx-classes-status.txt (TODO): Add DF_REF_INSN.
2014-08-19 Joost VandeVondele <vondele@gcc.gnu.org>
* MAINTAINERS (Write After Approval): Add myself.

View file

@ -1,3 +1,9 @@
2014-08-19 David Malcolm <dmalcolm@redhat.com>
* df-core.c (DF_REF_INSN): New, using a checked cast for now.
* df.h (DF_REF_INSN): Convert from a macro to a function, so
that we can return an rtx_insn *.
2014-08-19 Yaakov Selkowitz <yselkowi@redhat.com>
* config/i386/cygwin.h (LINK_SPEC): Pass --tsaware flag only

View file

@ -2502,3 +2502,9 @@ debug_df_chain (struct df_link *link)
df_chain_dump (link, stderr);
fputc ('\n', stderr);
}
rtx_insn *DF_REF_INSN (df_ref ref)
{
rtx insn = ref->base.insn_info->insn;
return safe_as_a <rtx_insn *> (insn);
}

View file

@ -649,7 +649,7 @@ struct df_d
: BLOCK_FOR_INSN (DF_REF_INSN (REF)))
#define DF_REF_BBNO(REF) (DF_REF_BB (REF)->index)
#define DF_REF_INSN_INFO(REF) ((REF)->base.insn_info)
#define DF_REF_INSN(REF) ((REF)->base.insn_info->insn)
extern rtx_insn *DF_REF_INSN (df_ref ref);
#define DF_REF_INSN_UID(REF) (INSN_UID (DF_REF_INSN(REF)))
#define DF_REF_CLASS(REF) ((REF)->base.cl)
#define DF_REF_TYPE(REF) ((REF)->base.type)

View file

@ -14,5 +14,6 @@ Phase 6: use extra rtx_def subclasses: TODO
TODO: "Scaffolding" to be removed
=================================
* DF_REF_INSN
* SET_BB_HEAD, SET_BB_END, SET_BB_HEADER, SET_BB_FOOTER
* SET_NEXT_INSN, SET_PREV_INSN