From: Mike H. <mik...@bi...> - 2006-04-25 23:44:35
|
Hi folks, The underlying bug I mentioned a few days ago turned out to require a fix to hStkObj in cg6. I'm enclosing an update of the whole file. This fix means I could do a "proper" fix to Vectors, so I'm enclosing that as well. This one also deals properly with long vectors which have a bit left over at the end -- i.e. a piece which is less than the Altivec width of 16 bytes. I was already rounding up their storage allocation to the next 16-byte boundary (in qpClass), so I didn't need to do anything about that, but the >v: methods now clear the padding bytes which means that methods like sum: now give the correct results even if the length of the long vector is a bit weird. Just on another matter -- for the last couple of years I've been playing with the idea of a new code generator with global register allocation -- this generates excellent code but isn't really ready for prime time yet -- but I may continue playing with it with the idea of generating Intel code. I don't know how this might go since I don't like the Intel architecture at all, so I'm certainly not making any promises. Cheers, Mike. |