- stireg.h, wsipv6ok.h: Add missing newline
- hlguids.h, shlguid.h: add missing guids for MSVC
- winbase.h: add some missing WINBASEAPI modifiers
- winnt.h: create more portable definitions of GetCurrentFiber, move BitScanForward and BitScanReverse defintions out of __GNUC__ block

svn path=/trunk/; revision=51727
This commit is contained in:
Timo Kreuzer 2011-05-14 11:44:45 +00:00
parent a4a5b0c6d3
commit eafcfd1c7e
6 changed files with 44 additions and 71 deletions

View file

@ -27,5 +27,9 @@ DEFINE_GUID(CLSID_StdHlinkBrowseContext,
0x79eac9d1, 0xbaf9, 0x11ce, 0x8c, 0x82, 0x00, 0xaa,0x00,0x4b,0xa9,0x0b);
DEFINE_GUID(CLSID_IID_IExtensionServices,
0x79eac9cb, 0xbaf9, 0x11ce, 0x8c, 0x82, 0x00, 0xaa,0x00,0x4b,0xa9,0x0b);
#ifndef __GNUC__
DEFINE_GUID(IID_IBindStatusCallback,
0x79eac9c1, 0xbaf9, 0x11ce, 0x8c, 0x82, 0x00, 0xaa,0x00,0x4b,0xa9,0x0b);
#endif
#endif

View file

@ -57,26 +57,27 @@ DEFINE_GUID(IID_IObjMgr, 0x00BB2761L,0x6A77,0x11D0,0xA5,0x35,0x00,0xC0,0x4F,0x
DEFINE_GUID(IID_IProgressDialog, 0xEBBC7C04,0x315E,0x11D2,0xB6,0x2F,0x00,0x60,0x97,0xDF,0x5B,0xD4);
/* avoid duplicate definitions with shobjidl.h (FIXME) */
/* DEFINE_GUID(IID_IDockingWindow, 0x012dd920L, 0x7B26, 0x11D0, 0x8C, 0xA9, 0x00, 0xA0, 0xC9, 0x2D, 0xBF, 0xE8); */
/* DEFINE_OLEGUID(IID_IShellPropSheetExt, 0x000214E9L, 0, 0); */
/* DEFINE_OLEGUID(IID_IExtractIconA, 0x000214EBL, 0, 0); */
/* DEFINE_OLEGUID(IID_IExtractIconW, 0x000214FAL, 0, 0); */
/* DEFINE_OLEGUID(IID_IContextMenu, 0x000214E4L, 0, 0); */
/* DEFINE_OLEGUID(IID_IContextMenu2, 0x000214F4L, 0, 0); */
/* DEFINE_OLEGUID(IID_ICommDlgBrowser, 0x000214F1L, 0, 0); */
/* DEFINE_OLEGUID(IID_IShellBrowser, 0x000214E2L, 0, 0); */
/* DEFINE_OLEGUID(IID_IShellView, 0x000214E3L, 0, 0); */
/* DEFINE_OLEGUID(IID_IShellFolder, 0x000214E6L, 0, 0); */
/* DEFINE_OLEGUID(IID_IShellExtInit, 0x000214E8L, 0, 0); */
/* DEFINE_OLEGUID(IID_IPersistFolder, 0x000214EAL, 0, 0); */
/* DEFINE_OLEGUID(IID_IShellLinkA, 0x000214EEL, 0, 0); */
/* DEFINE_OLEGUID(IID_IEnumIDList, 0x000214F2L, 0, 0); */
/* DEFINE_OLEGUID(IID_IShellLinkW, 0x000214F9L, 0, 0); */
/* DEFINE_OLEGUID(IID_IShellExecuteHookA, 0x000214F5L, 0, 0); */
/* DEFINE_OLEGUID(IID_IShellExecuteHookW, 0x000214FBL, 0, 0); */
/* DEFINE_OLEGUID(IID_INewShortcutHookA, 0x000214E1L, 0, 0); */
/* DEFINE_OLEGUID(IID_INewShortcutHookW, 0x000214F7L, 0, 0); */
#ifndef __GNUC__ /* avoid duplicate definitions with shobjidl.h (FIXME) */
DEFINE_GUID(IID_IDockingWindow, 0x012dd920L, 0x7B26, 0x11D0, 0x8C, 0xA9, 0x00, 0xA0, 0xC9, 0x2D, 0xBF, 0xE8);
DEFINE_OLEGUID(IID_IShellPropSheetExt, 0x000214E9L, 0, 0);
DEFINE_OLEGUID(IID_IExtractIconA, 0x000214EBL, 0, 0);
DEFINE_OLEGUID(IID_IExtractIconW, 0x000214FAL, 0, 0);
DEFINE_OLEGUID(IID_IContextMenu, 0x000214E4L, 0, 0);
DEFINE_OLEGUID(IID_IContextMenu2, 0x000214F4L, 0, 0);
DEFINE_OLEGUID(IID_ICommDlgBrowser, 0x000214F1L, 0, 0);
DEFINE_OLEGUID(IID_IShellBrowser, 0x000214E2L, 0, 0);
DEFINE_OLEGUID(IID_IShellView, 0x000214E3L, 0, 0);
DEFINE_OLEGUID(IID_IShellFolder, 0x000214E6L, 0, 0);
DEFINE_OLEGUID(IID_IShellExtInit, 0x000214E8L, 0, 0);
DEFINE_OLEGUID(IID_IPersistFolder, 0x000214EAL, 0, 0);
DEFINE_OLEGUID(IID_IShellLinkA, 0x000214EEL, 0, 0);
DEFINE_OLEGUID(IID_IEnumIDList, 0x000214F2L, 0, 0);
DEFINE_OLEGUID(IID_IShellLinkW, 0x000214F9L, 0, 0);
DEFINE_OLEGUID(IID_IShellExecuteHookA, 0x000214F5L, 0, 0);
DEFINE_OLEGUID(IID_IShellExecuteHookW, 0x000214FBL, 0, 0);
DEFINE_OLEGUID(IID_INewShortcutHookA, 0x000214E1L, 0, 0);
DEFINE_OLEGUID(IID_INewShortcutHookW, 0x000214F7L, 0, 0);
#endif
DEFINE_GUID(CLSID_CUrlHistory, 0x3c374a40, 0xbae4, 0x11cf, 0xbf, 0x7d, 0x00, 0xaa, 0x00, 0x69, 0x46, 0xee);
#define SID_SUrlHistory CLSID_CUrlHistory

View file

@ -36,4 +36,4 @@
#define STI_DEVICE_VALUE_TIMEOUT_A "PollTimeout"
#define STI_DEVICE_VALUE_DISABLE_NOTIFICATIONS_A "DisableNotifications"
#define REGSTR_VAL_BAUDRATE_A "BaudRate"
#endif
#endif

View file

@ -1852,8 +1852,8 @@ VOID WINAPI InitializeSRWLock(PSRWLOCK);
LONG WINAPI InterlockedOr(IN OUT LONG volatile *,LONG);
LONG WINAPI InterlockedAnd(IN OUT LONG volatile *,LONG);
LONG WINAPI InterlockedCompareExchange(IN OUT LONG volatile *,LONG,LONG);
LONG WINAPI InterlockedDecrement(IN OUT LONG volatile *);
LONG WINAPI InterlockedExchange(IN OUT LONG volatile *,LONG);
WINBASEAPI LONG WINAPI InterlockedDecrement(IN OUT LONG volatile *);
WINBASEAPI LONG WINAPI InterlockedExchange(IN OUT LONG volatile *,LONG);
#if defined(_WIN64)
/* PVOID WINAPI InterlockedExchangePointer(PVOID*,PVOID); */
#define InterlockedExchangePointer(t,v) \
@ -1873,7 +1873,7 @@ LONG WINAPI InterlockedExchangeAdd(IN OUT LONG volatile *,LONG);
#if (_WIN32_WINNT >= 0x0501)
PSLIST_ENTRY WINAPI InterlockedFlushSList(PSLIST_HEADER);
#endif
LONG WINAPI InterlockedIncrement(IN OUT LONG volatile *);
WINBASEAPI LONG WINAPI InterlockedIncrement(IN OUT LONG volatile *);
#if (_WIN32_WINNT >= 0x0501)
PSLIST_ENTRY WINAPI InterlockedPopEntrySList(PSLIST_HEADER);
PSLIST_ENTRY WINAPI InterlockedPushEntrySList(PSLIST_HEADER,PSLIST_ENTRY);
@ -2065,8 +2065,8 @@ HANDLE WINAPI OpenThread(DWORD,BOOL,DWORD);
BOOL WINAPI OpenThreadToken(HANDLE,DWORD,BOOL,PHANDLE);
HANDLE WINAPI OpenWaitableTimerA(DWORD,BOOL,LPCSTR);
HANDLE WINAPI OpenWaitableTimerW(DWORD,BOOL,LPCWSTR);
void WINAPI OutputDebugStringA(LPCSTR);
void WINAPI OutputDebugStringW(LPCWSTR);
WINBASEAPI void WINAPI OutputDebugStringA(LPCSTR);
WINBASEAPI void WINAPI OutputDebugStringW(LPCWSTR);
BOOL WINAPI PeekNamedPipe(HANDLE,PVOID,DWORD,PDWORD,PDWORD,PDWORD);
BOOL WINAPI PostQueuedCompletionStatus(HANDLE,DWORD,ULONG_PTR,LPOVERLAPPED);
DWORD WINAPI PrepareTape(HANDLE,DWORD,BOOL);
@ -2245,7 +2245,7 @@ BOOL WINAPI SetVolumeMountPointW(LPCWSTR,LPCWSTR);
BOOL WINAPI SetWaitableTimer(HANDLE,const LARGE_INTEGER*,LONG,PTIMERAPCROUTINE,PVOID,BOOL);
DWORD WINAPI SignalObjectAndWait(HANDLE,HANDLE,DWORD,BOOL);
DWORD WINAPI SizeofResource(HINSTANCE,HRSRC);
void WINAPI Sleep(DWORD);
WINBASEAPI void WINAPI Sleep(DWORD);
#if (_WIN32_WINNT >= 0x0600)
BOOL WINAPI SleepConditionVariableCS(PCONDITION_VARIABLE,PCRITICAL_SECTION,DWORD);
BOOL WINAPI SleepConditionVariableSRW(PCONDITION_VARIABLE,PSRWLOCK,DWORD,ULONG);

View file

@ -1361,7 +1361,7 @@ typedef enum {
#define SEC_RESERVE 0x04000000
#define SEC_COMMIT 0x08000000
#define SEC_NOCACHE 0x10000000
#define SEC_WRITECOMBINE 0x40000000
#define SEC_WRITECOMBINE 0x40000000
#define SEC_LARGE_PAGES 0x80000000
#define SECTION_EXTEND_SIZE 16
#define SECTION_MAP_READ 4
@ -5097,18 +5097,12 @@ typedef struct _OBJECT_TYPE_LIST {
GUID *ObjectType;
} OBJECT_TYPE_LIST, *POBJECT_TYPE_LIST;
#if defined(__GNUC__)
#if defined(_M_IX86)
static __inline__ PVOID GetCurrentFiber(void)
FORCEINLINE PVOID GetCurrentFiber(VOID)
{
void* ret;
__asm__ __volatile__ (
"movl %%fs:0x10,%0"
: "=r" (ret) /* allow use of reg eax,ebx,ecx,edx,esi,edi */
);
return ret;
return (PVOID)(ULONG_PTR)__readfsdword(0x10);
}
#elif defined (_M_AMD64)
FORCEINLINE PVOID GetCurrentFiber(VOID)
{
@ -5118,10 +5112,11 @@ FORCEINLINE PVOID GetCurrentFiber(VOID)
return (PVOID)__readgsqword(FIELD_OFFSET(NT_TIB, FiberData));
#endif
}
#elif defined (_M_ARM)
PVOID WINAPI GetCurrentFiber(VOID);
#else
#if defined(_M_PPC)
#elif defined(_M_PPC)
static __inline__ __attribute__((always_inline)) unsigned long __readfsdword_winnt(const unsigned long Offset)
{
unsigned long result;
@ -5133,42 +5128,15 @@ static __inline__ __attribute__((always_inline)) unsigned long __readfsdword_win
return result;
}
#else
#error Unknown architecture
#endif
static __inline__ PVOID GetCurrentFiber(void)
{
return __readfsdword_winnt(0x10);
}
#else
#error Unknown architecture
#endif
#elif defined(__WATCOMC__)
extern PVOID GetCurrentFiber(void);
#pragma aux GetCurrentFiber = \
"mov eax, dword ptr fs:0x10" \
value [eax] \
modify [eax];
#elif defined(_MSC_VER)
#if (_MSC_FULL_VER >= 13012035)
__inline PVOID GetCurrentFiber(void) { return (PVOID)(ULONG_PTR)__readfsdword(0x10); }
#else
static __inline PVOID GetCurrentFiber(void)
{
PVOID p;
__asm mov eax, fs:[10h]
__asm mov [p], eax
return p;
}
#endif /* _MSC_FULL_VER */
#endif /* __GNUC__/__WATCOMC__/_MSC_VER */
#include "inline_ntcurrentteb.h"
@ -5215,11 +5183,11 @@ InterlockedBitTestAndReset(IN LONG volatile *Base,
#endif
}
#endif
#define BitScanForward _BitScanForward
#define BitScanReverse _BitScanReverse
#endif
/* TODO: Other architectures than X86 */
#if defined(_M_IX86)
#define PF_TEMPORAL_LEVEL_1

View file

@ -80,4 +80,4 @@
#undef WSAAsyncGetHostByName
#define WSAAsyncGetHostByName(a,b,c,d,e) WSAAsyncGetHostByName_IPV6INCOMPATIBLE
#endif
#endif