This is the mail archive of the gcc-patches@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]

Re: [PATCH, rtl-optimization]: Fix PR 51821, 64bit > 32bit conversion produces incorrect results with optimizations


> Yes, it is a complete solution. Tracking register liveness is
> different issue, and a register is indeed dead after instruction, if
> it has been clobbered by insn, or when marked unused.

My concern was liveness within the new sequence of instructions: suppose you 
have

  (set (reg:M x) (...))  REG_UNUSED (reg:M x)

and we "peephole" the instruction.  Is the live range of (reg:M x) properly 
extended within the new sequence of instructions?

> The problem my patch solves is the answer to the question "Is the
> choosen non-live temporary register untouched over the insn
> sequence?". The answer: "Yes, if it was not set or clobbered by any
> insn in the sequence".

Are you sure that you don't need to do this in addition to the existing test, 
instead of in lieu of the existing test?

-- 
Eric Botcazou


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