From e09f404bd0f873b03f9c087bf6555c542a024359 Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Tue, 26 Jul 2016 07:53:07 +0000 Subject: [PATCH] d3dx10: Add D3DXCpuOptimizations stub. Signed-off-by: Alistair Leslie-Hughes Signed-off-by: Matteo Bruni Signed-off-by: Alexandre Julliard --- dlls/d3dx10_43/d3dx10_43.spec | 2 +- dlls/d3dx10_43/d3dx10_43_main.c | 10 ++++++-- include/Makefile.in | 1 + include/d3dx10.h | 1 + include/d3dx10math.h | 45 +++++++++++++++++++++++++++++++++ 5 files changed, 56 insertions(+), 3 deletions(-) create mode 100644 include/d3dx10math.h diff --git a/dlls/d3dx10_43/d3dx10_43.spec b/dlls/d3dx10_43/d3dx10_43.spec index ab696e872ad..f410be8b832 100644 --- a/dlls/d3dx10_43/d3dx10_43.spec +++ b/dlls/d3dx10_43/d3dx10_43.spec @@ -70,7 +70,7 @@ @ stdcall D3DXColorAdjustSaturation(ptr ptr float) d3dx9_36.D3DXColorAdjustSaturation @ stdcall D3DXComputeBoundingBox(ptr long long ptr ptr) d3dx9_36.D3DXComputeBoundingBox @ stdcall D3DXComputeBoundingSphere(ptr long long ptr ptr) d3dx9_36.D3DXComputeBoundingSphere -@ stub D3DXCpuOptimizations(long) +@ stdcall D3DXCpuOptimizations(long) @ stdcall D3DXCreateMatrixStack(long ptr) d3dx9_36.D3DXCreateMatrixStack @ stdcall D3DXFloat16To32Array(ptr ptr long) d3dx9_36.D3DXFloat16To32Array @ stdcall D3DXFloat32To16Array(ptr ptr long) d3dx9_36.D3DXFloat32To16Array diff --git a/dlls/d3dx10_43/d3dx10_43_main.c b/dlls/d3dx10_43/d3dx10_43_main.c index 0c1ff801e8c..7308373fa89 100644 --- a/dlls/d3dx10_43/d3dx10_43_main.c +++ b/dlls/d3dx10_43/d3dx10_43_main.c @@ -34,8 +34,7 @@ #include "objbase.h" #include "d3d10_1.h" -#include "d3dx10core.h" -#include "d3dx10tex.h" +#include "d3dx10.h" WINE_DEFAULT_DEBUG_CHANNEL(d3dx); @@ -210,3 +209,10 @@ HRESULT WINAPI D3DX10GetImageInfoFromMemory(const void *src_data, SIZE_T src_dat return E_NOTIMPL; } + +D3DX_CPU_OPTIMIZATION WINAPI D3DXCpuOptimizations(BOOL enable) +{ + FIXME("enable %#x stub.\n", enable); + + return D3DX_NOT_OPTIMIZED; +} diff --git a/include/Makefile.in b/include/Makefile.in index 9c20f28a2de..4aaefaf8768 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -256,6 +256,7 @@ HEADER_SRCS = \ d3dvec.inl \ d3dx10.h \ d3dx10async.h \ + d3dx10math.h \ d3dx10tex.h \ d3dx11.h \ d3dx11async.h \ diff --git a/include/d3dx10.h b/include/d3dx10.h index dd423a53086..fb48723b5f3 100644 --- a/include/d3dx10.h +++ b/include/d3dx10.h @@ -27,6 +27,7 @@ #define DXGI_FORMAT_FROM_FILE ((DXGI_FORMAT)0xfffffffdu) #include "d3d10.h" +#include "d3dx10math.h" #include "d3dx10core.h" #include "d3dx10async.h" #include "d3dx10tex.h" diff --git a/include/d3dx10math.h b/include/d3dx10math.h new file mode 100644 index 00000000000..a96784b1089 --- /dev/null +++ b/include/d3dx10math.h @@ -0,0 +1,45 @@ +/* + * Copyright (C) 2016 Alistair Leslie-Hughes + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA + */ + +#include "d3dx10.h" + +/* This guard is the same as D3DX9 to prevent double-inclusion */ +#ifndef __D3DX9MATH_H__ +#define __D3DX9MATH_H__ + +#include + +typedef enum _D3DX_CPU_OPTIMIZATION +{ + D3DX_NOT_OPTIMIZED, + D3DX_3DNOW_OPTIMIZED, + D3DX_SSE2_OPTIMIZED, + D3DX_SSE_OPTIMIZED +} D3DX_CPU_OPTIMIZATION; + +#ifdef __cplusplus +extern "C" { +#endif + +D3DX_CPU_OPTIMIZATION WINAPI D3DXCpuOptimizations(BOOL enable); + +#ifdef __cplusplus +} +#endif + +#endif /* __D3DX9MATH_H__ */