Add structure for NEON color conversion funcs.

This commit is contained in:
Unknown W. Brackets 2015-05-17 13:54:41 -07:00
parent 1767bd958c
commit 7269574a10
8 changed files with 59 additions and 1 deletions

View File

@ -290,7 +290,8 @@ set(CommonExtra)
if(ARM)
set(CommonExtra ${CommonExtra}
Common/ArmCPUDetect.cpp
Common/ArmThunk.cpp)
Common/ArmThunk.cpp
Common/ColorConvNEON.cpp)
elseif(X86)
set(CommonExtra ${CommonExtra}
Common/ABI.cpp

View File

@ -16,6 +16,8 @@
// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
#include "ColorConv.h"
// NEON is in a separate file so that it can be compiled with a runtime check.
#include "ColorConvNEON.h"
#include "Common.h"
#include "CPUDetect.h"

23
Common/ColorConvNEON.cpp Normal file
View File

@ -0,0 +1,23 @@
// Copyright (c) 2015- PPSSPP Project.
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, version 2.0 or later versions.
// This program 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 General Public License 2.0 for more details.
// A copy of the GPL 2.0 should have been included with the program.
// If not, see http://www.gnu.org/licenses/
// Official git repository and contact information can be found at
// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
#include <arm_neon.h>
#include "ColorConvNEON.h"
#include "Common.h"
#include "CPUDetect.h"
// TODO: NEON color conversion funcs.

20
Common/ColorConvNEON.h Normal file
View File

@ -0,0 +1,20 @@
// Copyright (c) 2015- PPSSPP Project.
// This program is free software: you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, version 2.0 or later versions.
// This program 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 General Public License 2.0 for more details.
// A copy of the GPL 2.0 should have been included with the program.
// If not, see http://www.gnu.org/licenses/
// Official git repository and contact information can be found at
// https://github.com/hrydgard/ppsspp and http://www.ppsspp.org/.
#pragma once
#include "ColorConv.h"

View File

@ -194,6 +194,7 @@
<ClInclude Include="Atomic_GCC.h" />
<ClInclude Include="Atomic_Win32.h" />
<ClInclude Include="BitSet.h" />
<ClInclude Include="ColorConvNEON.h" />
<ClInclude Include="ChunkFile.h" />
<ClInclude Include="CodeBlock.h" />
<ClInclude Include="ColorConv.h" />
@ -242,6 +243,12 @@
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="ColorConvNEON.cpp">
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Debug|x64'">true</ExcludedFromBuild>
<ExcludedFromBuild Condition="'$(Configuration)|$(Platform)'=='Release|x64'">true</ExcludedFromBuild>
</ClCompile>
<ClCompile Include="ChunkFile.cpp" />
<ClCompile Include="ColorConv.cpp" />
<ClCompile Include="ConsoleListener.cpp" />

View File

@ -46,6 +46,7 @@
<ClInclude Include="BitSet.h" />
<ClInclude Include="CodeBlock.h" />
<ClInclude Include="ColorConv.h" />
<ClInclude Include="ColorConvNEON.h" />
</ItemGroup>
<ItemGroup>
<ClCompile Include="stdafx.cpp" />
@ -81,6 +82,7 @@
<ClCompile Include="MipsEmitter.cpp" />
<ClCompile Include="Arm64Emitter.cpp" />
<ClCompile Include="ColorConv.cpp" />
<ClCompile Include="ColorConvNEON.cpp" />
</ItemGroup>
<ItemGroup>
<None Include="CMakeLists.txt" />

View File

@ -43,6 +43,8 @@ win32 {
HEADERS += $$P/Common/MemArena.h
}
armv7: SOURCES += $$P/Common/ColorConvNEON.cpp
SOURCES += $$P/Common/ChunkFile.cpp \
$$P/Common/ColorConv.cpp \
$$P/Common/ConsoleListener.cpp \

View File

@ -58,6 +58,7 @@ ARCH_FILES := \
$(SRC)/Common/ArmEmitter.cpp \
$(SRC)/Common/ArmCPUDetect.cpp \
$(SRC)/Common/ArmThunk.cpp \
$(SRC)/Common/ColorConvNEON.cpp.neon \
$(SRC)/Core/MIPS/ARM/ArmCompALU.cpp \
$(SRC)/Core/MIPS/ARM/ArmCompBranch.cpp \
$(SRC)/Core/MIPS/ARM/ArmCompFPU.cpp \