This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc 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] powerpc: fix ifunc-sel.h with GCC 6


On 07/24/2016 10:14 PM, Benjamin Herrenschmidt wrote:
On Thu, 2016-07-21 at 17:23 +0200, Andreas Schwab wrote:
Florian Weimer <fweimer@redhat.com> writes:


Yes, I figured that out in the meantime.  Is “bcl 20,31” always
used for
that?  The second opcode argument doesn't really matter, after
all.

It's what gcc uses.  I don't know if there is any deeper meaning
behind that particular encoding.

There is. It tells the CPU not to push the address onto the link
stack. Without this, you end up with an out of sync return stack
and so your subsequent real returns get mispredicted.

Yes, a colleague told me that as well, thanks. Do you know if only this specific encoding has this property, or are there many equivalent encodings which have the same effect?

Thanks,
Florian


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