This is the mail archive of the 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:[darwin] fix load of a misaligned double word

On Feb 24, 2004, at 1:07 AM, Ulrich Weigand wrote:

Geoff Keating wrote:

Disallowing both reverts back to gcc-3.3 behaviour, which loses
performance on certain code.  Allowing both means that "offset & 3"
gpr loads/stores must be fixed some other way.  Now this is where I
start to handwave.  What should be done about "some other way"?
Hartmut's reload patterns, perhaps with tighter reg constraints?
Please give us your thoughts on this.

We should allow them. "Some other way" is to use constraints.

However, constraints are only evaluated for insns already existing before reload. The insns reload itself generates are not checked against any constraints -- it is assumed that any move-type insn (with legitimate operands) will be valid, *or else* there will be a secondary reload to perform the move.

Perhaps the insns that reload itself generates should be checked against constraints (or perhaps that's what a secondary reload is, I don't know).


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