Sujet : Re: Why I've Dropped In
De : mitchalsup (at) *nospam* aol.com (MitchAlsup1)
Groupes : comp.archDate : 17. Jun 2025, 18:45:23
Autres entêtes
Organisation : Rocksolid Light
Message-ID : <9668ceb1d550abdc26c923a6405b7343@www.novabbs.org>
References : 1 2 3 4 5 6 7 8 9
User-Agent : Rocksolid Light
On Tue, 17 Jun 2025 1:26:01 +0000, Stephen Fuld wrote:
On 6/16/2025 9:17 AM, Stefan Monnier wrote:
Therefore, I reduced the index register and base register fields to
three bits each, using only some of the 32 integer registers for those
purposes.
This is going to hurt register allocation.
>
I vaguely remember reading somewhere that it doesn't have to be too bad:
e.g. if you reduce register-specifiers to just 4bits for a 32-register
architecture and kind of "randomize" which of the 16 values refer to
which of the 32 registers for each instruction, it's fairly easy to
adjust a register allocator to handle this correctly (assuming you
choose your instructions beforehand, you simply mark, for each
instructions, the unusable registers as "interfering"), and the end
result is often almost as good as if you had 5bits to specify
the registers.
>
I can see that it isn't too hard on the logic for the register
allocator,
You are missing the BIG problem::
Register allocator allocated Rk for calculation j and later allocates
Rm for instruction p, then a few instructions later the code generator
notices that Rk and RM need to be paired or shared and they were not
originally. How does on fix this kind of problem without adding more
passes over the intermediate representation ??
but I suspect it will lead to more register saving and
restoring.
And reg-reg MOVment.
Consider a two instruction sequence where the output of the
first instruction is an input to the second. The first instruction has
only a choice of 16 registers, not 32. And the second instruction also
has 16 registers, but on average only half of them will be in the 16
included in the first instruction. So instead of 32 registers to chose
from you only have 8. So the odds increase that you must save one of
those 8 and perhaps restore it after the two instructions have
completed.
>
It sure seems ugly to me.
It has been under study by compiler people since at least 1963 without
much forward progress.
>
Date | Sujet | # | | Auteur |
19 May 25 | Why I've Dropped In | 417 | | quadibloc |
19 May 25 |  Re: Why I've Dropped In | 349 | | quadibloc |
21 May 25 |   Re: Why I've Dropped In | 348 | | quadibloc |
22 May 25 |    Re: Why I've Dropped In | 11 | | David Chmelik |
22 May 25 |     Re: Why I've Dropped In | 2 | | MitchAlsup1 |
23 May 25 |      Re: Why I've Dropped In | 1 | | MitchAlsup1 |
10 Jun 25 |     Re: Why I've Dropped In | 8 | | quadibloc |
11 Jun 25 |      Re: Why I've Dropped In | 1 | | BGB |
11 Jun 25 |      Re: Why I've Dropped In | 6 | | quadibloc |
11 Jun 25 |       Re: Why I've Dropped In | 4 | | Chris M. Thomasson |
12 Jun 25 |        Re: Why I've Dropped In | 3 | | quadibloc |
12 Jun 25 |         Re: Why I've Dropped In | 1 | | Chris M. Thomasson |
16 Jun 25 |         Re: Why I've Dropped In | 1 | | Chris M. Thomasson |
12 Jun 25 |       Re: Why I've Dropped In | 1 | | quadibloc |
10 Jun 25 |    Re: Why I've Dropped In | 335 | | quadibloc |
11 Jun 25 |     Re: Why I've Dropped In | 322 | | Thomas Koenig |
11 Jun 25 |      Re: Why I've Dropped In | 23 | | BGB |
11 Jun 25 |       Re: Why I've Dropped In | 8 | | MitchAlsup1 |
11 Jun 25 |        Re: Why I've Dropped In | 7 | | BGB |
12 Jun 25 |         Re: Why I've Dropped In | 6 | | MitchAlsup1 |
12 Jun 25 |          Re: Why I've Dropped In | 5 | | BGB |
13 Jun 25 |           Re: Why I've Dropped In | 4 | | MitchAlsup1 |
15 Jun 25 |            Re: Why I've Dropped In | 3 | | BGB |
15 Jun 25 |             Re: Why I've Dropped In | 2 | | MitchAlsup1 |
15 Jun 25 |              Re: Why I've Dropped In | 1 | | BGB |
11 Jun 25 |       Re: Why I've Dropped In | 10 | | Anton Ertl |
11 Jun 25 |        Re: Why I've Dropped In | 6 | | MitchAlsup1 |
12 Jun 25 |         Re: Why I've Dropped In | 5 | | MitchAlsup1 |
12 Jun 25 |          Re: Why I've Dropped In | 4 | | Anton Ertl |
12 Jun 25 |           Re: Why I've Dropped In | 2 | | MitchAlsup1 |
20 Jun 25 |            Re: Why I've Dropped In | 1 | | Anton Ertl |
12 Jun 25 |           Re: Why I've Dropped In | 1 | | Thomas Koenig |
11 Jun 25 |        Re: Why I've Dropped In | 3 | | BGB |
12 Jun 25 |         Re: Why I've Dropped In | 2 | | Anton Ertl |
12 Jun 25 |          Re: Why I've Dropped In | 1 | | BGB |
20 Jun 25 |       Re: Why I've Dropped In | 4 | | quadibloc |
20 Jun 25 |        Re: Why I've Dropped In | 3 | | MitchAlsup1 |
20 Jun 25 |         Re: Why I've Dropped In | 2 | | moi |
20 Jun 25 |          Re: Why I've Dropped In | 1 | | quadibloc |
11 Jun 25 |      Re: Why I've Dropped In | 298 | | quadibloc |
11 Jun 25 |       Re: Why I've Dropped In | 19 | | MitchAlsup1 |
11 Jun 25 |        Re: Why I've Dropped In | 3 | | quadibloc |
11 Jun 25 |         Re: Why I've Dropped In | 2 | | MitchAlsup1 |
14 Jun 25 |          Re: Why I've Dropped In | 1 | | BGB |
16 Jun 25 |        Re: Why I've Dropped In | 15 | | Stefan Monnier |
17 Jun 25 |         Re: Why I've Dropped In | 1 | | quadibloc |
17 Jun 25 |         Re: Why I've Dropped In | 13 | | Stephen Fuld |
17 Jun 25 |          Re: Why I've Dropped In | 12 | | MitchAlsup1 |
17 Jun 25 |           Re: Why I've Dropped In | 1 | | Stephen Fuld |
17 Jun 25 |           Re: Why I've Dropped In | 10 | | Stefan Monnier |
17 Jun 25 |            Re: Why I've Dropped In | 6 | | MitchAlsup1 |
17 Jun 25 |             Re: Why I've Dropped In | 5 | | Stefan Monnier |
18 Jun 25 |              Re: Why I've Dropped In | 4 | | Anton Ertl |
18 Jun 25 |               Re: Why I've Dropped In | 2 | | Stefan Monnier |
19 Jun 25 |                Re: Why I've Dropped In | 1 | | Anton Ertl |
18 Jun 25 |               Re: Why I've Dropped In | 1 | | BGB |
18 Jun 25 |            Re: Why I've Dropped In | 3 | | Chris M. Thomasson |
18 Jun 25 |             Re: Why I've Dropped In | 2 | | Stefan Monnier |
20 Jun 25 |              Re: Why I've Dropped In | 1 | | Chris M. Thomasson |
11 Jun 25 |       Re: Why I've Dropped In | 198 | | Thomas Koenig |
12 Jun 25 |        Re: Why I've Dropped In | 197 | | quadibloc |
12 Jun 25 |         Re: Why I've Dropped In | 193 | | Stephen Fuld |
13 Jun 25 |          Re: Why I've Dropped In | 54 | | quadibloc |
13 Jun 25 |           Re: Why I've Dropped In | 53 | | Stephen Fuld |
13 Jun 25 |            Re: Why I've Dropped In | 52 | | Thomas Koenig |
13 Jun 25 |             Re: Why I've Dropped In | 1 | | quadibloc |
13 Jun 25 |             Re: Why I've Dropped In | 50 | | Stephen Fuld |
13 Jun 25 |              Re: Why I've Dropped In | 49 | | Thomas Koenig |
13 Jun 25 |               Re: Why I've Dropped In | 21 | | Stephen Fuld |
13 Jun 25 |                Re: Why I've Dropped In | 19 | | Thomas Koenig |
13 Jun 25 |                 Re: Why I've Dropped In | 2 | | MitchAlsup1 |
15 Jun 25 |                  Re: Why I've Dropped In | 1 | | Stephen Fuld |
13 Jun 25 |                 Re: Why I've Dropped In | 1 | | Stephen Fuld |
15 Jun 25 |                 Re: base and bounds, Why I've Dropped In | 15 | | John Levine |
15 Jun 25 |                  Re: base and bounds, Why I've Dropped In | 13 | | Stephen Fuld |
15 Jun 25 |                   Re: base and bounds, Why I've Dropped In | 12 | | John Levine |
15 Jun 25 |                    Re: base and bounds, Why I've Dropped In | 9 | | MitchAlsup1 |
16 Jun 25 |                     Re: base and bounds, Why I've Dropped In | 7 | | Stephen Fuld |
16 Jun 25 |                      Re: base and bounds, Why I've Dropped In | 2 | | quadibloc |
16 Jun 25 |                       Re: base and bounds, Why I've Dropped In | 1 | | Stephen Fuld |
16 Jun 25 |                      Re: base and bounds, Why I've Dropped In | 4 | | MitchAlsup1 |
16 Jun 25 |                       Re: base and bounds, Why I've Dropped In | 3 | | Stephen Fuld |
16 Jun 25 |                        Re: base and bounds, Why I've Dropped In | 2 | | quadibloc |
16 Jun 25 |                         Re: base and bounds, Why I've Dropped In | 1 | | Stephen Fuld |
16 Jun 25 |                     Re: base and bounds, Why I've Dropped In | 1 | | quadibloc |
15 Jun 25 |                    Re: base and bounds, Why I've Dropped In | 2 | | Stephen Fuld |
16 Jun 25 |                     Re: base and bounds, Why I've Dropped In | 1 | | John Levine |
16 Jun 25 |                  Re: big pages, base and bounds, Why I've Dropped In | 1 | | John Levine |
13 Jun 25 |                Re: Why I've Dropped In | 1 | | Lars Poulsen |
13 Jun 25 |               Re: Why I've Dropped In | 1 | | MitchAlsup1 |
13 Jun 25 |               Re: Why I've Dropped In | 26 | | quadibloc |
14 Jun 25 |                Re: Why I've Dropped In | 25 | | Thomas Koenig |
14 Jun 25 |                 Re: Why I've Dropped In | 24 | | Stephen Fuld |
14 Jun 25 |                  Re: Why I've Dropped In | 3 | | Thomas Koenig |
14 Jun 25 |                   Re: Why I've Dropped In | 2 | | Stephen Fuld |
14 Jun 25 |                    Re: Why I've Dropped In | 1 | | Thomas Koenig |
14 Jun 25 |                  Re: Why I've Dropped In | 14 | | Stephen Fuld |
14 Jun 25 |                   Re: Why I've Dropped In | 13 | | quadibloc |
14 Jun 25 |                    Re: Why I've Dropped In | 1 | | Stephen Fuld |
14 Jun 25 |                    Re: Why I've Dropped In | 11 | | quadibloc |
15 Jun 25 |                     Re: Why I've Dropped In | 10 | | Stephen Fuld |
15 Jun 25 |                  Re: Why I've Dropped In | 6 | | quadibloc |
13 Jun 25 |          Re: Why I've Dropped In | 134 | | quadibloc |
14 Jun 25 |          Re: base registers and addres size, Why I've Dropped In | 3 | | John Levine |
18 Jun 25 |          Re: Why I've Dropped In | 1 | | Lynn Wheeler |
13 Jun 25 |         Re: Why I've Dropped In | 3 | | BGB |
11 Jun 25 |       Re: Why I've Dropped In | 55 | | Anton Ertl |
11 Jun 25 |       Re: Why I've Dropped In | 4 | | quadibloc |
11 Jun 25 |       Re: Why I've Dropped In | 21 | | MitchAlsup1 |
11 Jun 25 |     Re: Why I've Dropped In | 11 | | quadibloc |
13 Jun 25 |     Re: Why I've Dropped In | 1 | | quadibloc |
16 Jun 25 |    Re: Why I've Dropped In | 1 | | quadibloc |
12 Jun 25 |  Re: Why I've Dropped In | 58 | | quadibloc |
27 Jun 25 |  Re: errno, Code density | 9 | | John Levine |