On 20 July 2006 07:03, Wolfgang Mües wrote: > Hello Rask, > > On Wednesday 19 July 2006 13:24, Rask Ingemann Lambertsen wrote: >> I've spotted a function named emit_set_insn() in arm.c. It might be >> the problem, because it uses gen_rtx_SET() directly. > > But it's not the only function which uses gen_rtx_SET. There are also > much places with > >> emit_constant_insn (cond, >> gen_rtx_SET (VOIDmode, target, source)); > > Isn't it better to replace gen_rtx_SET? >
Is there any generic advice available as to when and why one should use emit_insn (gen_rtx_SET (....)) as opposed to emit_move_insn (...)? (There are other similar pairs of functions with seemingly overlapping functionality that I find equally confusing. For instance, I *think* that you should only use gen_rtx_REG when you want to create a new pseudo, and that in the general case of wanting an rtx that refers to an existing pseudo or a hard reg you're supposed to use gen_reg_rtx which takes care of sharing and everything for you... but I haven't seen any solid documentation that backs up my hypothesis.) cheers, DaveK -- Can't think of a witty .sigline today....