On 04/26/2010 11:00 PM, q...@zensonic.dk wrote: > 1. avoid the problem? (Give the guest a larger valid address space)
Assuming that you don't have a guest program that (ab)uses the "known unused" high bits of the address for type tagging pointers (common in some lisp and virtual machine interpreters, including emacs), then you can simply change target-alpha/cpu.h: -#define TARGET_VIRT_ADDR_SPACE_BITS (30 + TARGET_PAGE_BITS) +#define TARGET_VIRT_ADDR_SPACE_BITS 63 I know for a fact that glibc *does* use the msb for some pointer tagging, so you can't use 64 here. I don't think that's actually a problem for any current Linux host. If you only care about amd64 as the host, you can reduce this number to 47 and save 2 levels of lookup in the address space tables. r~