Related articles |
---|
Jump size optimization info... Orlando.Llanes@gmail.com (Orlando Llanes) (2007-01-08) |
Re: Jump size optimization info... kenrose@nc-sys.com (Ken Rose) (2007-01-11) |
Re: Jump size optimization info... sdn@svpal.org (Steven Nichols) (2007-01-12) |
Re: Jump size optimization info... sdn@svpal.org (Steven Nichols) (2007-01-12) |
Re: Jump size optimization info... anton@mips.complang.tuwien.ac.at (2007-01-12) |
Re: Jump size optimization info... gah@ugcs.caltech.edu (glen herrmannsfeldt) (2007-01-14) |
Re: Jump size optimization info... 148f3wg02@sneakemail.com (Karsten Nyblad) (2007-01-28) |
Re: Jump size optimization info... niktechc@niktech.com (Sandeep Dutta) (2007-01-31) |
Re: Jump size optimization info... Orlando.Llanes@gmail.com (Orlando Llanes) (2007-02-09) |
From: | glen herrmannsfeldt <gah@ugcs.caltech.edu> |
Newsgroups: | comp.compilers |
Date: | 14 Jan 2007 22:22:47 -0500 |
Organization: | Compilers Central |
References: | 07-01-023 07-01-038 |
Keywords: | assembler |
Posted-Date: | 14 Jan 2007 22:22:47 EST |
Steven Nichols wrote:
> There is a type of assembler that does exactly the same thing on every
> assembly pass through the sourcecode. Pass 1 outputs to dev>nul and is
> full of phase errors, pass 2 has eliminated most (or all) phase errors
> (output to nowhere) and pass 3 usually does the job in 99%+ cases
> whereupon code is output. On each pass through the sourcecode (or
> p-code in your case) you check for branch out of range, then
> substitute a long branch and add 1 to the program counter, causing all
> following code to be assembled forward+1, then make another pass and
> do the same thing again until no more branch out of range and phase
> errors are found do to mismatched branch-target addresses.
Table of Contents generation in Latex works about the same,
except that iterations is manual. You run the latex command
until you stop getting a message about toc entries changing.
-- glen
Return to the
comp.compilers page.
Search the
comp.compilers archives again.