Subversion Repositories Kolibri OS

Rev

Rev 692 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 692 Rev 992
Line 1... Line 1...
1
symbol_dump:
1
symbol_dump:
Line 2... Line 2...
2
 
2
 
3
	push	edi
3
	push	edi
4
	mov	edx,[memory_end]
4
	mov	edx,[memory_end]
5
      dump_symbols:
5
      symb_dump:
6
	cmp	edx,[labels_list]
6
	cmp	edx,[labels_list]
7
	jbe	symbols_dumped
7
	jbe	symbols_dumped
8
	sub	edx,LABEL_STRUCTURE_SIZE
8
	sub	edx,LABEL_STRUCTURE_SIZE
9
	cmp	dword [edx+24],0
9
	cmp	dword [edx+24],0
10
	je	dump_symbols	; do not dump anonymous symbols
10
	je	symb_dump	; do not dump anonymous symbols
11
	test	byte [edx+8],1
11
	test	byte [edx+8],1
12
	jz	dump_symbols	; do not dump symbols that didn't get defined
12
	jz	symb_dump	; do not dump symbols that didn't get defined
13
	mov	ax,[current_pass]
13
	mov	ax,[current_pass]
14
	cmp	ax,[edx+16]
14
	cmp	ax,[edx+16]
15
	jne	dump_symbols
15
	jne	symb_dump
16
	test	byte [edx+8],4 or 2
16
	test	byte [edx+8],4 or 2
17
	jnz	dump_symbols	; do not dump assembly-time variables
17
	jnz	symb_dump	; do not dump assembly-time variables
18
				; do not dump variables defined with '='
18
				; do not dump variables defined with '='
19
	cmp	word [edx+12], 0
19
	cmp	word [edx+12], 0
Line 20... Line 20...
20
	jnz	dump_symbols	; do not dump register-based variables
20
	jnz	symb_dump	; do not dump register-based variables
21
 
21
 
22
	mov	al, '0'
22
	mov	al, '0'
23
	stosb
23
	stosb
Line 71... Line 71...
71
	rep	movsb
71
	rep	movsb
Line 72... Line 72...
72
 
72
 
73
	mov	ax,0A0Dh
73
	mov	ax,0A0Dh
Line 74... Line 74...
74
	stosw
74
	stosw
Line 75... Line 75...
75
 
75
 
76
	jmp	dump_symbols
76
	jmp	symb_dump
77
 
77
 
78
      symbols_dumped:
78
      symbols_dumped: