Related articles |
---|
Re: variable length instructions, was Chicken or the Egg? debray@CS.Arizona.EDU (2000-10-12) |
Re: variable length instructions, was Chicken or the Egg? michael@moria.de (2000-10-12) |
Re: variable length instructions, was Chicken or the Egg? vbdis@aol.com (2000-10-15) |
Re: variable length instructions, was Chicken or the Egg? cfc@world.std.com (Chris F Clark) (2000-10-18) |
Re: variable length instructions, was Chicken or the Egg? dietrich@216.26.55.26 (Dietrich Epp) (2000-10-19) |
Re: variable length instructions, was Chicken or the Egg? michael@moria.de (2000-10-19) |
Re: variable length instructions, was Chicken or the Egg? david.thompson1@worldnet.att.net (David Thompson) (2000-10-19) |
Re: variable length instructions, was Chicken or the Egg? michael@moria.de (2000-10-23) |
From: | vbdis@aol.com (VBDis) |
Newsgroups: | comp.compilers |
Date: | 15 Oct 2000 16:32:34 -0400 |
Organization: | AOL Bertelsmann Online GmbH & Co. KG http://www.germany.aol.com |
References: | 00-10-097 |
Keywords: | linker, optimize |
michael@moria.de schreibt:
>The reason for starting with short instructions is that you usually get a
>smaller executable
I retracted an objection, when I found that it's *really necessary* to
start with the *most compact* representation of some code. It's easy
to determine when an address or offset will occupy more bytes, since
this cannot result in a future size reduction of that instruction
argument. But in contrast it's near impossible to determine, when the
reduction of multiple references to a smaller size will move the
target(s) from an outer range into the (assumed) nearer range.
Assume that you have two (or more) instructions, which refer to a
target at an offset, which would just fit into a single byte. Then two
stable states are possible, with regards to code size, where 2
instructions with byte-size arguments will fit, or where 2 instruction
with word-size arguments will move the target away 2 more bytes, so
that word-size arguments really are required.
DoDi
[As I think we've said three times now, this is certainly possible in
theory. I'd still like to hear whether it occurs in practice often
enough to matter. -John]
Return to the
comp.compilers page.
Search the
comp.compilers archives again.