[Top] [All Lists]

Re: [patch] fix profiling in glibc for Linux/MIPS

Subject: Re: [patch] fix profiling in glibc for Linux/MIPS
From: Thiemo Seufer <>
Date: Fri, 27 Jul 2001 02:48:20 +0200
In-reply-to: <>
User-agent: Mutt/1.3.18i
Daniel Jacobowitz wrote:
> _mcount was doing awful things to its caller's stack frame.

Maybe I'm missing something, but both the old and the new code
add 8 byte more to sp than they subtracted before. How is this
supposed to work?

> I think this is close enough; it only adds
> one instruction.  Is this OK?

Why do you save and restore $6, $7, seemingly without using them?

> Do I need a "nop" after the subu?

It works here since it is expanded in an

        addiu $29,$29,-40

which is executed in one cycle. The usual suspects for hazards
to be NOPed are load/store insns and branches.

> +        "sw $31,20($29);" \
>          "move $5,$31;" \
>          "jal __mcount;" \
>          "move $4,$1;" \
Some stylistic issue: In ".set noreorder" assembly it helps to
indent the insns in a branch delay slot by one blank to avoid
confusion about their non-sequential nature.


<Prev in Thread] Current Thread [Next in Thread>