| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 | 
							- /* -*- mode:c; c-file-style:"k&r"; c-basic-offset: 4; tab-width:4; indent-tabs-mode:nil; mode:auto-fill; fill-column:78; -*- */
 
- /* vim: set ts=4 sw=4 et tw=78 fo=cqt wm=0: */
 
- #include "pal.h"
 
- #include "pal_debug.h"
 
- #define symbol_addr(sym)                                        \
 
-     ({  void * _sym;                                            \
 
-         asm volatile ("movq " #sym "@GOTPCREL(%%rip), %0"       \
 
-                       : "=r"(_sym));                            \
 
-         _sym; })
 
- #define print_symbol(sym) pal_printf(#sym " = %p\n", symbol_addr(sym))
 
- int main (int argc, char ** argv, char ** envp)
 
- {
 
-     print_symbol(DkVirtualMemoryAlloc);
 
-     print_symbol(DkVirtualMemoryFree);
 
-     print_symbol(DkVirtualMemoryProtect);
 
-     print_symbol(DkProcessCreate);
 
-     print_symbol(DkProcessExit);
 
-     print_symbol(DkProcessSandboxCreate);
 
-     print_symbol(DkStreamOpen);
 
-     print_symbol(DkStreamWaitForClient);
 
-     print_symbol(DkStreamRead);
 
-     print_symbol(DkStreamWrite);
 
-     print_symbol(DkStreamDelete);
 
-     print_symbol(DkStreamMap);
 
-     print_symbol(DkStreamUnmap);
 
-     print_symbol(DkStreamSetLength);
 
-     print_symbol(DkStreamFlush);
 
-     print_symbol(DkSendHandle);
 
-     print_symbol(DkReceiveHandle);
 
-     print_symbol(DkStreamAttributesQuery);
 
-     print_symbol(DkStreamAttributesQuerybyHandle);
 
-     print_symbol(DkStreamAttributesSetbyHandle);
 
-     print_symbol(DkStreamGetName);
 
-     print_symbol(DkStreamChangeName);
 
-     print_symbol(DkThreadCreate);
 
-     print_symbol(DkThreadDelayExecution);
 
-     print_symbol(DkThreadYieldExecution);
 
-     print_symbol(DkThreadExit);
 
-     print_symbol(DkThreadResume);
 
-     print_symbol(DkSetExceptionHandler);
 
-     print_symbol(DkExceptionReturn);
 
-     print_symbol(DkSemaphoreCreate);
 
-     print_symbol(DkSemaphoreRelease);
 
-     print_symbol(DkNotificationEventCreate);
 
-     print_symbol(DkSynchronizationEventCreate);
 
-     print_symbol(DkEventSet);
 
-     print_symbol(DkEventClear);
 
-     print_symbol(DkObjectsWaitAny);
 
-     print_symbol(DkObjectReference);
 
-     print_symbol(DkObjectClose);
 
-     print_symbol(DkSystemTimeQuery);
 
-     print_symbol(DkRandomBitsRead);
 
-     print_symbol(DkInstructionCacheFlush);
 
-     print_symbol(DkSegmentRegister);
 
-     print_symbol(DkMemoryAvailableQuota);
 
-     print_symbol(DkCreatePhysicalMemoryChannel);
 
-     print_symbol(DkPhysicalMemoryCommit);
 
-     print_symbol(DkPhysicalMemoryMap);
 
-     return 0;
 
- }
 
 
  |