tinycc-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Tinycc-devel] WinCE ARM code


From: Timo VJ Lähde
Subject: [Tinycc-devel] WinCE ARM code
Date: Thu, 15 Apr 2010 18:21:10 +0300

tcc compiled with TCC_TARGET_ARM and TCC_TARGET_PE

tcc MsgBox.c -nostdlib -lcoredll

--------------------------------------------------------------------
/* MsgBox.c */
void _start(void)
{
MessageBoxW(0, "T\0e\0s\0t\0", "T\0e\0s\0t\0", 0);
}
--------------------------------------------------------------------
Dump of MsgBoxCE-4.exe

File type: EXE

 [00011000] E1A0C00D     mov           ip, sp
 [00011004] E92D5800     stmdb         sp!, {fp, ip, lr}
 [00011008] E28DB00C     add           fp, sp, #C
 [0001100C] E1A00000     nop  ; = mov r0,r0
 [00011010] E3A00000     mov           r0, #0
 [00011014] E59F1000     ldr           r1, [pc]  ; PC+8+0 = 0001101C
 [00011018] EA000000     b             00011020
 [0001101C] 00012000     andeq         r2, r1, r0
 [00011020] E59F2000     ldr           r2, [pc]  ; PC+8+0 = 00011028
 [00011024] EA000000     b             0001102C
 [00011028] 00012009     andeq         r2, r1, r9
 [0001102C] E3A03000     mov           r3, #0
 [00011030] EB000000     bl            00011038
 [00011034] E91BA800     ldmdb         fp, {fp, sp, pc}
 [00011038] 204825FF     strcsd        r2, [r8], #-5F
 [0001103C] 00000001     andeq         r0, r0, r1
 [00011040] 00000000     andeq         r0, r0, r0
 [00011044] 00000000     andeq         r0, r0, r0
...
--------------------------------------------------------------------
Is that correct code ?

 [00011038] 204825FF     strcsd        r2, [r8], #-5F
 [0001103C] 00000001     andeq         r0, r0, r1

Should it be more something like this:
 [00011038] E59FC000     ldr           ip, [pc]  ; PC+8+0 = 00011040
 [0001103C] E59CF000     ldr           pc, [ip]
 [00011040] 00012030     andeq         r2, r1, r0, lsr r0






reply via email to

[Prev in Thread] Current Thread [Next in Thread]