This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
some questions about arch/arm/boot/compress/head.s
- From: loody <miloody at gmail dot com>
- To: binutils at sourceware dot org
- Date: Sat, 11 Oct 2008 14:31:54 +0800
- Subject: some questions about arch/arm/boot/compress/head.s
Dear all:
I try to trace kernel source, head.s, and there are some questions I
need your help.
Below I excerpt some part of it.
start:
.type start,#function
.rept 8
mov r0, r0
.endr
b 1f
.word 0x016f2818 @ Magic numbers to help the loader
.word start @ absolute load/run zImage address
.word _edata @ zImage end address
1: mov r7, r1 @ save architecture ID
mov r8, r2 @ save atags pointer
......
......
.text
adr r0, LC0
My questions are:
1. what does "b 1f" and "b 1b" means?
I have grep the head.s and there is no label named, 1f or 1b.
And in GAS manual there seems no explanation about "b", since b is
arm's instructions, branch.
I also check arm-reference manual, chapter a5, and there is no
mention about this kind of addressing mode, either.
2. what is adr used for?
It seems not arm instructions and I search the file for any macro
definition but the result is fail.
3. where I can find the parameter start, _edata defined?
Does the start in ".word start @ absolute load/run zImage address"
mean this start label?
appreciate your help in advance,
miloody