📄 gui__strcmp.txt
字号:
; generated by ARM C/C++ Compiler with , RVCT4.0 [Build 524] for uVision
; commandline ArmCC [--split_sections --debug -c --asm --interleave -o.\Obj\gui__strcmp.o --depend=.\Obj\gui__strcmp.d --device=DARMSTM --apcs=interwork -O3 -I..\..\include -I..\..\..\FWLib\library\inc -I..\..\..\USBLib\library\inc -I..\..\Config -I..\..\GUI\Core -I..\..\GUI\Font -I..\..\GUI\ConvertColor -I..\..\GUI\AntiAlias -I..\..\GUI\ConvertMono -I..\..\GUI\JPEG -I..\..\GUI\MemDev -I..\..\GUI\MultiLayer -I..\..\GUI\Widget -I..\..\GUI\WM -IC:\Keil\ARM\INC\ST\STM32F10x ..\..\GUI\Core\GUI__strcmp.c]
THUMB
AREA ||i.GUI__strcmp||, CODE, READONLY, ALIGN=2
GUI__strcmp PROC
;;;40 */
;;;41 int GUI__strcmp(const char GUI_UNI_PTR * s0, const char GUI_UNI_PTR * s1) {
000000 b900 CBNZ r0,|L1.4|
;;;42 if (s0 == NULL) {
;;;43 s0 = "";
000002 a008 ADR r0,|L1.36|
|L1.4|
;;;44 }
;;;45 if (s1 == NULL) {
000004 b901 CBNZ r1,|L1.8|
;;;46 s1 = "";
000006 a107 ADR r1,|L1.36|
|L1.8|
;;;47 }
;;;48 do {
;;;49 if (*s0 != *s1) {
000008 7802 LDRB r2,[r0,#0]
00000a 780b LDRB r3,[r1,#0]
00000c 429a CMP r2,r3
00000e d107 BNE |L1.32|
;;;50 return 1;
;;;51 }
;;;52 s1++;
;;;53 } while (*++s0);
000010 f8102f01 LDRB r2,[r0,#1]!
000014 1c49 ADDS r1,r1,#1 ;52
000016 2a00 CMP r2,#0
000018 d1f6 BNE |L1.8|
;;;54 if (*s1) {
00001a 7808 LDRB r0,[r1,#0]
00001c 2800 CMP r0,#0
00001e d000 BEQ |L1.34|
|L1.32|
;;;55 return 1; /* Not equal, since s1 is longer than s0 */
000020 2001 MOVS r0,#1
|L1.34|
;;;56 }
;;;57 return 0; /* Equal ! */
;;;58 }
000022 4770 BX lr
;;;59
ENDP
|L1.36|
000024 00 DCB 0
000025 00 DCB 0
000026 00 DCB 0
000027 00 DCB 0
AREA ||i.GUI__strcmp_hp||, CODE, READONLY, ALIGN=1
GUI__strcmp_hp PROC
;;;71 */
;;;72 int GUI__strcmp_hp(GUI_HMEM hs0, const char GUI_UNI_PTR * s1) {
000000 b510 PUSH {r4,lr}
000002 0002 MOVS r2,r0
000004 460c MOV r4,r1
;;;73 const char* s0 = NULL;
000006 f04f0000 MOV r0,#0
;;;74 if (hs0) {
00000a d002 BEQ |L2.18|
;;;75 s0 = (const char*)GUI_ALLOC_h2p(hs0);
00000c 4610 MOV r0,r2
00000e f7fffffe BL GUI_ALLOC_h2p
|L2.18|
;;;76 }
;;;77 return GUI__strcmp(s0, s1);
000012 4621 MOV r1,r4
000014 e8bd4010 POP {r4,lr}
000018 f7ffbffe B.W GUI__strcmp
;;;78 }
;;;79
ENDP
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -