chpl_thread_id_t chpl_thread_getId(void) { void* val = (void*) (intptr_t) CHPL_TLS_GET(chpl_thread_id); if (val == NULL) return chpl_thread_nullThreadId; return (chpl_thread_id_t) (intptr_t) val; }
// chpl_filenameTable is defined in chplcgfns.h c_string chpl_lookupFilename(const int32_t idx) { if (idx < 0) { switch (idx) { case CHPL_FILE_IDX_COMMAND_LINE: return "(command-line)"; case CHPL_FILE_IDX_COMMAND_LINE_ARG: return "<command-line arg>"; case CHPL_FILE_IDX_FORK_LARGE: return "fork large"; case CHPL_FILE_IDX_MAIN_PROGRAM: return "main program"; case CHPL_FILE_IDX_UNKNOWN: return "<unknown>"; case CHPL_FILE_IDX_IDLE_TASK: return "|idle|"; case CHPL_FILE_IDX_COMM_TASK: return "<comm task>"; case CHPL_FILE_IDX_MAIN_TASK: return "<main task>"; case CHPL_FILE_IDX_ON_BODY_TASK: return "on-body task"; case CHPL_FILE_IDX_SAVED_FILENAME: return savedFilename; default: { snprintf(CHPL_TLS_GET(unknownFileBuffer), 48, "<unknown file idx %" PRId32 ">", idx); // There is a possibility of unknownFileBuffer changing before it is // used, not a very good one though. return CHPL_TLS_GET(unknownFileBuffer); } } } else { if (idx < chpl_filenameTableSize) { return chpl_filenameTable[idx]; } else { snprintf(CHPL_TLS_GET(unknownFileBuffer), 48, "<unknown file idx %" PRId32 ">", idx); return CHPL_TLS_GET(unknownFileBuffer); } } }