summaryrefslogtreecommitdiff
path: root/utils/hwstub/stmp/config.h
diff options
context:
space:
mode:
Diffstat (limited to 'utils/hwstub/stmp/config.h')
-rw-r--r--utils/hwstub/stmp/config.h29
1 files changed, 26 insertions, 3 deletions
diff --git a/utils/hwstub/stmp/config.h b/utils/hwstub/stmp/config.h
index 6bd995e147..9d6de07f33 100644
--- a/utils/hwstub/stmp/config.h
+++ b/utils/hwstub/stmp/config.h
@@ -18,8 +18,8 @@
18 * KIND, either express or implied. 18 * KIND, either express or implied.
19 * 19 *
20 ****************************************************************************/ 20 ****************************************************************************/
21#ifndef __HWEMUL_CONFIG__ 21#ifndef __HWSTUB_CONFIG__
22#define __HWEMUL_CONFIG__ 22#define __HWSTUB_CONFIG__
23 23
24#define MEMORYSIZE 0 24#define MEMORYSIZE 0
25#define STACK_SIZE 0x1000 25#define STACK_SIZE 0x1000
@@ -30,4 +30,27 @@
30#define DRAM_ORIG 0x40000000 30#define DRAM_ORIG 0x40000000
31#define DRAM_SIZE (MEMORYSIZE * 0x100000) 31#define DRAM_SIZE (MEMORYSIZE * 0x100000)
32 32
33#endif /* __HWEMUL_CONFIG__ */ 33#define CPU_ARM
34#define ARM_ARCH 5
35
36#if defined(CPU_ARM) && defined(__ASSEMBLER__)
37/* ARMv4T doesn't switch the T bit when popping pc directly, we must use BX */
38.macro ldmpc cond="", order="ia", regs
39#if ARM_ARCH == 4 && defined(USE_THUMB)
40 ldm\cond\order sp!, { \regs, lr }
41 bx\cond lr
42#else
43 ldm\cond\order sp!, { \regs, pc }
44#endif
45.endm
46.macro ldrpc cond=""
47#if ARM_ARCH == 4 && defined(USE_THUMB)
48 ldr\cond lr, [sp], #4
49 bx\cond lr
50#else
51 ldr\cond pc, [sp], #4
52#endif
53.endm
54#endif
55
56#endif /* __HWSTUB_CONFIG__ */