My mac has 64-bit EFI, but it only boots with 32-bit kernel
64-bit Mac CPUs cannot boot 64-bit kernel due to one of the following reasons:


The machine has 32-bit EFI. 
The machine’s model is prohibited from booting K64 through a hardcoded list
within the boot loader. (The list excludes "non-Pro" machines.)


Both limitations are artificial and imposed by Apple, although the first one is important because if a 32-bit EFI were allowed to boot the kernel wouldn't be able to use firmware services.

IF you really, really, really want to boot these machines with a 64-bit kernel, you'll need to perform hackery on /System/Library/CoreServices/boot.efi. This is quite risky. More info:

http://osxbook.com/blog/2009/08/31/is-your-machine-good-enough-for-snow-leopard-k64/