diff --git a/src/core/CMakeLists.txt b/src/core/CMakeLists.txt
index 3e1578969a..2168d9959e 100644
--- a/src/core/CMakeLists.txt
+++ b/src/core/CMakeLists.txt
@@ -110,13 +110,11 @@ set(HEADERS
             arm/dyncom/arm_dyncom_thumb.h
             arm/interpreter/arm_interpreter.h
             arm/skyeye_common/arm_regformat.h
-            arm/skyeye_common/armcpu.h
             arm/skyeye_common/armdefs.h
             arm/skyeye_common/armemu.h
             arm/skyeye_common/armmmu.h
             arm/skyeye_common/armos.h
             arm/skyeye_common/skyeye_defs.h
-            arm/skyeye_common/skyeye_types.h
             arm/skyeye_common/vfp/asm_vfp.h
             arm/skyeye_common/vfp/vfp.h
             arm/skyeye_common/vfp/vfp_helper.h
diff --git a/src/core/arm/dyncom/arm_dyncom.cpp b/src/core/arm/dyncom/arm_dyncom.cpp
index 9c4cc90f23..01ffbcc874 100644
--- a/src/core/arm/dyncom/arm_dyncom.cpp
+++ b/src/core/arm/dyncom/arm_dyncom.cpp
@@ -2,7 +2,6 @@
 // Licensed under GPLv2 or any later version
 // Refer to the license.txt file included.
 
-#include "core/arm/skyeye_common/armcpu.h"
 #include "core/arm/skyeye_common/armemu.h"
 #include "core/arm/skyeye_common/vfp/vfp.h"
 
diff --git a/src/core/arm/dyncom/arm_dyncom_dec.h b/src/core/arm/dyncom/arm_dyncom_dec.h
index 58784aeeaa..ee8ff59927 100644
--- a/src/core/arm/dyncom/arm_dyncom_dec.h
+++ b/src/core/arm/dyncom/arm_dyncom_dec.h
@@ -6,14 +6,6 @@
 
 #define BITS(a,b)   ((instr >> (a)) & ((1 << (1+(b)-(a)))-1))
 #define BIT(n)      ((instr >> (n)) & 1)
-#define BAD         do { printf("meet BAD at %s, instr is %x\n", __FUNCTION__, instr ); } while(0);
-#define ptr_N       cpu->ptr_N
-#define ptr_Z       cpu->ptr_Z
-#define ptr_C       cpu->ptr_C
-#define ptr_V       cpu->ptr_V
-#define ptr_I       cpu->ptr_I
-#define ptr_T       cpu->ptr_T
-#define ptr_CPSR    cpu->ptr_gpr[16]
 
 // For MUL instructions
 #define RDHi        ((instr >> 16) & 0xF)
@@ -49,24 +41,6 @@
 #define SBIT        BIT(20)
 #define DESTReg     (BITS (12, 15))
 
-// They are in unused state, give a corrent value when using
-#define IS_V5E 0
-#define IS_V5  0
-#define IS_V6  0
-#define LHSReg 0
-
-// Temp define the using the pc reg need implement a flow
-#define STORE_CHECK_RD_PC   ADD(R(RD), CONST(INSTR_SIZE * 2))
-
-#define OPERAND             operand(cpu,instr,bb,NULL)
-#define SCO_OPERAND(sco)    operand(cpu,instr,bb,sco)
-#define BOPERAND            boperand(instr)
-
-#define CHECK_RN_PC         (RN == 15 ? ADD(AND(R(RN), CONST(~0x1)), CONST(INSTR_SIZE * 2)) : R(RN))
-#define CHECK_RN_PC_WA      (RN == 15 ? ADD(AND(R(RN), CONST(~0x3)), CONST(INSTR_SIZE * 2)) : R(RN))
-
-#define GET_USER_MODE()     (OR(ICMP_EQ(R(MODE_REG), CONST(USER32MODE)), ICMP_EQ(R(MODE_REG), CONST(SYSTEM32MODE))))
-
 int decode_arm_instr(uint32_t instr, int32_t *idx);
 
 enum DECODE_STATUS {
@@ -83,23 +57,8 @@ struct instruction_set_encoding_item {
 
 typedef struct instruction_set_encoding_item ISEITEM;
 
-#define RECORD_WB(value, flag) { cpu->dyncom_engine->wb_value = value;cpu->dyncom_engine->wb_flag = flag; }
-#define INIT_WB(wb_value, wb_flag) RECORD_WB(wb_value, wb_flag)
-
-#define EXECUTE_WB(base_reg) { if(cpu->dyncom_engine->wb_flag) LET(base_reg, cpu->dyncom_engine->wb_value); }
-
-inline int get_reg_count(uint32_t instr) {
-    int i = BITS(0, 15);
-    int count = 0;
-    while (i) {
-        if (i & 1)
-            count++;
-        i = i >> 1;
-    }
-    return count;
-}
-
-enum ARMVER {
+// ARM versions
+enum {
     INVALID = 0,
     ARMALL,
     ARMV4,
diff --git a/src/core/arm/dyncom/arm_dyncom_run.h b/src/core/arm/dyncom/arm_dyncom_run.h
index c70522274a..b1c0daaf70 100644
--- a/src/core/arm/dyncom/arm_dyncom_run.h
+++ b/src/core/arm/dyncom/arm_dyncom_run.h
@@ -16,10 +16,7 @@
 *
 */
 
-#ifndef __ARM_DYNCOM_RUN__
-#define __ARM_DYNCOM_RUN__
-
-#include "core/arm/skyeye_common/skyeye_types.h"
+#pragma once
 
 void switch_mode(arm_core_t *core, uint32_t mode);
 
@@ -51,5 +48,3 @@ static inline addr_t CHECK_READ_REG15_WA(arm_core_t* core, int Rn) {
 static inline u32 CHECK_READ_REG15(arm_core_t* core, int Rn) {
     return (Rn == 15)? ((core->Reg[15] & ~0x1) + GET_INST_SIZE(core) * 2) : core->Reg[Rn];
 }
-
-#endif
diff --git a/src/core/arm/dyncom/arm_dyncom_thumb.h b/src/core/arm/dyncom/arm_dyncom_thumb.h
index bf69b2fd41..a1785abb87 100644
--- a/src/core/arm/dyncom/arm_dyncom_thumb.h
+++ b/src/core/arm/dyncom/arm_dyncom_thumb.h
@@ -24,11 +24,9 @@
 * @date 2011-11-07
 */
 
-#ifndef __ARM_DYNCOM_THUMB_H__
-#define __ARM_DYNCOM_THUMB_H__
+#pragma once
 
 #include "core/arm/skyeye_common/armdefs.h"
-#include "core/arm/skyeye_common/skyeye_types.h"
 
 enum tdstate {
     t_undefined,    // Undefined Thumb instruction
@@ -47,5 +45,3 @@ static inline u32 get_thumb_instr(u32 instr, addr_t pc) {
         tinstr = instr & 0xFFFF;
     return tinstr;
 }
-
-#endif
diff --git a/src/core/arm/skyeye_common/arm_regformat.h b/src/core/arm/skyeye_common/arm_regformat.h
index 4dac1a8bf4..9978747648 100644
--- a/src/core/arm/skyeye_common/arm_regformat.h
+++ b/src/core/arm/skyeye_common/arm_regformat.h
@@ -1,7 +1,6 @@
-#ifndef __ARM_REGFORMAT_H__
-#define __ARM_REGFORMAT_H__
+#pragma once
 
-enum arm_regno{
+enum {
     R0 = 0,
     R1,
     R2,
@@ -20,7 +19,7 @@ enum arm_regno{
     R15, //PC,
     CPSR_REG,
     SPSR_REG,
-#if 1
+
     PHYS_PC,
     R13_USR,
     R14_USR,
@@ -95,11 +94,9 @@ enum arm_regno{
     VFP_FPSID = VFP_BASE,
     VFP_FPSCR,
     VFP_FPEXC,
-#endif    
+
     MAX_REG_NUM,
 };
 
 #define CP15(idx)       (idx - CP15_BASE)
 #define VFP_OFFSET(x)   (x - VFP_BASE)
-
-#endif
diff --git a/src/core/arm/skyeye_common/armcpu.h b/src/core/arm/skyeye_common/armcpu.h
deleted file mode 100644
index 2b756c5bcf..0000000000
--- a/src/core/arm/skyeye_common/armcpu.h
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- *    arm
- *    armcpu.h
- *
- *    Copyright (C) 2003, 2004 Sebastian Biallas (sb@biallas.net)
- *
- *    This program is free software; you can redistribute it and/or modify
- *    it under the terms of the GNU General Public License version 2 as
- *    published by the Free Software Foundation.
- *
- *    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 for more details.
- *
- *    You should have received a copy of the GNU General Public License
- *    along with this program; if not, write to the Free Software
- *    Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
- */
-
-#ifndef __ARM_CPU_H__
-#define __ARM_CPU_H__
-
-#include <stddef.h>
-#include <stdio.h>
-
-#include "core/arm/skyeye_common/armdefs.h"
-
-typedef struct ARM_CPU_State_s {
-    ARMul_State * core;
-    uint32_t core_num;
-    /* The core id that boot from
-     */
-    uint32_t boot_core_id;
-}ARM_CPU_State;
-
-//static ARM_CPU_State* get_current_cpu(){
-//    machine_config_t* mach = get_current_mach();
-//    /* Casting a conf_obj_t to ARM_CPU_State type */
-//    ARM_CPU_State* cpu = (ARM_CPU_State*)mach->cpu_data->obj;
-//
-//    return cpu;
-//}
-
-/**
-* @brief Get the core instance boot from
-*
-* @return
-*/
-//static ARMul_State* get_boot_core(){
-//    ARM_CPU_State* cpu = get_current_cpu();
-//    return &cpu->core[cpu->boot_core_id];
-//}
-/**
-* @brief Get the instance of running core
-*
-* @return the core instance
-*/
-//static ARMul_State* get_current_core(){
-//    /* Casting a conf_obj_t to ARM_CPU_State type */
-//    int id = Common::CurrentThreadId();
-//    /* If thread is not in running mode, we should give the boot core */
-//    if(get_thread_state(id) != Running_state){
-//        return get_boot_core();
-//    }
-//    /* Judge if we are running in paralell or sequenial */
-//    if(thread_exist(id)){
-//        conf_object_t* conf_obj = get_current_exec_priv(id);
-//        return (ARMul_State*)get_cast_conf_obj(conf_obj, "arm_core_t");
-//    }
-//
-//    return NULL;
-//}
-
-#define CURRENT_CORE get_current_core()
-
-#endif
-
diff --git a/src/core/arm/skyeye_common/armemu.h b/src/core/arm/skyeye_common/armemu.h
index 686b2a3f66..7e10dad86e 100644
--- a/src/core/arm/skyeye_common/armemu.h
+++ b/src/core/arm/skyeye_common/armemu.h
@@ -14,14 +14,10 @@
     You should have received a copy of the GNU General Public License
     along with this program; if not, write to the Free Software
     Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
-#ifndef __ARMEMU_H__
-#define __ARMEMU_H__
 
+#pragma once
 
 #include "core/arm/skyeye_common/armdefs.h"
-//#include "skyeye.h"
-
-//extern ARMword isize;
 
 /* Shift Opcodes.  */
 #define LSL 0
@@ -625,6 +621,3 @@ extern unsigned DSPCDP5 (ARMul_State *, unsigned, ARMword);
 extern unsigned DSPMCR6 (ARMul_State *, unsigned, ARMword, ARMword);
 extern unsigned DSPMRC6 (ARMul_State *, unsigned, ARMword, ARMword *);
 extern unsigned DSPCDP6 (ARMul_State *, unsigned, ARMword);
-
-
-#endif
diff --git a/src/core/arm/skyeye_common/armmmu.h b/src/core/arm/skyeye_common/armmmu.h
index 30858f9ba9..6e54142ee5 100644
--- a/src/core/arm/skyeye_common/armmmu.h
+++ b/src/core/arm/skyeye_common/armmmu.h
@@ -18,19 +18,10 @@
     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */
 
-#ifndef _ARMMMU_H_
-#define _ARMMMU_H_
+#pragma once
 
-
-#define WORD_SHT			2
-#define WORD_SIZE			(1<<WORD_SHT)
-/* The MMU is accessible with MCR and MRC operations to copro 15: */
-
-#define MMU_COPRO			(15)
-
-/* Register numbers in the MMU: */
-
-typedef enum mmu_regnum_t
+// Register numbers in the MMU
+enum
 {
 	MMU_ID = 0,
 	MMU_CONTROL = 1,
@@ -44,94 +35,22 @@ typedef enum mmu_regnum_t
 	MMU_TLB_LOCKDOWN = 10,
 	MMU_PID = 13,
 
-	/*MMU_V4 */
+	// MMU_V4
 	MMU_V4_CACHE_OPS = 7,
 	MMU_V4_TLB_OPS = 8,
 
-	/*MMU_V3 */
+	// MMU_V3
 	MMU_V3_FLUSH_TLB = 5,
 	MMU_V3_FLUSH_TLB_ENTRY = 6,
 	MMU_V3_FLUSH_CACHE = 7,
 
-	/*MMU Intel SA-1100 */
+	// MMU Intel SA-1100
 	MMU_SA_RB_OPS = 9,
 	MMU_SA_DEBUG = 14,
 	MMU_SA_CP15_R15 = 15,
-	//chy 2003-08-24
-	/*Intel xscale CP15 */
+
+	// Intel xscale CP15
 	XSCALE_CP15_CACHE_TYPE = 0,
 	XSCALE_CP15_AUX_CONTROL = 1,
 	XSCALE_CP15_COPRO_ACCESS = 15,
-
-} mmu_regnum_t;
-
-/* Bits in the control register */
-
-#define CONTROL_MMU			(1<<0)
-#define CONTROL_ALIGN_FAULT		(1<<1)
-#define CONTROL_CACHE			(1<<2)
-#define CONTROL_DATA_CACHE		(1<<2)
-#define CONTROL_WRITE_BUFFER		(1<<3)
-#define CONTROL_BIG_ENDIAN		(1<<7)
-#define CONTROL_SYSTEM			(1<<8)
-#define CONTROL_ROM			(1<<9)
-#define CONTROL_UNDEFINED               (1<<10)
-#define CONTROL_BRANCH_PREDICT          (1<<11)
-#define CONTROL_INSTRUCTION_CACHE       (1<<12)
-#define CONTROL_VECTOR                  (1<<13)
-#define CONTROL_RR                      (1<<14)
-#define CONTROL_L4                      (1<<15)
-#define CONTROL_XP                      (1<<23)
-#define CONTROL_EE                      (1<<25)
-
-/*Macro defines for MMU state*/
-#define MMU_CTL (state->mmu.control)
-#define MMU_Enabled (state->mmu.control & CONTROL_MMU)
-#define MMU_Disabled (!(MMU_Enabled))
-#define MMU_Aligned (state->mmu.control & CONTROL_ALIGN_FAULT)
-
-#define MMU_ICacheEnabled (MMU_CTL & CONTROL_INSTRUCTION_CACHE)
-#define MMU_ICacheDisabled (!(MMU_ICacheDisabled))
-
-#define MMU_DCacheEnabled (MMU_CTL & CONTROL_DATA_CACHE)
-#define MMU_DCacheDisabled (!(MMU_DCacheEnabled))
-
-#define MMU_CacheEnabled (MMU_CTL & CONTROL_CACHE)
-#define MMU_CacheDisabled (!(MMU_CacheEnabled))
-
-#define MMU_WBEnabled (MMU_CTL & CONTROL_WRITE_BUFFER)
-#define MMU_WBDisabled (!(MMU_WBEnabled))
-
-/*virt_addr exchange according to CP15.R13(process id virtul mapping)*/
-#define PID_VA_MAP_MASK	0xfe000000
-//#define mmu_pid_va_map(va) ({\
-//	ARMword ret; \
-//	if ((va) & PID_VA_MAP_MASK)\
-//		ret = (va); \
-//	else \
-//		ret = ((va) | (state->mmu.process_id & PID_VA_MAP_MASK));\
-//	ret;\
-//})
-#define mmu_pid_va_map(va) ((va) & PID_VA_MAP_MASK) ? (va) : ((va) | (state->mmu.process_id & PID_VA_MAP_MASK))
-
-/* FS[3:0] in the fault status register: */
-
-typedef enum fault_t
-{
-	NO_FAULT = 0x0,
-	ALIGNMENT_FAULT = 0x1,
-
-	SECTION_TRANSLATION_FAULT = 0x5,
-	PAGE_TRANSLATION_FAULT = 0x7,
-	SECTION_DOMAIN_FAULT = 0x9,
-	PAGE_DOMAIN_FAULT = 0xB,
-	SECTION_PERMISSION_FAULT = 0xD,
-	SUBPAGE_PERMISSION_FAULT = 0xF,
-
-	/* defined by skyeye */
-	TLB_READ_MISS = 0x30,
-	TLB_WRITE_MISS = 0x40,
-
-} fault_t;
-
-#endif /* _ARMMMU_H_ */
+};
diff --git a/src/core/arm/skyeye_common/armos.h b/src/core/arm/skyeye_common/armos.h
index ffdadcd1cb..1217a728b0 100644
--- a/src/core/arm/skyeye_common/armos.h
+++ b/src/core/arm/skyeye_common/armos.h
@@ -1,38 +1,24 @@
 /*  armos.h -- ARMulator OS definitions:  ARM6 Instruction Emulator.
     Copyright (C) 1994 Advanced RISC Machines Ltd.
- 
+
     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; either version 2 of the License, or
     (at your option) any later version.
- 
+
     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 for more details.
- 
+
     You should have received a copy of the GNU General Public License
     along with this program; if not, write to the Free Software
-    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
+    Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
+*/
 
-#include <stdint.h>
-
-#if FAST_MEMORY
-/* in user mode, mmap_base will be on initial brk,
-   set at the first mmap request */
-#define mmap_base -1
-#else
-#define mmap_base 0x50000000
-#endif
-static long mmap_next_base = mmap_base;
-
-//static mmap_area_t* new_mmap_area(int sim_addr, int len);
-static char mmap_mem_write(short size, int addr, uint32_t value);
-static char mmap_mem_read(short size, int addr, uint32_t * value);
-
-/***************************************************************************\
-*                               SWI numbers                                 *
-\***************************************************************************/
+//
+// SWI Numbers
+//
 
 #define SWI_Syscall                0x0
 #define SWI_Exit                   0x1
@@ -44,8 +30,8 @@ static char mmap_mem_read(short size, int addr, uint32_t * value);
 #define SWI_Rename                 0x26
 #define SWI_Break                  0x11
 
-#define SWI_Times		   0x2b
-#define SWI_Brk			   0x2d
+#define SWI_Times                  0x2b
+#define SWI_Brk                    0x2d
 
 #define SWI_Mmap                   0x5a
 #define SWI_Munmap                 0x5b
@@ -56,76 +42,13 @@ static char mmap_mem_read(short size, int addr, uint32_t * value);
 #define SWI_GetEUID32              0xc9
 #define SWI_GetEGID32              0xca
 
-#define SWI_ExitGroup		   0xf8
+#define SWI_ExitGroup              0xf8
 
-#if 0
-#define SWI_Time                   0xd
-#define SWI_Clock                  0x61
-#define SWI_Time                   0x63
-#define SWI_Remove                 0x64
-#define SWI_Rename                 0x65
-#define SWI_Flen                   0x6c
-#endif
-
-#define SWI_Uname		   0x7a
-#define SWI_Fcntl                  0xdd 
-#define SWI_Fstat64  		   0xc5
+#define SWI_Uname                  0x7a
+#define SWI_Fcntl                  0xdd
+#define SWI_Fstat64                0xc5
 #define SWI_Gettimeofday           0x4e
 #define SWI_Set_tls                0xf0005
 
 #define SWI_Breakpoint             0x180000	/* see gdb's tm-arm.h */
 
-/***************************************************************************\
-*                             SWI structures                                *
-\***************************************************************************/
-
-/* Arm binaries (for now) only support 32 bit, and expect to receive
-   32-bit compliant structure in return of a systen call. Because
-   we use host system calls to emulate system calls, the returned
-   structure can be 32-bit compliant or 64-bit compliant, depending
-   on the OS running skyeye. Therefore, we need a fixed size structure
-   adapted to arm.*/
-
-/* Borrowed from qemu */
-struct target_stat64 {
-	unsigned short	st_dev;
-	unsigned char	__pad0[10];
-	uint32_t	__st_ino;
-	unsigned int	st_mode;
-	unsigned int	st_nlink;
-	uint32_t	st_uid;
-	uint32_t	st_gid;
-	unsigned short	st_rdev;
-	unsigned char	__pad3[10];
-	unsigned char	__pad31[4];
-	long long	st_size;
-	uint32_t	st_blksize;
-	unsigned char	__pad32[4];
-	uint32_t	st_blocks;
-	uint32_t	__pad4;
-	uint32_t	st32_atime;
-	uint32_t	__pad5;
-	uint32_t	st32_mtime;
-	uint32_t	__pad6;
-	uint32_t	st32_ctime;
-	uint32_t	__pad7;
-	unsigned long long	st_ino;
-};// __attribute__((packed));
-
-struct target_tms32 {
-    uint32_t tms_utime;
-    uint32_t tms_stime;
-    uint32_t tms_cutime;
-    uint32_t tms_cstime;
-};
-
-struct target_timeval32 {
-	uint32_t tv_sec;     /* seconds */
-	uint32_t tv_usec;    /* microseconds */
-};
-
-struct target_timezone32 {
-	int32_t tz_minuteswest;     /* minutes west of Greenwich */
-	int32_t tz_dsttime;         /* type of DST correction */
-};
-
diff --git a/src/core/arm/skyeye_common/skyeye_types.h b/src/core/arm/skyeye_common/skyeye_types.h
deleted file mode 100644
index fc7d8d9220..0000000000
--- a/src/core/arm/skyeye_common/skyeye_types.h
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
-        skyeye_types.h - some data types definition for skyeye debugger
-        Copyright (C) 2003 Skyeye Develop Group
-        for help please send mail to <skyeye-developer@lists.sf.linuxforum.net>
-
-        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; either version 2 of the License, or
-        (at your option) any later version.
-
-        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 for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program; if not, write to the Free Software
-        Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
-
-*/
-/*
- * 12/16/2006   Michael.Kang  <blackfin.kang@gmail.com>
- */
-
-#pragma once
-
-#include <cstdint>
-
-typedef uint32_t address_t;
-typedef uint32_t physical_address_t;
-typedef uint32_t generic_address_t;
diff --git a/src/core/arm/skyeye_common/vfp/asm_vfp.h b/src/core/arm/skyeye_common/vfp/asm_vfp.h
index f4ab34fd4f..e113eaf29f 100644
--- a/src/core/arm/skyeye_common/vfp/asm_vfp.h
+++ b/src/core/arm/skyeye_common/vfp/asm_vfp.h
@@ -5,6 +5,8 @@
  * First, the standard VFP set.
  */
 
+#pragma once
+
 #define FPSID			cr0
 #define FPSCR			cr1
 #define MVFR1			cr6
diff --git a/src/core/arm/skyeye_common/vfp/vfp.h b/src/core/arm/skyeye_common/vfp/vfp.h
index 5ff213e08d..09c7520db1 100644
--- a/src/core/arm/skyeye_common/vfp/vfp.h
+++ b/src/core/arm/skyeye_common/vfp/vfp.h
@@ -18,8 +18,7 @@
     Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 */
 
-#ifndef __VFP_H__
-#define __VFP_H__
+#pragma once
 
 #include "core/arm/skyeye_common/vfp/vfp_helper.h" /* for references to cdp SoftFloat functions */
 
@@ -109,5 +108,3 @@ int VLDR(ARMul_State * state, int type, ARMword instr, ARMword value);
 #ifdef __cplusplus
  }
 #endif
-
-#endif
diff --git a/src/core/arm/skyeye_common/vfp/vfp_helper.h b/src/core/arm/skyeye_common/vfp/vfp_helper.h
index b1949603aa..55e63f5539 100644
--- a/src/core/arm/skyeye_common/vfp/vfp_helper.h
+++ b/src/core/arm/skyeye_common/vfp/vfp_helper.h
@@ -30,8 +30,7 @@
  * published by the Free Software Foundation.
  */
 
-#ifndef __VFP_HELPER_H__
-#define __VFP_HELPER_H__
+#pragma once
 
 /* Custom edit */
 
@@ -536,5 +535,3 @@ u32 vfp_double_normaliseroundintern(ARMul_State* state, struct vfp_double *vd, u
 u32 vfp_double_multiply(struct vfp_double *vdd, struct vfp_double *vdn, struct vfp_double *vdm, u32 fpscr);
 u32 vfp_double_add(struct vfp_double *vdd, struct vfp_double *vdn, struct vfp_double *vdm, u32 fpscr);
 u32 vfp_double_fcvtsinterncutting(ARMul_State* state, int sd, struct vfp_double* dm, u32 fpscr);
-
-#endif