Hi, On Fri, 18 Jan 2008, Michael Matz wrote:
> On Fri, 18 Jan 2008, Johannes Schindelin wrote: > > > > Well, I can tell you why, but it doesn't help you: the 3.4.2 > > > compiler has different deficiencies in reload than the 4.x line of > > > compilers. To make the whole thingy work on all compilers trying > > > and testing is required to avoid all these different deficiencies. > > > My patch is partly real bug fixes (the "q" constraint part for > > > instance) and partly changes helping to lessen the register pressure > > > which reload needs to fix (the %ecx thingy for instance). Both of > > > these might expose the bugs in 3.4.2, in which case we need to hack > > > around those as well. That's what I tried to do with the patch from > > > http://article.gmane.org/gmane.comp.emulators.qemu/22762 , but it > > > needs of course testing by someone who actually uses 3.4.2. > > > > I just downloaded it, and tested it on MinGW with 3.4.2, and I still > > get the "can't find register in class `Q_REGS´ while reloading `asm´" > > error. > > Bummer. As a test of theory (I'm not proposing this as patch), can you > see what happens if you make vtmp volatile, i.e. make it look like so ? : > > #if DATA_SIZE == 1 || DATA_SIZE == 2 > volatile RES_TYPE vtmp = v; > #endif Still no joy. Exactly the same error. > Bah, remote work-arounding of reload sucks :-) Heh. I am so looking forward to Fabrice's code generator, now that I know of it! Ciao, Dscho