On 03/13/2017 02:07 PM, Richard Biener wrote: > No, that can't happen. I said that for example for > > struct S { ... } s; > foo (s); > > pass_by_reference may be true but on gimple you see a struct s as > actual argument. I'm not sure > what chkp_find_bounds does to 's' in this case. Like if floats are > passed by reference you might > see a REAL_CST passed to chkp_find_bounds but in reality it will get a > pointer (with bounds > according to the argument slot that was used).
Currently constants have invalid bounds assigned. Thus I guess it can't cause a trouble when such constant is used as a pointer. Anyhow, the discrepancy should be handled better. Last question related to the patch. May I at least install the part which adds {COMPLEX,VECTOR}_CSTs handling as it can happen with -mabi=ms (where formal and actual args do match)? Or using -mabi=ms + CHKP does not make sense at all? Martin