var_args for rs6000 backend

Yao qi qiyaobit@hotmail.com
Fri Sep 9 06:01:00 GMT 2005


>I don't know where the DFP arguments are passed.  If they are passed
>in the floating point registers, then is the fix as simple as handling
>the new modes like SFmode and DFmode in rs6000_gimplify_va_arg?

Yes, new modes has been added correspondingly.
> >
> > However, I am not sure about the following things in rtl file I dumped,
> > ;; End of basic block 0, registers live:
> > 1 [1] 3 [3] 31 [31] 33 [1] 34 [2] 35 [3] 36 [4] 37 [5] 38 [6] 39 [7]
> > 40  [8] 67 [ap] 113 [sfp]
> >
> > I have searched it in Charpter 10 RTL representation in GCC internals 
>for
> > GCC 4.0, but I can not find anything to describe it.  I guess it is a
> > description
> > of register usage.  1 means r1 ,31 means r31, 33 means f2, am I right?
>
>Yes.  The strings in square brackets are the name of the registers.
>This is unfortunately unhelpful for the PowerPC, where the register
>names are just numbers.  You can try using -mregnames to get better
>strings.  Or just look at alt_reg_names in rs6000.c for a more useful
>mapping from register number to register name.

Yes, alt_reg_names is much more clear than my imagination.
>
>dump_file is a global variable.  It will be set if debugging is
>enabled for whatever pass is executing at the moment.  Using -da turns
>on debugging for all RTL passes.
>
>Ian


Best Regards
----------------
Yao Qi
Bejing Institute of Technology

_________________________________________________________________
FREE pop-up blocking with the new MSN Toolbar - get it now! 
http://toolbar.msn.click-url.com/go/onm00200415ave/direct/01/



More information about the Gcc mailing list