Hi everyone,

It looks like, the way the compiler is right now, ##slot and
##set-slot are more complicated than they have to be. These
instructions do two things: first, subtract the tag from the index
given, then read or write memory from the sum of the index and the
base pointer. If ##slot and ##set-slot didn't have to do this
processing with the tag, they wouldn't need a temporary register.
Potentially, this could improve register allocation and value
numbering.

I made this change, by modifying the low level IR builder to insert
some arithmetic instructions before ##slot and ##set-slot, and the
results are in the 'slots' branch of the main repository. I've tested
the changes on both x86 and PPC. Slava, do these changes look good to
you? If so, I think they're ready to be merged in.

Dan

------------------------------------------------------------------------------
Come build with us! The BlackBerry® Developer Conference in SF, CA
is the only developer event you need to attend this year. Jumpstart your
developing skills, take BlackBerry mobile applications to market and stay 
ahead of the curve. Join us from November 9-12, 2009. Register now!
http://p.sf.net/sfu/devconf
_______________________________________________
Factor-talk mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/factor-talk

Reply via email to