This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: means of .previous directive


On Fri, 4 Aug 2000, qiao guopei wrote:

> I saw a lot of .previous directive is used in Linux kernel. But I can
> not find the definition of .previous directive in GAS document. Could
> anyone help me?

It changes the current section (ie. where instructions/data are output) to
the previous section.  At least, that is the case when .popsection isn't
used.  Things are a little more complicated when .pushsection/.popsection
are used as .pushsection/.popsection saves/restores both the current
section and it's previous section.

eg. (from the gas elf testsuite)

 .data
	.byte 0
 .section A
	.byte 1
 .previous
	.byte 0
 .previous
	.byte 1
 .pushsection B
	.byte 2
 .previous
	.byte 1
 .previous
	.byte 2
 .pushsection C
	.byte 3
 .previous
	.byte 2
 .previous
	.byte 3
 .popsection
	.byte 2
 .previous
	.byte 1
 .previous
	.byte 2
 .popsection
	.byte 1
 .previous
	.byte 0
 .previous
	.byte 1

will put all the 0's in section .data, all the 1's in section A, all the
2's in section B, and all the 3's in section C

Alan Modra
-- 
Linuxcare.  Support for the Revolution.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]