1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
		EXPORT __umodsi3
__umodsi3

var_4		= -4
arg_4		=  4

		SUBS	R2, R1,	#1
		BCC	loc_BC
		CMPNE	R0, R1
		MOVEQ	R0, #0
		TSTHI	R1, R2
		ANDEQ	R0, R0,	R2
		BXLS	LR
		MOV	R2, #0

loc_20					; CODE XREF: __umodsi3+30j
		CMP	R1, #0x10000000
		CMPCC	R1, R0
		MOVCC	R1, R1,LSL#4
		ADDCC	R2, R2,	#4
		BCC	loc_20

loc_34					; CODE XREF: __umodsi3+44j
		CMP	R1, #0x80000000
		CMPCC	R1, R0
		MOVCC	R1, R1,LSL#1
		ADDCC	R2, R2,	#1
		BCC	loc_34
		SUBS	R2, R2,	#3
		BLT	loc_8C

loc_50					; CODE XREF: __umodsi3+7Cj
		CMP	R0, R1
		SUBCS	R0, R0,	R1
		CMP	R0, R1,LSR#1
		SUBCS	R0, R0,	R1,LSR#1
		CMP	R0, R1,LSR#2
		SUBCS	R0, R0,	R1,LSR#2
		CMP	R0, R1,LSR#3
		SUBCS	R0, R0,	R1,LSR#3
		CMP	R0, #1
		MOV	R1, R1,LSR#4
		SUBGES	R2, R2,	#4
		BGE	loc_50
		TST	R2, #3
		TEQNE	R0, #0
		BEQ	locret_B8

loc_8C					; CODE XREF: __umodsi3+4Cj
		CMN	R2, #2
		BLT	loc_B0
		BEQ	loc_A4
		CMP	R0, R1
		SUBCS	R0, R0,	R1
		MOV	R1, R1,LSR#1

loc_A4					; CODE XREF: __umodsi3+94j
		CMP	R0, R1
		SUBCS	R0, R0,	R1
		MOV	R1, R1,LSR#1

loc_B0					; CODE XREF: __umodsi3+90j
		CMP	R0, R1
		SUBCS	R0, R0,	R1

locret_B8				; CODE XREF: __umodsi3+88j
		BX	LR
; ---------------------------------------------------------------------------

loc_BC					; CODE XREF: __umodsi3+4j
		STR	LR, [SP,#var_4]!
		BL	__div0		; PIC mode
		MOV	R0, #0
		LDR	PC, [SP],#arg_4
; End of function __umodsi3

; .text		ends

; ===========================================================================

; Segment type:	Zero-length
		AREA .data, DATA, ALIGN=0
		; ORG 0xCC
; .data		ends

; ===========================================================================

; Segment type:	Zero-length
		AREA .bss, DATA, ALIGN=0
		; ORG 0xCD
; .bss		ends

; ===========================================================================

; Segment type:	Externs
		IMPORT __div0		; CODE XREF: __umodsi3+C0p

		END