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]

Re: wrong assertion in caller-save.c


On 01/11/14 03:04, Richard Sandiford wrote:
Jeff Law <law@redhat.com> writes:
On 01/10/14 14:44, Eric Botcazou wrote:
In my backend movdi pattern has unfortunately code '0' (depends on pattern
declaration order). When gcc tried to determine if my DI regs can be saved
and restore as 'caller saves' (in caller-save.c::init_caller_save()) it
failed on this wrong assertion.

I'd arrange for avoiding code 0 instead because this disables the cache.
Agreed, but the assert in caller-save is still wrong and ought to be fixed.

FWIW, it was fixed in 4.8 and later by making CODE_FOR_nothing be 0
and starting the real instructions at 1.
Funny you should mention that. My recollection was that CODE_FOR_nothing was -1, but when I went looking in response to this issue I found it was zero...

Jeff


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