equal
deleted
inserted
replaced
1437 } |
1437 } |
1438 return NULL; |
1438 return NULL; |
1439 } |
1439 } |
1440 |
1440 |
1441 bool os::dll_address_to_function_name(address addr, char *buf, |
1441 bool os::dll_address_to_function_name(address addr, char *buf, |
1442 int buflen, int *offset) { |
1442 int buflen, int *offset, |
|
1443 bool demangle) { |
1443 if (offset) { |
1444 if (offset) { |
1444 *offset = -1; |
1445 *offset = -1; |
1445 } |
1446 } |
1446 // Buf is not optional, but offset is optional. |
1447 // Buf is not optional, but offset is optional. |
1447 assert(buf != NULL, "sanity check"); |
1448 assert(buf != NULL, "sanity check"); |
1452 if (!addr) { |
1453 if (!addr) { |
1453 return false; |
1454 return false; |
1454 } |
1455 } |
1455 |
1456 |
1456 // Go through Decoder::decode to call getFuncName which reads the name from the traceback table. |
1457 // Go through Decoder::decode to call getFuncName which reads the name from the traceback table. |
1457 return Decoder::decode(addr, buf, buflen, offset); |
1458 return Decoder::decode(addr, buf, buflen, offset, demangle); |
1458 } |
1459 } |
1459 |
1460 |
1460 static int getModuleName(codeptr_t pc, // [in] program counter |
1461 static int getModuleName(codeptr_t pc, // [in] program counter |
1461 char* p_name, size_t namelen, // [out] optional: function name |
1462 char* p_name, size_t namelen, // [out] optional: function name |
1462 char* p_errmsg, size_t errmsglen // [out] optional: user provided buffer for error messages |
1463 char* p_errmsg, size_t errmsglen // [out] optional: user provided buffer for error messages |