All pastes #185425 Raw Edit

Untitled

public text v1 · immutable
#185425 ·published 2006-09-28 22:42 UTC
rendered paste body
	.file "main.pp"
# Begin asmlist al_begin

.section .debug_line
.Ldebug_line0:

.section .debug_abbrev
.Ldebug_abbrev0:

.section .text
.Ltext0:
# End asmlist al_begin
# Begin asmlist al_stabs
# End asmlist al_stabs
# Begin asmlist al_procedures

.section .text.main
	.balign 4
.globl	PASCALMAIN
PASCALMAIN:
.globl	main
main:
# Temps allocated between r11-40 and r11-40
	# Register r13,r11,r12 allocated
.Ll1:
# [main.pp]
# [18] begin
	mov	r12,r13
	stmfd	r13!,{r11,r12,r14,r15}
	sub	r11,r12,#4
	# Register r12 released
	sub	r13,r13,#40
# Var blockLayer located in register r0
	# Register r0,r1,r2,r3,r12,r13,r14,r15,f0,f1,f2,f3 allocated
	bl	FPC_INITIALIZEUNITS
	# Register r0,r1,r2,r3,r12,r13,r14,r15,f0,f1,f2,f3 released
	# Register r0 allocated
	# Register r0 released
.Ll2:
	mov	r0,#0
	# Register r0 allocated
.Ll3:
# [19] blockLayer := MEMBGMAP(30);
	mov	r0,#30
	# Register r1,r2,r3,r12,r13,r14,r15 allocated
	bl	GBA_BG_MEMBGMAP$WORD$$POINTER
	# Register r1,r2,r3,r12,r13,r14,r15 released
	# Register r1 allocated
.Ll4:
# [20] SetMode(MODE_3 or BG2_ENABLE);
	ldr	r1,.Lj9
	# Register r2 allocated
	ldr	r2,.Lj13
	ldr	r2,[r2]
	# Register r2,r1 released
	str	r1,[r2]
	# Register r1 allocated
.Ll5:
# [22] sMap[2] := 15;
	mov	r1,#15
	# Register r2 allocated
	ldr	r2,.Lj16
	# Register r1,r2 released
	strh	r1,[r2]
	# Register r1 allocated
.Ll6:
# [25] blockLayer[2] := sMap[2];
	mov	r1,r0
	# Register r3 allocated
	ldr	r3,.Lj19
	# Register r2 allocated
	ldrb	r2,[r3]
	# Register r2 released
	strb	r2,[r1, #4]
	# Register r3 released
	# Register r2 allocated
	ldrb	r2,[r3, #1]
	# Register r1,r2 released
	strb	r2,[r1, #5]
.Ll7:
# [31] if blockLayer[2] = 15 then
	ldrh	r0,[r0, #4]
	# Register r0 released
	cmp	r0,#15
	beq	.Lj20
	b	.Lj21
.Lj20:
	# Register r0 allocated
.Ll8:
# [32] VideoBuffer[16000] := $001F;  // Never reached if USE_SWAP is undefined
	ldr	r0,.Lj24
	ldr	r0,[r0]
	# Register r1 allocated
	mov	r1,#31
	# Register r2 allocated
	mov	r2,#32000
	# Register r0,r1,r2 released
	strh	r1,[r0, r2]
.Lj21:
.Ll9:
# [33] end.
	bl	FPC_DO_EXIT
	ldmea	r11,{r11,r13,r15}
.Lj9:
	.long	1027
.Lj13:
	.long	TC_GBA_REGS_REG_DISPCNT
.Lj16:
	.long	U_P$MAIN_SMAP+4
.Lj19:
	.long	U_P$MAIN_SMAP+4
.Lj24:
	.long	TC_GBA_REGS_VIDEOBUFFER
.Lt1:
.Le0:
	.size	main, .Le0 - main
# End asmlist al_procedures
# Begin asmlist al_globals

.section .bss
	.balign 4
# [14] sMap: array [0..4] of u16;
	.globl U_P$MAIN_SMAP
	.size U_P$MAIN_SMAP,10
U_P$MAIN_SMAP:
	.zero 10

.section .bss
	.balign 4
# [15] blockLayer: pu16;
	.globl U_P$MAIN_BLOCKLAYER
	.size U_P$MAIN_BLOCKLAYER,4
U_P$MAIN_BLOCKLAYER:
	.zero 4

.section .data.THREADVARLIST_P$MAIN
	.balign 4
.globl	THREADVARLIST_P$MAIN
THREADVARLIST_P$MAIN:
	.long	0
# [34] 
.Le1:
	.size	THREADVARLIST_P$MAIN, .Le1 - THREADVARLIST_P$MAIN

.section .data.INITFINAL
	.balign 4
.globl	INITFINAL
INITFINAL:
	.long	2,0
	.long	INIT$_SYSTEM
	.long	FINALIZE$_SYSTEM
	.long	INIT$_OBJPAS
	.long	FINALIZE$_OBJPAS
.Le2:
	.size	INITFINAL, .Le2 - INITFINAL

.section .data.FPC_THREADVARTABLES
	.balign 4
.globl	FPC_THREADVARTABLES
FPC_THREADVARTABLES:
	.long	7
	.long	THREADVARLIST_SYSTEM
	.long	THREADVARLIST_OBJPAS
	.long	THREADVARLIST_GBA_TYPES
	.long	THREADVARLIST_GBA_REGS
	.long	THREADVARLIST_GBA_VIDEO
	.long	THREADVARLIST_GBA_BG
	.long	THREADVARLIST_P$MAIN
.Le3:
	.size	FPC_THREADVARTABLES, .Le3 - FPC_THREADVARTABLES

.section .data.FPC_RESOURCESTRINGTABLES
	.balign 4
.globl	FPC_RESOURCESTRINGTABLES
FPC_RESOURCESTRINGTABLES:
	.long	0
.Le4:
	.size	FPC_RESOURCESTRINGTABLES, .Le4 - FPC_RESOURCESTRINGTABLES

.section .data
	.balign 4
	.ascii	"FPC 2.1.1 [2006/09/24] for arm - gba"

.section .data.__stklen
	.balign 4
.globl	__stklen
__stklen:
	.long	262144

.section .data.__heapsize
	.balign 4
.globl	__heapsize
__heapsize:
	.long	0
# End asmlist al_globals
# Begin asmlist al_const
# End asmlist al_const
# Begin asmlist al_typedconsts
# End asmlist al_typedconsts
# Begin asmlist al_rotypedconsts
# End asmlist al_rotypedconsts
# Begin asmlist al_threadvars
# End asmlist al_threadvars
# Begin asmlist al_imports
# End asmlist al_imports
# Begin asmlist al_exports
# End asmlist al_exports
# Begin asmlist al_resources
# End asmlist al_resources
# Begin asmlist al_rtti
# End asmlist al_rtti
# Begin asmlist al_dwarf
# End asmlist al_dwarf
# Begin asmlist al_dwarf_info

.section .debug_info
.Ldebug_info0:
	.long	.Ledebug_info0-.Lf1
.Lf1:
	.short	2
	.long	.Ldebug_abbrev0
	.byte	4
	.uleb128	1
	.ascii	"main.pp\000"
	.ascii	"Free Pascal 2.1.1 2006/09/24\000"
	.ascii	"\000"
	.byte	9
	.byte	3
	.long	.Ldebug_line0
	.long	.Ltext0
	.long	.Letext0
# Syms - Begin Staticsymtable
	.uleb128	2
	.ascii	"main\000"
	.long	main
	.long	.Lt1
	.byte	0
	.uleb128	3
	.ascii	"SMAP\000"
	.byte	1
	.byte	5
	.byte	3
	.long	U_P$MAIN_SMAP
	.long	_$PROGRAM$_Ld1
	.uleb128	4
	.ascii	"BLOCKLAYER\000"
	.byte	1
	.byte	2
	.byte	144
	.uleb128	0
	.long	_$PROGRAM$_Ld2
# Syms - End Staticsymtable
# Defs - Begin unit SYSTEM has index 1
# Defs - End unit SYSTEM has index 1
# Defs - Begin unit OBJPAS has index 6
# Defs - End unit OBJPAS has index 6
# Defs - Begin unit GBA_TYPES has index 2
_$PROGRAM$_Ld3:
	.uleb128	5
	.ascii	"WORD\000"
	.byte	7
	.byte	2
_$PROGRAM$_Ld2:
	.uleb128	6
	.long	_$PROGRAM$_Ld3
# Defs - End unit GBA_TYPES has index 2
# Defs - Begin unit GBA_REGS has index 4
# Defs - End unit GBA_REGS has index 4
# Defs - Begin unit GBA_VIDEO has index 3
# Defs - End unit GBA_VIDEO has index 3
# Defs - Begin unit GBA_BG has index 5
# Defs - End unit GBA_BG has index 5
# Defs - Begin Staticsymtable
_$PROGRAM$_Ld4:
	.uleb128	7
	.ascii	"SHORTINT\000"
	.byte	5
	.byte	1
_$PROGRAM$_Ld1:
	.uleb128	8
	.uleb128	10
	.uleb128	16
	.long	_$PROGRAM$_Ld3
	.uleb128	9
	.sleb128	0
	.sleb128	4
	.long	_$PROGRAM$_Ld4
	.byte	0
# Defs - End Staticsymtable
	.byte	0
	.byte	0
.Ledebug_info0:
# End asmlist al_dwarf_info
# Begin asmlist al_dwarf_abbrev

.section .debug_abbrev
# Abbrev 1
	.uleb128	1
	.uleb128	17
	.byte	1
	.uleb128	3
	.uleb128	8
	.uleb128	37
	.uleb128	8
	.uleb128	27
	.uleb128	8
	.uleb128	19
	.uleb128	11
	.uleb128	66
	.uleb128	11
	.uleb128	16
	.uleb128	6
	.uleb128	17
	.uleb128	1
	.uleb128	18
	.uleb128	1
	.byte	0
	.byte	0
# Abbrev 2
	.uleb128	2
	.uleb128	46
	.byte	1
	.uleb128	3
	.uleb128	8
	.uleb128	17
	.uleb128	1
	.uleb128	18
	.uleb128	1
	.byte	0
	.byte	0
# Abbrev 3
	.uleb128	3
	.uleb128	52
	.byte	0
	.uleb128	3
	.uleb128	8
	.uleb128	63
	.uleb128	12
	.uleb128	2
	.uleb128	10
	.uleb128	73
	.uleb128	16
	.byte	0
	.byte	0
# Abbrev 4
	.uleb128	4
	.uleb128	52
	.byte	0
	.uleb128	3
	.uleb128	8
	.uleb128	63
	.uleb128	12
	.uleb128	2
	.uleb128	10
	.uleb128	73
	.uleb128	16
	.byte	0
	.byte	0
# Abbrev 5
	.uleb128	5
	.uleb128	36
	.byte	0
	.uleb128	3
	.uleb128	8
	.uleb128	62
	.uleb128	11
	.uleb128	11
	.uleb128	11
	.byte	0
	.byte	0
# Abbrev 6
	.uleb128	6
	.uleb128	15
	.byte	0
	.uleb128	73
	.uleb128	16
	.byte	0
	.byte	0
# Abbrev 7
	.uleb128	7
	.uleb128	36
	.byte	0
	.uleb128	3
	.uleb128	8
	.uleb128	62
	.uleb128	11
	.uleb128	11
	.uleb128	11
	.byte	0
	.byte	0
# Abbrev 8
	.uleb128	8
	.uleb128	1
	.byte	1
	.uleb128	11
	.uleb128	15
	.uleb128	46
	.uleb128	15
	.uleb128	73
	.uleb128	16
	.byte	0
	.byte	0
# Abbrev 9
	.uleb128	9
	.uleb128	33
	.byte	0
	.uleb128	34
	.uleb128	13
	.uleb128	47
	.uleb128	13
	.uleb128	73
	.uleb128	16
	.byte	0
	.byte	0
	.byte	0
# End asmlist al_dwarf_abbrev
# Begin asmlist al_dwarf_line

.section .debug_line
# === header start ===
	.long	.Ledebug_line0-.Lf2
.Lf2:
	.short	3
	.long	.Lehdebug_line0-.Lf3
.Lf3:
	.byte	1
	.byte	1
	.byte	1
	.byte	255
	.byte	13
	.byte	0
	.byte	1
	.byte	1
	.byte	1
	.byte	1
	.byte	0
	.byte	0
	.byte	0
	.byte	1
	.byte	0
	.byte	0
	.byte	1
# include_directories
	.byte	0
# file_names
	.ascii	"main.pp\000"
	.uleb128	0
	.uleb128	0
	.uleb128	0
	.byte	0
.Lehdebug_line0:
# === header end ===
# [18:1]
	.byte	0
	.uleb128	5
	.byte	2
	.long	.Ll1
	.byte	5
	.uleb128	1
	.byte	29
# [18:1]
	.byte	2
	.uleb128	.Ll2-.Ll1
	.byte	1
# [19:17]
	.byte	2
	.uleb128	.Ll3-.Ll2
	.byte	5
	.uleb128	17
	.byte	13
# [20:3]
	.byte	2
	.uleb128	.Ll4-.Ll3
	.byte	5
	.uleb128	3
	.byte	13
# [22:3]
	.byte	2
	.uleb128	.Ll5-.Ll4
	.byte	14
# [25:3]
	.byte	2
	.uleb128	.Ll6-.Ll5
	.byte	15
# [31:16]
	.byte	2
	.uleb128	.Ll7-.Ll6
	.byte	5
	.uleb128	16
	.byte	18
# [32:5]
	.byte	2
	.uleb128	.Ll8-.Ll7
	.byte	5
	.uleb128	5
	.byte	13
# [33:1]
	.byte	2
	.uleb128	.Ll9-.Ll8
	.byte	5
	.uleb128	1
	.byte	13
	.byte	0
	.byte	1
	.byte	1
# ###################
.Ledebug_line0:
# End asmlist al_dwarf_line
# Begin asmlist al_picdata
# End asmlist al_picdata
# Begin asmlist al_resourcestrings
# End asmlist al_resourcestrings
# Begin asmlist al_end

.section .text
.Letext0:
# End asmlist al_end