util/os_misc: use detect_os.h to start uncoupling from gallium
Signed-off-by: Eric Engestrom <eric.engestrom@intel.com> Reviewed-by: Matt Turner <mattst88@gmail.com>
This commit is contained in:
@@ -47,13 +47,13 @@
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
||||||
#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_CYGWIN) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_HURD)
|
#if DETECT_OS_LINUX || DETECT_OS_CYGWIN || DETECT_OS_SOLARIS || DETECT_OS_HURD
|
||||||
# include <unistd.h>
|
# include <unistd.h>
|
||||||
#elif defined(PIPE_OS_APPLE) || defined(PIPE_OS_BSD)
|
#elif DETECT_OS_APPLE || DETECT_OS_BSD
|
||||||
# include <sys/sysctl.h>
|
# include <sys/sysctl.h>
|
||||||
#elif defined(PIPE_OS_HAIKU)
|
#elif DETECT_OS_HAIKU
|
||||||
# include <kernel/OS.h>
|
# include <kernel/OS.h>
|
||||||
#elif defined(PIPE_OS_WINDOWS)
|
#elif DETECT_OS_WINDOWS
|
||||||
# include <windows.h>
|
# include <windows.h>
|
||||||
#else
|
#else
|
||||||
#error unexpected platform in os_sysinfo.c
|
#error unexpected platform in os_sysinfo.c
|
||||||
@@ -124,7 +124,7 @@ os_get_option(const char *name)
|
|||||||
bool
|
bool
|
||||||
os_get_total_physical_memory(uint64_t *size)
|
os_get_total_physical_memory(uint64_t *size)
|
||||||
{
|
{
|
||||||
#if defined(PIPE_OS_LINUX) || defined(PIPE_OS_CYGWIN) || defined(PIPE_OS_SOLARIS) || defined(PIPE_OS_HURD)
|
#if DETECT_OS_LINUX || DETECT_OS_CYGWIN || DETECT_OS_SOLARIS || DETECT_OS_HURD
|
||||||
const long phys_pages = sysconf(_SC_PHYS_PAGES);
|
const long phys_pages = sysconf(_SC_PHYS_PAGES);
|
||||||
const long page_size = sysconf(_SC_PAGE_SIZE);
|
const long page_size = sysconf(_SC_PAGE_SIZE);
|
||||||
|
|
||||||
@@ -133,25 +133,25 @@ os_get_total_physical_memory(uint64_t *size)
|
|||||||
|
|
||||||
*size = (uint64_t)phys_pages * (uint64_t)page_size;
|
*size = (uint64_t)phys_pages * (uint64_t)page_size;
|
||||||
return true;
|
return true;
|
||||||
#elif defined(PIPE_OS_APPLE) || defined(PIPE_OS_BSD)
|
#elif DETECT_OS_APPLE || DETECT_OS_BSD
|
||||||
size_t len = sizeof(*size);
|
size_t len = sizeof(*size);
|
||||||
int mib[2];
|
int mib[2];
|
||||||
|
|
||||||
mib[0] = CTL_HW;
|
mib[0] = CTL_HW;
|
||||||
#if defined(PIPE_OS_APPLE)
|
#if DETECT_OS_APPLE
|
||||||
mib[1] = HW_MEMSIZE;
|
mib[1] = HW_MEMSIZE;
|
||||||
#elif defined(PIPE_OS_NETBSD) || defined(PIPE_OS_OPENBSD)
|
#elif DETECT_OS_NETBSD || DETECT_OS_OPENBSD
|
||||||
mib[1] = HW_PHYSMEM64;
|
mib[1] = HW_PHYSMEM64;
|
||||||
#elif defined(PIPE_OS_FREEBSD)
|
#elif DETECT_OS_FREEBSD
|
||||||
mib[1] = HW_REALMEM;
|
mib[1] = HW_REALMEM;
|
||||||
#elif defined(PIPE_OS_DRAGONFLY)
|
#elif DETECT_OS_DRAGONFLY
|
||||||
mib[1] = HW_PHYSMEM;
|
mib[1] = HW_PHYSMEM;
|
||||||
#else
|
#else
|
||||||
#error Unsupported *BSD
|
#error Unsupported *BSD
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
return (sysctl(mib, 2, size, &len, NULL, 0) == 0);
|
return (sysctl(mib, 2, size, &len, NULL, 0) == 0);
|
||||||
#elif defined(PIPE_OS_HAIKU)
|
#elif DETECT_OS_HAIKU
|
||||||
system_info info;
|
system_info info;
|
||||||
status_t ret;
|
status_t ret;
|
||||||
|
|
||||||
@@ -161,7 +161,7 @@ os_get_total_physical_memory(uint64_t *size)
|
|||||||
|
|
||||||
*size = (uint64_t)info.max_pages * (uint64_t)B_PAGE_SIZE;
|
*size = (uint64_t)info.max_pages * (uint64_t)B_PAGE_SIZE;
|
||||||
return true;
|
return true;
|
||||||
#elif defined(PIPE_OS_WINDOWS)
|
#elif DETECT_OS_WINDOWS
|
||||||
MEMORYSTATUSEX status;
|
MEMORYSTATUSEX status;
|
||||||
BOOL ret;
|
BOOL ret;
|
||||||
|
|
||||||
|
@@ -35,10 +35,11 @@
|
|||||||
#define _OS_MISC_H_
|
#define _OS_MISC_H_
|
||||||
|
|
||||||
|
|
||||||
|
#include "detect_os.h"
|
||||||
#include "pipe/p_compiler.h"
|
#include "pipe/p_compiler.h"
|
||||||
|
|
||||||
|
|
||||||
#if defined(PIPE_OS_UNIX)
|
#if DETECT_OS_UNIX
|
||||||
# include <signal.h> /* for kill() */
|
# include <signal.h> /* for kill() */
|
||||||
# include <unistd.h> /* getpid() */
|
# include <unistd.h> /* getpid() */
|
||||||
#endif
|
#endif
|
||||||
@@ -56,7 +57,7 @@ extern "C" {
|
|||||||
# define os_break() __asm("int3")
|
# define os_break() __asm("int3")
|
||||||
#elif defined(PIPE_CC_MSVC)
|
#elif defined(PIPE_CC_MSVC)
|
||||||
# define os_break() __debugbreak()
|
# define os_break() __debugbreak()
|
||||||
#elif defined(PIPE_OS_UNIX)
|
#elif DETECT_OS_UNIX
|
||||||
# define os_break() kill(getpid(), SIGTRAP)
|
# define os_break() kill(getpid(), SIGTRAP)
|
||||||
#else
|
#else
|
||||||
# define os_break() abort()
|
# define os_break() abort()
|
||||||
|
Reference in New Issue
Block a user