I inadvertently made a nifty 'discovery' the other day..
My Slack64 root is /dev/hda11 and my Slack11 system is on /dev/hda5--
I (accidentally) added a freshly built Slack64 kernel to my lilo.conf the other day, but (here's the accident) I put it in a previously written "image" section which was for booting my Slack11-32bit system. I ran lilo and rebooted.
To my surprise, the 64bit kernel booted my 32bit Slackware
which at the time surprised me!
The point: for me anyhow, this alleviates the need to have a more complicated lilo setup than I already have, and eliminates the need for the chroot I had been doing.
Ultimately I should have not been so surprised: I select the kernel64 compile option which allows the kernel to be compatible with 32bit programs & libs, so this behavior is expected.
Anyway, maybe this will also help others simplify booting multiple distros, of either bit-width, with the same kernel.
Sasha