On Tue, 2014-08-12 at 15:21 -0600, Jeff Law wrote: > On 08/06/14 11:19, David Malcolm wrote: > > For now, convert into VINSN_INSN_RTX a pair of functions. We will > > eventually change them back to a macro once the relevant field is of type > > rtx_insn *. > > > > gcc/ > > * sel-sched-ir.h (VINSN_INSN_RTX): struct vinsn_def's "insn_rtx" > > field will eventually be an rtx_insn *. To help with transition, > > for now, convert from an access macro into a pair of functions: > > VINSN_INSN_RTX, returning an rtx_insn *, and... > > (SET_VINSN_INSN_RTX): New function, for use where VINSN_INSN_RTX > > is used as an lvalue. > > > > * sel-sched-ir.c (vinsn_init): Replace VINSN_INSN_RTX with > > SET_VINSN_INSN_RTX where it's used as an lvalue. > > (VINSN_INSN_RTX): New function. > > (SET_VINSN_INSN_RTX): New function. > > > > / > > * rtx-classes-status.txt: Add SET_VINSN_INSN_RTX. > OK. Thanks. Fixed up the as_a_nullable to safe_as_a, and committed to trunk as r214165, having verified bootstrap®rtest on x86_64-unknown-linux-gnu (Fedora 20) albeit in combination with patches 9-29 [1], and verified that it builds standalone with 9 targets. Am attaching what I committed. FWIW these functions becomes a macro again in patch #174.