Help Splitting Patches

2012-12-30 Thread Adam Martinson
Looking for some help splitting patch 3, not sure how I can cut it down any more without breaking stuff. I'm guessing patch 9 will need splitting too, same problem. ~Adam patches.tar.gz Description: GNU Zip compressed data

libgcrypt thread safety

2012-02-08 Thread Adam Martinson
I've been looking into bug 27036 , and it's due to the lack of thread safety by default in libgcrypt (in this case via libgnutls in secur32.dll). To be thread safe, libgcrypt requires a call to gcry_control(GCRYCTL_SET_THREAD_CBS) before any libgc

Re: user32: Only call SetWindowPos() in UpdateLayeredWindowIndirect() if needed. (try 4)

2012-02-05 Thread Adam Martinson
On 02/05/2012 09:46 PM, Dmitry Timoshkov wrote: Adam Martinson wrote: (We should not be calling SetWindowPos() in UpdateLayeredWindowIndirect() at all.) Fixes bug 26924. That's not what I was asking about (a bunch of message tests with various parameters). Your current version essent

Re: [4/9] msxml3: Implement IXMLDOMNodeList::QueryInterface(IEnumVARIANT).

2011-07-05 Thread Adam Martinson
On 07/05/2011 11:23 AM, Nikolay Sivov wrote: On Tue, Jul 5, 2011 at 8:11 PM, Adam Martinson wrote: --- dlls/msxml3/nodelist.c | 33 - dlls/msxml3/selection.c | 34 -- 2 files changed, 64 insertions(+), 3 deletions

Re: [3/3] msxml3: Added IStream support to IMXWriter

2011-06-19 Thread Adam Martinson
On 06/19/2011 09:32 PM, Thomas Mullaly wrote: +static inline void reset_output_buffer(mxwriter *This, LPCSTR encoding) +{ +xmlOutputBufferClose(This->buffer); + +if (encoding) +This->buffer = xmlAllocOutputBuffer(xmlFindCharEncodingHandler(encoding)); +else if (!This->dest) +

Re: [1/3] msxml3/tests: Added IStream tests for IMXWriter

2011-06-19 Thread Adam Martinson
On 06/19/2011 09:31 PM, Thomas Mullaly wrote: +#define DEFINE_EXPECT(func) \ +static BOOL expect_ ## func = FALSE, called_ ## func = FALSE + +#define SET_EXPECT(func) \ +expect_ ## func = TRUE This seems like macro-overkill. I think a struct/table here may be a bit cleaner. +static c

Re: [3/3] kernel32/heap: Add registry caps for reported memory. (resend)

2011-06-06 Thread Adam Martinson
On 06/06/2011 11:22 AM, Andrew Nguyen wrote: On 06/06/2011 11:03 AM, Adam Martinson wrote: +/* Only check this once */ +if (!cache_lastchecked) +{ +HMODULE hadvapi32 = LoadLibraryA("advapi32.dll"); +#define ADVAPI32_GET_PROC(func) typeof(func) * p ## fun

Re: ole32/ole2: Don't call IDropTarget::QueryInterface() in RegisterDragDrop(). (try 4 resend)

2011-06-06 Thread Adam Martinson
On 06/06/2011 10:58 AM, Michael Stefaniuc wrote: Hello Adam, Adam Martinson wrote: This is to work around apps which break COM rules by not implementing you need to follow the Wine COM guidelines: http://wiki.winehq.org/COMGuideline IDropTarget::QueryInterface(). Windows doesn't e

Re: [1/3] kernel32/heap: Emulate Win9x if appropriate in GlobalMemoryStatusEx(). (try 2)

2011-06-06 Thread Adam Martinson
On 06/06/2011 11:02 AM, Juan Lang wrote: Ha! Quite right, thanks! If that's what you want, then an easier check is to use GetVersion() rather than GetVersionEx. (GetVersion()& 0x8000) is true under Win9x, false under any NT version. See many checks like this in e.g. kernel32. --Juan GetV

Re: [1/3] kernel32/heap: Emulate Win9x if appropriate in GlobalMemoryStatusEx(). (try 2)

2011-06-06 Thread Adam Martinson
On 06/06/2011 10:50 AM, Juan Lang wrote: In NT4 mode: (osver.dwMajorVersion>= 5) is FALSE. (osver.dwPlatformId != VER_PLATFORM_WIN32_WINDOWS) is TRUE. (osver.dwMajorVersion>= 5 || osver.dwPlatformId != VER_PLATFORM_WIN32_WINDOWS) is TRUE. Right? Ah, right. Wrong with this comment, sorry about t

Re: [1/3] kernel32/heap: Emulate Win9x if appropriate in GlobalMemoryStatusEx(). (try 2)

2011-06-06 Thread Adam Martinson
On 06/06/2011 10:45 AM, Juan Lang wrote: I'm removing part of the comment because it no longer applies. We're not just using the XP behavior for everything anymore, now we're using the 9x behavior when it's appropriate. When is it appropriate, and when not? I don't know, and your patch doesn't

Re: [1/3] kernel32/heap: Emulate Win9x if appropriate in GlobalMemoryStatusEx(). (try 2)

2011-06-06 Thread Adam Martinson
On 06/06/2011 10:23 AM, Juan Lang wrote: Hi Adam, perhaps I'm just being obtuse, but I don't see how Dmitry's comment has been addressed for this patch. I'm confused by the commit comment ("Emulate Win9x if appropriate") and the change itself: /* Win98 returns only the swapsize in ullTota

Re: [2/3] kernel32/heap: Fix some hacks in GlobalMemoryStatus(). (try 2)

2011-06-06 Thread Adam Martinson
On 06/03/2011 03:29 PM, Adam Martinson wrote: On 06/03/2011 03:06 PM, Alexandre Julliard wrote: Adam Martinson writes: On 06/03/2011 01:33 PM, Dmitry Timoshkov wrote: Adam Martinson wrote: The issue is that Dragon NaturallySpeaking 7 setup doesn't have the IMAGE_FILE_LARGE_ADDRESS_

Re: [2/3] kernel32/heap: Fix some hacks in GlobalMemoryStatus(). (try 2)

2011-06-03 Thread Adam Martinson
On 06/03/2011 03:06 PM, Alexandre Julliard wrote: Adam Martinson writes: On 06/03/2011 01:33 PM, Dmitry Timoshkov wrote: Adam Martinson wrote: The issue is that Dragon NaturallySpeaking 7 setup doesn't have the IMAGE_FILE_LARGE_ADDRESS_AWARE flag set, but it uses InstallShield 6

Re: [2/3] kernel32/heap: Fix some hacks in GlobalMemoryStatus(). (try 2)

2011-06-03 Thread Adam Martinson
On 06/03/2011 02:36 PM, Dmitry Timoshkov wrote: Adam Martinson wrote: The issue is that Dragon NaturallySpeaking 7 setup doesn't have the IMAGE_FILE_LARGE_ADDRESS_AWARE flag set, but it uses InstallShield 6 as a child process, which does have it set. IS6 calls GlobalMemoryStatus() and p

Re: [2/3] kernel32/heap: Fix some hacks in GlobalMemoryStatus(). (try 2)

2011-06-03 Thread Adam Martinson
On 06/03/2011 01:33 PM, Dmitry Timoshkov wrote: Adam Martinson wrote: The issue is that Dragon NaturallySpeaking 7 setup doesn't have the IMAGE_FILE_LARGE_ADDRESS_AWARE flag set, but it uses InstallShield 6 as a child process, which does have it set. IS6 calls GlobalMemoryStatus() and p

Re: [2/3] kernel32/heap: Fix some hacks in GlobalMemoryStatus(). (try 2)

2011-06-03 Thread Adam Martinson
On 06/03/2011 09:14 AM, Adam Martinson wrote: On 06/03/2011 03:41 AM, Dmitry Timoshkov wrote: Adam Martinson wrote: Your previous quesion: > How do the processes running in separate address spaces have anything to do with that? I thought I addressed that with this version of the pa

Re: [2/3] kernel32/heap: Fix some hacks in GlobalMemoryStatus(). (try 2)

2011-06-03 Thread Adam Martinson
On 06/03/2011 03:41 AM, Dmitry Timoshkov wrote: Adam Martinson wrote: Your previous quesion: > How do the processes running in separate address spaces have anything to do with that? I thought I addressed that with this version of the patch, but if I'm not checking address space c

Re: [1/3] kernel32/heap: Emulate Win9x if appropriate in GlobalMemoryStatusEx(). (resend)

2011-06-03 Thread Adam Martinson
On 06/03/2011 03:37 AM, Dmitry Timoshkov wrote: Adam Martinson wrote: The stuff in that block is for win2k+ mode only. Win9x doesn't add [Total|Avail]Phys to [Total|Avail]PageFile. If wine is in win9x mode it should behave like win9x, or it confuses old apps. This is needed for th

Re: [1/3] kernel32/heap: Emulate Win9x if appropriate in GlobalMemoryStatusEx(). (resend)

2011-06-02 Thread Adam Martinson
On 06/02/2011 09:21 PM, Charles Davis wrote: On 6/2/11 2:46 PM, Adam Martinson wrote: On 06/02/2011 03:10 PM, Dmitry Timoshkov wrote: Adam Martinson wrote: +osver.dwOSVersionInfoSize = sizeof(osver); +GetVersionExW(&osver); + ... +if (osver.dwMajorVersion>= 5) Onc

Re: [2/3] kernel32/heap: Fix some hacks in GlobalMemoryStatus(). (try 2)

2011-06-02 Thread Adam Martinson
On 06/02/2011 03:11 PM, Dmitry Timoshkov wrote: Adam Martinson wrote: +/* Check the current process and all ancestors that share its address space. + * Some apps run sub-processes that have the IMAGE_FILE_LARGE_ADDRESS_AWARE flag set, but + * the parent process doesn't (eg, D

Re: [1/3] kernel32/heap: Emulate Win9x if appropriate in GlobalMemoryStatusEx(). (resend)

2011-06-02 Thread Adam Martinson
On 06/02/2011 03:10 PM, Dmitry Timoshkov wrote: Adam Martinson wrote: +osver.dwOSVersionInfoSize = sizeof(osver); +GetVersionExW(&osver); + ... +if (osver.dwMajorVersion>= 5) Once again, that's wrong way of detecting win9x, or please try to explain better how th

Re: [2/3] kernel32/heap: Fix some hacks in GlobalMemoryStatus().

2011-05-31 Thread Adam Martinson
On 05/31/2011 12:02 PM, Dmitry Timoshkov wrote: Adam Martinson wrote: +/* Check the current process and all ancestors. Some apps run sub-processes that + * have the IMAGE_FILE_LARGE_ADDRESS_AWARE flag set, but the parent process doesn't. + * (eg, Dragon NaturallySpeaking 7 setup

Re: [1/3] kernel32/heap: Emulate Win9x if appropriate in GlobalMemoryStatusEx().

2011-05-31 Thread Adam Martinson
On 05/31/2011 12:09 PM, Dmitry Timoshkov wrote: Adam Martinson wrote: +if (osver.dwMajorVersion>= 5) That's a wrong check for win9x. It's not, it's a check for win2k and later, the stuff in that block isn't done for win9x.

Re: Support for D3DQUERY_TIMESTAMP* queries...

2011-05-27 Thread Adam Martinson
On 05/27/2011 01:23 PM, Adam Martinson wrote: On 05/25/2011 11:31 AM, Stefan Dösinger wrote: On Wednesday 25 May 2011 18:23:39 Adam Martinson wrote: Do you think that needs to be done before I submit those or is that something that can come later? I'd prefer to have this checked b

kernel32/heap: Fix GlobalMemoryStatus()/GlobalMemoryStatusEx()

2011-05-26 Thread Adam Martinson
s the workaround for Windows. Any feedback would be appreciated. >From 56826cdcd217cdb911f416452aab0649dbcaf2fe Mon Sep 17 00:00:00 2001 From: Adam Martinson Date: Wed, 25 May 2011 16:29:20 -0500 Subject: [PATCH 09/11] kernel32/heap: Emulate Win9x if appropriate in GlobalMemoryStatusEx(). To: wine-

Re: kernel32/toolhelp: PROCESSENTRY32::szExeFile is the full path in Win9x.

2011-05-26 Thread Adam Martinson
On 05/26/2011 06:38 AM, Saulius Krasuckas wrote: WRT doesn't test win9x any longer, so what's the point of putting such check in the test? Ye, I noticed that when I was looking through Marvin's results, the reason I sent this one was to have the testbot check it xD

Re: ole32/ole2: Don't call IDropTarget::QueryInterface() in RegisterDragDrop(). [whitespace fixed]

2011-05-26 Thread Adam Martinson
On 05/26/2011 06:56 AM, Huw Davies wrote: On Thu, May 26, 2011 at 06:51:13AM -0500, Adam Martinson wrote: On 05/26/2011 06:47 AM, Huw Davies wrote: On Wed, May 25, 2011 at 12:45:15PM -0500, Adam Martinson wrote: On 05/25/2011 12:36 PM, Adam Martinson wrote: The AddRef is done in

Re: ole32/ole2: Don't call IDropTarget::QueryInterface() in RegisterDragDrop(). [whitespace fixed]

2011-05-26 Thread Adam Martinson
On 05/26/2011 06:47 AM, Huw Davies wrote: On Wed, May 25, 2011 at 12:45:15PM -0500, Adam Martinson wrote: On 05/25/2011 12:36 PM, Adam Martinson wrote: The AddRef is done in WrapDropTarget(), seems like the appropriate place for it. Quite right on the rest though, thanks. Oops no, the window

Re: ole32/ole2: Don't call IDropTarget::QueryInterface() in RegisterDragDrop(). [whitespace fixed]

2011-05-25 Thread Adam Martinson
On 05/25/2011 12:36 PM, Adam Martinson wrote: On 05/24/2011 03:37 AM, Huw Davies wrote: +static IDropTarget* WrapDropTarget(IDropTarget* inner) +{ +DropTargetWrapper* This = HeapAlloc(GetProcessHeap(), 0, sizeof(*This)); + +if (This) +{ +This->iface = (IDropTar

Re: ole32/ole2: Don't call IDropTarget::QueryInterface() in RegisterDragDrop(). [whitespace fixed]

2011-05-25 Thread Adam Martinson
On 05/24/2011 03:37 AM, Huw Davies wrote: +static IDropTarget* WrapDropTarget(IDropTarget* inner) +{ +DropTargetWrapper* This = HeapAlloc(GetProcessHeap(), 0, sizeof(*This)); + +if (This) +{ +This->iface = (IDropTarget){&DropTargetWrapper_VTbl }; This->iface.lpVtbl =&DropTarg

Re: Support for D3DQUERY_TIMESTAMP* queries...

2011-05-17 Thread Adam Martinson
d10 when we get there. Let me know what you think. >From cf0ff1b9abab514dc8c258a184c67c7f2d2849de Mon Sep 17 00:00:00 2001 From: Adam Martinson Date: Tue, 17 May 2011 11:14:01 -0500 Subject: [PATCH 4/8] wined3d: Add support for GL_ARB_timer_query. To: wine-patches Reply-To: wine-devel ---

Re: [3/3] msxml3/domdoc: Add support for VT_ARRAY|VT_UI1 in domdoc_load(). (try 2)

2011-05-05 Thread Adam Martinson
On 05/05/2011 09:37 AM, Nikolay Sivov wrote: On 5/5/2011 18:14, Adam Martinson wrote: I think this is actually the most straightforward/readable way to handle it. If multi-dimensional SAFEARRAYs are actually supported, we will need separate cases for them. It's just not the way I th

Re: [2/3] msxml3/domdoc: Add an internal function to load from a UTF8 string.

2011-05-05 Thread Adam Martinson
On 05/05/2011 09:21 AM, Nikolay Sivov wrote: On 5/5/2011 18:09, Adam Martinson wrote: On 05/04/2011 05:56 PM, Nikolay Sivov wrote: You don't need a separate helper for that. doparse() should do fine with "UTF-8" encoding parameter to force encoding. This is to avoid calling

Re: [3/3] msxml3/domdoc: Add support for VT_ARRAY|VT_UI1 in domdoc_load(). (try 2)

2011-05-05 Thread Adam Martinson
On 05/04/2011 06:04 PM, Nikolay Sivov wrote: On 5/5/2011 00:38, Adam Martinson wrote: Fixes bugs 14864 + 16453. --- dlls/msxml3/domdoc.c | 27 + dlls/msxml3/tests/domdoc.c | 94 +++- 2 files changed, 120 insertions(+), 1

Re: [2/3] msxml3/domdoc: Add an internal function to load from a UTF8 string.

2011-05-05 Thread Adam Martinson
On 05/04/2011 05:56 PM, Nikolay Sivov wrote: You don't need a separate helper for that. doparse() should do fine with "UTF-8" encoding parameter to force encoding. This is to avoid calling domdoc_loadXML() from domdoc_load(). When we need almost identical behavior from 2 separate interface func

Re: Support for D3DQUERY_TIMESTAMP* queries...

2011-05-04 Thread Adam Martinson
OK, I think I addressed those issues, let me know how these look. >From 4648e7395800ae2a1ad55166493cae9183dc2c62 Mon Sep 17 00:00:00 2001 From: Adam Martinson Date: Wed, 4 May 2011 11:05:25 -0500 Subject: [PATCH 03/12] wined3d: Add support for GL_ARB_timer_query. To: wine-patches Reply-To: w

Re: [2/2] msxml3/domdoc: Add support for VT_ARRAY|VT_UI1 in domdoc_load().

2011-05-04 Thread Adam Martinson
On 05/03/2011 05:30 PM, Nikolay Sivov wrote: I'm worried about VT_UI1 being interpreted as ASCII stream or just a byte stream that could be in any encoding. If it's a case you can't assume it's encoded as utf8, when you do utf8 -> utf16 (for BSTR). For this particular case you might want direc

Re: [2/2] msxml3/domdoc: Add support for VT_ARRAY|VT_UI1 in domdoc_load().

2011-05-03 Thread Adam Martinson
On 05/03/2011 09:43 AM, Adam Martinson wrote: On 05/03/2011 01:45 AM, Nikolay Sivov wrote: On 5/3/2011 08:07, Adam Martinson wrote: Fixes bug 14864. --- dlls/msxml3/domdoc.c | 255 ++ 1 files changed, 134 insertions(+), 121 deletions

Support for D3DQUERY_TIMESTAMP* queries...

2011-05-03 Thread Adam Martinson
Feedback please. >From 153f626211233e9da868ecdf5092da77ad032191 Mon Sep 17 00:00:00 2001 From: Adam Martinson Date: Fri, 29 Apr 2011 15:52:40 -0500 Subject: [PATCH 3/7] wined3d: Add support for GL_ARB_timer_query. To: wine-patches Reply-To: wine-devel --- dlls/wined3d/directx.c|

Re: [2/2] msxml3/domdoc: Add support for VT_ARRAY|VT_UI1 in domdoc_load().

2011-05-03 Thread Adam Martinson
On 05/03/2011 01:45 AM, Nikolay Sivov wrote: On 5/3/2011 08:07, Adam Martinson wrote: Fixes bug 14864. --- dlls/msxml3/domdoc.c | 255 ++ 1 files changed, 134 insertions(+), 121 deletions(-) +case VT_ARRAY|VT_UI1

Re: wined3d/state: Treat unrecognized D3DZBUFFERTYPEs as D3DZB_TRUE. (try 2)

2011-04-28 Thread Adam Martinson
On 04/28/2011 04:21 AM, Henri Verbeet wrote: I'm not so convinced there's value in this, considering there are no known applications depending on this. Stefan thinks it's useful anyway. If you do want to spend the effort to make this go in, note that this affects ddraw and d3d8 as well, not just

Re: wined3d: Track when the FBO is dirty. (try 4)

2011-04-27 Thread Adam Martinson
On Tuesday 26 April 18:16:27 Henri Verbeet wrote: > This is mostly the same as the previous version. Yes, it's just rebased. I'm happy to change it however you see fit, but I need to know what you'd like changed and how.

Re: wined3d: Track when the FBO is dirty. (try 4)

2011-04-27 Thread Adam Martinson
On Wednesday 27 Apr 2011 01:19:51 Stefan Dösinger wrote: On Tuesday 26 April 2011 19:35:06 Adam Martinson wrote: > -FIXME("Unrecognized D3DZBUFFERTYPE value %#x.\n", > +WARN("treating unrecognized D3DZBUFFERTYPE value %#x

Re: wined3d: Track when the FBO is dirty. (try 3)

2011-04-12 Thread Adam Martinson
based version. >From 5f964dc712fc2495f0d9f70726d679ce79229105 Mon Sep 17 00:00:00 2001 From: Adam Martinson Date: Thu, 7 Apr 2011 11:57:00 -0500 Subject: [PATCH] wined3d: Track when the FBO is dirty. To: wine-patches Reply-To: wine-devel --- dlls/wined3d/context.

Re: wined3d: Track when the FBO is dirty. (try 3)

2011-04-11 Thread Adam Martinson
On 04/08/2011 08:50 AM, Henri Verbeet wrote: On 7 April 2011 18:51, Adam Martinson wrote: -context_apply_fbo_state(context, GL_FRAMEBUFFER, context->blit_targets, depth_stencil, SFLAG_INTEXTURE); + +if (rt_count == device->adapter->gl_info.limit

Re: [2/4] wined3d: Track when the FBO is dirty.

2011-04-07 Thread Adam Martinson
On 03/27/2011 06:45 AM, Henri Verbeet wrote: On 21 March 2011 21:57, Adam Martinson wrote: @@ -2102,6 +2121,7 @@ BOOL context_apply_clear_state(struct wined3d_context *context, IWineD3DDeviceIm if (rt_count< context->gl_info->limits.buffers) memse

Re: [2/4] wined3d: Track when the FBO is dirty.

2011-04-07 Thread Adam Martinson
On 04/07/2011 10:54 AM, Henri Verbeet wrote: On 7 April 2011 17:40, Adam Martinson wrote: I think I've addressed all of these... attached try #2. It doesn't compile. Heh... someone changed a variable name on me, sorry. >From d0ead7dd57d17d7ea0a590e66bea4e42cba873da Mon Sep 17

Re: [1/4] wined3d/context: Track the number of render targets in FBO entries.

2011-03-24 Thread Adam Martinson
On 03/22/2011 01:33 PM, Henri Verbeet wrote: How much of a real difference does this patch make, after you avoid the redundant lookups? (I.e., after the second patch in this series.) In that case the additional reduction in context_apply_fbo_state() CPU time from the 1st patch is only about 10%.

Re: [1/4] wined3d/context: Track the number of render targets in FBO entries.

2011-03-22 Thread Adam Martinson
On 03/22/2011 05:02 AM, Henri Verbeet wrote: On 21 March 2011 21:56, Adam Martinson wrote: Cuts CPU time in context_apply_fbo_state() in half. This is meaningless. Which applications, and how much time of the total is spent in context_apply_fbo_state()? In the 3DMark06 batch size 8 test, as

Re: wineport: Add support for ctz().

2011-03-17 Thread Adam Martinson
On 03/17/2011 02:04 PM, Alexander Kochetkov wrote: For my purposes the 'return -1' path will never be taken, so it's not needed. I want to be able to do: while (bitmap) { i = ctz(bitmap); /* get the LSB index */ bitmap ^= 1<< i; /* zero LSB */ /* for each set bit i... */ } If the

Re: wineport: Add support for ctz().

2011-03-17 Thread Adam Martinson
On 03/17/2011 02:54 AM, Marcus Meissner wrote: On Wed, Mar 16, 2011 at 01:26:31PM -0500, Adam Martinson wrote: On 03/16/2011 08:34 AM, Alexandre Julliard wrote: Adam Martinson writes: @@ -239,6 +243,19 @@ extern int getopt_long_only (int ___argc, char *const *___argv, int ffs( int x

Re: wineport: Add support for ctz().

2011-03-17 Thread Adam Martinson
On 03/17/2011 03:23 AM, David Laight wrote: On Wed, Mar 16, 2011 at 01:26:31PM -0500, Adam Martinson wrote: __builtin_ctz() compiles to: mov0x8(%ebp),%eax bsf%eax,%eax (ffs()-1) compiles to: mov$0x,%edx bsf0x8(%ebp),%eax cmove %edx,%eax ... So yes, there is a reason

Re: wined3d/device: Avoid repeated calculations of idx and shift in IWineD3DDeviceImpl_MarkStateDirty(). (resend)

2011-03-17 Thread Adam Martinson
On 03/16/2011 02:55 PM, Alexandre Julliard wrote: Adam Martinson writes: On 03/16/2011 02:24 PM, Alexandre Julliard wrote: Adam Martinson writes: Look at any d3d app with oprofile. That function is called EVERYWHERE. In my testing this reduces IWineD3DDeviceImpl_MarkStateDirty() from

Re: wined3d/device: Avoid repeated calculations of idx and shift in IWineD3DDeviceImpl_MarkStateDirty(). (resend)

2011-03-17 Thread Adam Martinson
On 03/16/2011 02:24 PM, Alexandre Julliard wrote: Adam Martinson writes: Look at any d3d app with oprofile. That function is called EVERYWHERE. In my testing this reduces IWineD3DDeviceImpl_MarkStateDirty() from 4.8% of wined3d CPU time to 3.3%. What compiler are you using? I don'

Re: wineport: Add support for ctz().

2011-03-17 Thread Adam Martinson
On 03/16/2011 08:34 AM, Alexandre Julliard wrote: Adam Martinson writes: @@ -239,6 +243,19 @@ extern int getopt_long_only (int ___argc, char *const *___argv, int ffs( int x ); #endif +#if defined(__GNUC__)&& (GCC_VERSION>= 30406) +#define ctz(x) __builtin_ctz(x) +#e

Re: wined3d/device: Avoid repeated calculations of idx and shift in IWineD3DDeviceImpl_MarkStateDirty(). (resend)

2011-03-17 Thread Adam Martinson
On 03/16/2011 08:39 AM, Alexandre Julliard wrote: Adam Martinson writes: --- dlls/wined3d/device.c | 17 - 1 files changed, 8 insertions(+), 9 deletions(-) You still need to demonstrate that this is an improvement. Compilers are pretty good nowadays, and doing such micro

Re: wineport: Add fast builtin & asm versions of ffs() + ctz() where supported.

2011-03-11 Thread Adam Martinson
On 03/11/2011 07:28 AM, Alexandre Julliard wrote: Adam Martinson writes: @@ -236,7 +241,40 @@ extern int getopt_long_only (int ___argc, char *const *___argv, #endif /* HAVE_GETOPT_LONG */ #ifndef HAVE_FFS -int ffs( int x ); +#if defined(__i386__) || defined(__x86_64__

Re: wined3d/context: Remove a trivial call to context_validate_onscreen_formats() in context_apply_blit_state().

2011-03-11 Thread Adam Martinson
On 03/11/2011 06:50 AM, Henri Verbeet wrote: Sigh. I've asked you a very simple question about the performance impact of these changes *twice* now, and you ignored the question both times. Unless you have evidence that the compiler fails to eliminate the call by itself, and this actually makes a

Re: wineport: Use a lookup table to make our slow ffs() a bit faster.

2011-03-11 Thread Adam Martinson
On 03/11/2011 07:19 AM, Alexandre Julliard wrote: Henri Verbeet writes: Something like the following may be faster: static const int bit_pos[] = { 0x00, 0x01, 0x0e, 0x02, 0x0f, 0x1b, 0x12, 0x03, 0x1e, 0x10, 0x1c, 0x16, 0x18, 0x13, 0x0a, 0x04, 0x1f, 0x0d, 0x1a, 0x11, 0x1d, 0x15,

Re: user32/cursoricon: Fix an uninitialized pointer.

2010-12-20 Thread Adam Martinson
On 12/20/2010 01:40 PM, Adam Martinson wrote: --- dlls/user32/cursoricon.c | 15 +-- 1 files changed, 9 insertions(+), 6 deletions(-) This is wrong, please ignore it.

Re: [4/4] msxml3: Implement domdoc schema validation (resend)

2010-11-02 Thread Adam Martinson
On 11/02/2010 07:15 AM, Alexandre Julliard wrote: Adam Martinson writes: --- dlls/msxml3/domdoc.c | 127 dlls/msxml3/tests/domdoc.c |2 +- 2 files changed, 93 insertions(+), 36 deletions(-) This one breaks on libxml 2.6.16

Re: [2/4] msxml3: add a function to validate a tree against a schema cache (resend)

2010-10-29 Thread Adam Martinson
On 10/28/2010 05:42 AM, Alexandre Julliard wrote: Adam Martinson writes: --- dlls/msxml3/msxml_private.h |1 + dlls/msxml3/schema.c| 75 +++ 2 files changed, 76 insertions(+), 0 deletions(-) This doesn't build on Le

Re: [3/6] msxml3/tests: internal schema doc storage tests (try 2)

2010-10-19 Thread Adam Martinson
On 10/19/2010 03:17 AM, Alexandre Julliard wrote: Adam Martinson writes: --- dlls/msxml3/tests/schema.c | 438 +--- 1 files changed, 334 insertions(+), 104 deletions(-) Please don't resend just a patch marked 3/6, resend a proper s

Re: [3/6] msxml3/tests: internal schema doc storage tests (try 2)

2010-10-19 Thread Adam Martinson
On 10/19/2010 11:32 AM, Alexandre Julliard wrote: Adam Martinson writes: OK, just for future reference or do you want me to resend this set? Please resend, it needs to go through testbot again. OK, resent, along with a few new ones.

Re: [PATCH 2/2] msxml3: implement preserveWhiteSpace property

2010-09-30 Thread Adam Martinson
On 09/30/2010 09:12 AM, Alexandre Julliard wrote: Adam Martinson writes: +#define WS_CHECK_IGNORED(doc) \ +ole_check(IXMLDOMDocument2_selectNodes(doc, _bstr_("//*[local-name()='html']"),&list));\ +ole_check(IXMLDOMNodeList_get_item(list, 0,&

Re: [PATCH 2/6] msxml3: ignore whitespace nodes

2010-09-28 Thread Adam Martinson
On 09/28/2010 06:27 AM, Nikolay Sivov wrote: On 9/28/2010 05:37, Adam Martinson wrote: From 1f8661342ae63290f212429e382b5776e07b9ebc Mon Sep 17 00:00:00 2001 From: Adam Martinson Date: Mon, 27 Sep 2010 19:29:04 -0500 Subject: [PATCH 2/6] msxml3: ignore whitespace nodes --- dlls/msxml3