< prev index next >
src/hotspot/os/aix/porting_aix.cpp
Print this page
rev 53569 : 8218136: minor hotspot adjustments for xlclang++ from xlc16 on AIX
*** 32,42 ****
--- 32,50 ----
#include "runtime/os.hpp"
#include "runtime/thread.hpp"
#include "utilities/align.hpp"
#include "utilities/debug.hpp"
+ // distinguish old xlc and xlclang++, where
+ // <ibmdemangle.h> is suggested but not found
+ #if defined(__clang__)
+ #define DISABLE_DEMANGLE
+ // #include <ibmdemangle.h>
+ #else
#include <demangle.h>
+ #endif
+
#include <sys/debug.h>
#include <pthread.h>
#include <ucontext.h>
//////////////////////////////////
*** 235,244 ****
--- 243,253 ----
i++;
}
p_name[i] = '\0';
// If it is a C++ name, try and demangle it using the Demangle interface (see demangle.h).
+ #ifndef DISABLE_DEMANGLE
if (demangle) {
char* rest;
Name* const name = Demangle(p_name, rest);
if (name) {
const char* const demangled_name = name->Text();
*** 247,256 ****
--- 256,266 ----
p_name[namelen-1] = '\0';
}
delete name;
}
}
+ #endif
} else {
strncpy(p_name, "<nameless function>", namelen-1);
p_name[namelen-1] = '\0';
}
}
< prev index next >