This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

edge profiling code clobbers regs


Hello Jan,

on S/390 I would like to enable memcmp code which needs condition codes to be live
over bb boundaries. Unfortunately the edge profiler doesn't care about liveness of registers.
On S/390 it is especially important that he does because we have no add instruction which
doesn't clobber the condition code, hence profiling code always clobbers cc. 

I've tried to simply replace insert_insn_on_edge with safe_insert_insn_on_edge in rtl_gen_edge_profiler 
but unfortunately no liveness data have been computed at this point. I found that for the newer value 
profiler the liveness analysis is done in rtl_find_values_to_profile but didn't found a clever place to 
do so for the edge profiler.

Jan, could you please have a look at this or give me a hint how to fix it on my own?

Bye,

-Andreas-


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]