Nikolaos Kavvadias <nkavv@xxxxxxxxxxxxxxx> writes: > 1. Is it possible to emit something close to assembly with > pseudo-registers instead of registers? I mean, is it possible to do this > just before each one of these passes? Or would it be possible to > devise such pass (e.g. an emitter just prior greg). I can see some RTL > stuff with pseudos (e.g. *.lreg) but is it semantically complete in > order to be possible to translate it to assembly (even though with > infinite registers)? Yes. > 2. Is it possible to explicitly mark the fill/spill instructions (or > RTL statements) in such RTL dumps? It would take a bit of work in reload, but, yes, it is possible. > 3. Supposedly a <machine.h> description is devised that has a > ridiculously large of registers (so that spills *almost* never will > occur). > Will this approach the effect of register allocation for infinite > registers or there exist other GCC-specific constraints. What are the > limits in the number of registers, registers in classes, allocable > registers etc (i've seen some very bad restrictions in LCC due to the > use of masks with host-dependent size). There are no gcc constraints of this form, up to having a few million hard registers. Implementing a very large number of hard registers will tend to slow the compiler down, as there are a number of arrays and bitmaps which are sized to the number of registers. > 4. There is some discussion around gmp/mpfr support in GCC lately. Are > we close to using arbitrary-size integers throught the GCC > infrastructure? No, not at all. That would be very slow and would bring little benefit. Ian