This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
libatomic IFUNC question (arm & libat_have_strexbhd)
- From: Steve Ellcey <sellcey at cavium dot com>
- To: gcc at gcc dot gnu dot org
- Date: Mon, 5 Jun 2017 15:32:07 -0700
- Subject: libatomic IFUNC question (arm & libat_have_strexbhd)
- Authentication-results: sourceware.org; auth=none
- Reply-to: sellcey at cavium dot com
I have a question about the use of IFUNCs in libatomic. I was looking at the
arm implementation and in gcc/libatomic/config/linux/arm/host-config.h I see:
extern bool libat_have_strexbhd HIDDEN;
# define IFUNC_COND_1 libat_have_strexbhd
I also see that gcc/libatomic/config/linux/arm/init.c has:
bool libat_have_strexbhd;
static void __attribute__((constructor))
init_cpu_revision (void)
{
}
What I don't see is any place that libat_have_strexbhd would ever get
set. What am I missing here? init_cpu_revision is going to get called
when libatomic is first loaded since it is a constructor but it doesn't
seem to do anything and it isn't going to set libat_have_strexbhd as far
as I can see.
Steve Ellcey
sellcey@cavium.com