Blame SOURCES/oprofile-ppc64le.patch

6a578a
commit a265c549bff149f5e9064dca7d06b6689fb3d64e
6a578a
Author: Maynard Johnson <maynardj@us.ibm.com>
6a578a
Date:   Thu Jan 9 15:47:09 2014 -0600
6a578a
6a578a
    Enable oprofile for new ppc64le architecture
6a578a
    
6a578a
    Signed-off-by: Maynard Johnson <maynardj@us.ibm.com>
6a578a
6a578a
diff --git a/configure.ac b/configure.ac
6a578a
index 457145a..1e3a65f 100644
6a578a
--- a/configure.ac
6a578a
+++ b/configure.ac
6a578a
@@ -184,7 +184,7 @@ AC_DEFINE_UNQUOTED(HAVE_PERF_EVENTS, $HAVE_PERF_EVENTS, [Kernel support for perf
6a578a
 AC_CANONICAL_HOST
6a578a
 if test "$HAVE_PERF_EVENTS" = "1"; then
6a578a
 	PFM_LIB=
6a578a
-	if test "$host_cpu" = "powerpc64"; then
6a578a
+        if test "$host_cpu" = "powerpc64le" -o "$host_cpu" = "powerpc64"; then
6a578a
 		AC_CHECK_HEADER(perfmon/pfmlib.h,,[AC_MSG_ERROR([pfmlib.h not found; usually provided in papi devel package])])
6a578a
 		AC_CHECK_LIB(pfm,pfm_get_os_event_encoding, HAVE_LIBPFM3='0'; HAVE_LIBPFM='1', [
6a578a
 			AC_CHECK_LIB(pfm, pfm_get_event_name, HAVE_LIBPFM3='1'; HAVE_LIBPFM='1',
6a578a
diff --git a/libop/op_cpu_type.c b/libop/op_cpu_type.c
6a578a
index 7d5262c..15c71ab 100644
6a578a
--- a/libop/op_cpu_type.c
6a578a
+++ b/libop/op_cpu_type.c
6a578a
@@ -621,7 +621,8 @@ static op_cpu __get_cpu_type_alt_method(void)
6a578a
 	    fnmatch("i?86", uname_info.machine, 0) == 0) {
6a578a
 		return _get_x86_64_cpu_type();
6a578a
 	}
6a578a
-	if (strncmp(uname_info.machine, "ppc64", 5) == 0) {
6a578a
+	if ((strncmp(uname_info.machine, "ppc64", 5) == 0) ||
6a578a
+			(strncmp(uname_info.machine, "ppc64le", 7) == 0)) {
6a578a
 		return _get_ppc64_cpu_type();
6a578a
 	}
6a578a
 	if (strncmp(uname_info.machine, "arm", 3) == 0 ||
6a578a
diff --git a/libutil++/bfd_support.cpp b/libutil++/bfd_support.cpp
6a578a
index 67edd09..4b744f8 100644
6a578a
--- a/libutil++/bfd_support.cpp
6a578a
+++ b/libutil++/bfd_support.cpp
6a578a
@@ -634,9 +634,7 @@ void bfd_info::translate_debuginfo_syms(asymbol ** dbg_syms, long nr_dbg_syms)
6a578a
 bool bfd_info::get_synth_symbols()
6a578a
 {
6a578a
 	extern const bfd_target bfd_elf64_powerpc_vec;
6a578a
-	extern const bfd_target bfd_elf64_powerpcle_vec;
6a578a
-	bool is_elf64_powerpc_target = (abfd->xvec == &bfd_elf64_powerpc_vec)
6a578a
-		|| (abfd->xvec == &bfd_elf64_powerpcle_vec);
6a578a
+	bool is_elf64_powerpc_target = (abfd->xvec == &bfd_elf64_powerpc_vec);
6a578a
 
6a578a
 	if (!is_elf64_powerpc_target)
6a578a
 		return false;