The inline version of find_thread() now references _kern_find_thread() if

__HAIKU__ is defined.


git-svn-id: file:///srv/svn/repos/haiku/trunk/current@10266 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Axel Dörfler
2004-11-27 12:52:29 +00:00
parent 9f30bca262
commit 40bfa3f782
+18 -5
View File
@@ -1,6 +1,7 @@
/* Kernel specific structures and functions /* Kernel specific structures and functions
** *
** Distributed under the terms of the Haiku License. * Copyright 2004, Haiku Inc. All Rights Reserved.
* Distributed under the terms of the MIT License.
*/ */
#ifndef _OS_H #ifndef _OS_H
#define _OS_H #define _OS_H
@@ -213,8 +214,13 @@ typedef struct {
bigtime_t kernel_time; bigtime_t kernel_time;
} team_usage_info; } team_usage_info;
enum {
B_TEAM_USAGE_SELF = 0,
B_TEAM_USAGE_CHILDREN = -1,
};
/* system private, use macros instead */ /* system private, use macros instead */
extern status_t _get_team_usage_info(team_id team, int32 who, team_usage_info *tui, size_t size); extern status_t _get_team_usage_info(team_id team, int32 who, team_usage_info *info, size_t size);
#define get_team_usage_info(team, who, info) \ #define get_team_usage_info(team, who, info) \
_get_team_usage_info((team), (who), (info), sizeof(*(info))) _get_team_usage_info((team), (who), (info), sizeof(*(info)))
@@ -277,7 +283,11 @@ extern status_t on_exit_thread(void (*callback)(void *), void *data);
#if __INTEL__ && !_KERNEL_MODE && !_NO_INLINE_ASM #if __INTEL__ && !_KERNEL_MODE && !_NO_INLINE_ASM
static inline thread_id static inline thread_id
find_thread(const char *name) { find_thread(const char *name) {
extern thread_id _kfind_thread_(const char *name); # ifndef __HAIKU__
/* ToDo: this can be removed once we don't need BeOS compatibility of our source files */
# define _kern_find_thread _kfind_thread_
# endif
extern thread_id _kern_find_thread(const char *name);
if (!name) { if (!name) {
thread_id thread; thread_id thread;
__asm__ __volatile__ ( __asm__ __volatile__ (
@@ -285,7 +295,10 @@ find_thread(const char *name) {
: "=a" (thread)); : "=a" (thread));
return thread; return thread;
} }
return _kfind_thread_(name); return _kern_find_thread(name);
# ifndef __HAIKU
# undef _kern_find_thread
# endif
} }
#else #else
extern thread_id find_thread(const char *name); extern thread_id find_thread(const char *name);