summaryrefslogtreecommitdiffstats
path: root/src/core
diff options
context:
space:
mode:
Diffstat (limited to 'src/core')
-rw-r--r--src/core/CMakeLists.txt45
-rw-r--r--src/core/arm/interpreter/mmu/maverick.cpp4
-rw-r--r--src/core/arm/interpreter/vfp/vfp_helper.h4
-rw-r--r--src/core/arm/interpreter/vfp/vfpdouble.cpp8
-rw-r--r--src/core/arm/interpreter/vfp/vfpsingle.cpp4
-rw-r--r--src/core/hle/function_wrappers.h15
6 files changed, 54 insertions, 26 deletions
diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
index fdf68c386..14c598bf3 100644
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -43,4 +43,47 @@ set(SRCS core.cpp
hw/lcd.cpp
hw/ndma.cpp)
-add_library(core STATIC ${SRCS})
+set(HEADERS core.h
+ core_timing.h
+ loader.h
+ mem_map.h
+ system.h
+ arm/disassembler/arm_disasm.h
+ arm/disassembler/load_symbol_map.h
+ arm/interpreter/arm_interpreter.h
+ arm/interpreter/arm_regformat.h
+ arm/interpreter/armcpu.h
+ arm/interpreter/armdefs.h
+ arm/interpreter/armemu.h
+ arm/interpreter/armmmu.h
+ arm/interpreter/armos.h
+ arm/interpreter/skyeye_defs.h
+ arm/interpreter/mmu/arm1176jzf_s_mmu.h
+ arm/interpreter/mmu/cache.h
+ arm/interpreter/mmu/rb.h
+ arm/interpreter/mmu/sa_mmu.h
+ arm/interpreter/mmu/tlb.h
+ arm/interpreter/mmu/wb.h
+ arm/interpreter/vfp/asm_vfp.h
+ arm/interpreter/vfp/vfp.h
+ arm/interpreter/vfp/vfp_helper.h
+ elf/elf_reader.h
+ elf/elf_types.h
+ file_sys/directory_file_system.h
+ file_sys/file_sys.h
+ file_sys/meta_file_system.h
+ hle/config_mem.h
+ hle/coprocessor.h
+ hle/hle.h
+ hle/syscall.h
+ hle/function_wrappers.h
+ hle/service/apt.h
+ hle/service/gsp.h
+ hle/service/hid.h
+ hle/service/service.h
+ hle/service/srv.h
+ hw/hw.h
+ hw/lcd.h
+ hw/ndma.h)
+
+add_library(core STATIC ${SRCS} ${HEADERS})
diff --git a/src/core/arm/interpreter/mmu/maverick.cpp b/src/core/arm/interpreter/mmu/maverick.cpp
index 0e98ef22b..adcc2efb5 100644
--- a/src/core/arm/interpreter/mmu/maverick.cpp
+++ b/src/core/arm/interpreter/mmu/maverick.cpp
@@ -86,12 +86,12 @@ static union
} reg_conv;
static void
-printf_nothing (void *foo, ...)
+printf_nothing (const char *foo, ...)
{
}
static void
-cirrus_not_implemented (char *insn)
+cirrus_not_implemented (const char *insn)
{
fprintf (stderr, "Cirrus instruction '%s' not implemented.\n", insn);
fprintf (stderr, "aborting!\n");
diff --git a/src/core/arm/interpreter/vfp/vfp_helper.h b/src/core/arm/interpreter/vfp/vfp_helper.h
index 80f9a93f4..b222e79f1 100644
--- a/src/core/arm/interpreter/vfp/vfp_helper.h
+++ b/src/core/arm/interpreter/vfp/vfp_helper.h
@@ -50,7 +50,7 @@
#define pr_info //printf
#define pr_debug //printf
-static u32 fls(int x);
+static u32 vfp_fls(int x);
#define do_div(n, base) {n/=base;}
/* From vfpinstr.h */
@@ -508,7 +508,7 @@ struct op {
u32 flags;
};
-static inline u32 fls(int x)
+static u32 vfp_fls(int x)
{
int r = 32;
diff --git a/src/core/arm/interpreter/vfp/vfpdouble.cpp b/src/core/arm/interpreter/vfp/vfpdouble.cpp
index cd5b5afa4..7f975cbeb 100644
--- a/src/core/arm/interpreter/vfp/vfpdouble.cpp
+++ b/src/core/arm/interpreter/vfp/vfpdouble.cpp
@@ -69,9 +69,9 @@ static void vfp_double_dump(const char *str, struct vfp_double *d)
static void vfp_double_normalise_denormal(struct vfp_double *vd)
{
- int bits = 31 - fls(vd->significand >> 32);
+ int bits = 31 - vfp_fls(vd->significand >> 32);
if (bits == 31)
- bits = 63 - fls(vd->significand);
+ bits = 63 - vfp_fls(vd->significand);
vfp_double_dump("normalise_denormal: in", vd);
@@ -108,9 +108,9 @@ u32 vfp_double_normaliseround(ARMul_State* state, int dd, struct vfp_double *vd,
exponent = vd->exponent;
significand = vd->significand;
- shift = 32 - fls(significand >> 32);
+ shift = 32 - vfp_fls(significand >> 32);
if (shift == 32)
- shift = 64 - fls(significand);
+ shift = 64 - vfp_fls(significand);
if (shift) {
exponent -= shift;
significand <<= shift;
diff --git a/src/core/arm/interpreter/vfp/vfpsingle.cpp b/src/core/arm/interpreter/vfp/vfpsingle.cpp
index 05279f5ce..602713cff 100644
--- a/src/core/arm/interpreter/vfp/vfpsingle.cpp
+++ b/src/core/arm/interpreter/vfp/vfpsingle.cpp
@@ -69,7 +69,7 @@ static void vfp_single_dump(const char *str, struct vfp_single *s)
static void vfp_single_normalise_denormal(struct vfp_single *vs)
{
- int bits = 31 - fls(vs->significand);
+ int bits = 31 - vfp_fls(vs->significand);
vfp_single_dump("normalise_denormal: in", vs);
@@ -111,7 +111,7 @@ u32 vfp_single_normaliseround(ARMul_State* state, int sd, struct vfp_single *vs,
* bit 31, so we have VFP_SINGLE_LOW_BITS + 1 below the least
* significant bit.
*/
- shift = 32 - fls(significand);
+ shift = 32 - vfp_fls(significand);
if (shift < 32 && shift) {
exponent -= shift;
significand <<= shift;
diff --git a/src/core/hle/function_wrappers.h b/src/core/hle/function_wrappers.h
index 18b01b14b..d934eafb4 100644
--- a/src/core/hle/function_wrappers.h
+++ b/src/core/hle/function_wrappers.h
@@ -83,15 +83,6 @@ template<u32 func(int, void *)> void WrapU_IV() {
RETURN(retval);
}
-template<float func()> void WrapF_V() {
- RETURNF(func());
-}
-
-// TODO: Not sure about the floating point parameter passing
-template<float func(int, float, u32)> void WrapF_IFU() {
- RETURNF(func(PARAM(0), PARAMF(0), PARAM(1)));
-}
-
template<u32 func(u32)> void WrapU_U() {
u32 retval = func(PARAM(0));
RETURN(retval);
@@ -127,12 +118,6 @@ template<int func(u32, u32)> void WrapI_UU() {
RETURN(retval);
}
-template<int func(u32, float, float)> void WrapI_UFF() {
- // Not sure about the float arguments.
- int retval = func(PARAM(0), PARAMF(0), PARAMF(1));
- RETURN(retval);
-}
-
template<int func(u32, u32, u32)> void WrapI_UUU() {
int retval = func(PARAM(0), PARAM(1), PARAM(2));
RETURN(retval);