mirror of
				https://github.com/qemu/qemu.git
				synced 2025-10-31 03:52:43 +00:00 
			
		
		
		
	 74433bf083
			
		
	
	
		74433bf083
		
	
	
	
	
		
			
			For all targets, into this new file move TARGET_LONG_BITS, TARGET_PAGE_BITS, TARGET_PHYS_ADDR_SPACE_BITS, TARGET_VIRT_ADDR_SPACE_BITS, and NB_MMU_MODES. Include this new file from exec/cpu-defs.h. This now removes the somewhat odd requirement that target/arch/cpu.h defines TARGET_LONG_BITS before including exec/cpu-defs.h, so push the bulk of the includes within target/arch/cpu.h to the top. Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Acked-by: Alistair Francis <alistair.francis@wdc.com> Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
		
			
				
	
	
		
			29 lines
		
	
	
		
			688 B
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			29 lines
		
	
	
		
			688 B
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * i386 cpu parameters for qemu.
 | |
|  *
 | |
|  * Copyright (c) 2003 Fabrice Bellard
 | |
|  * SPDX-License-Identifier: LGPL-2.0+
 | |
|  */
 | |
| 
 | |
| #ifndef I386_CPU_PARAM_H
 | |
| #define I386_CPU_PARAM_H 1
 | |
| 
 | |
| #ifdef TARGET_X86_64
 | |
| # define TARGET_LONG_BITS             64
 | |
| # define TARGET_PHYS_ADDR_SPACE_BITS  52
 | |
| /*
 | |
|  * ??? This is really 48 bits, sign-extended, but the only thing
 | |
|  * accessible to userland with bit 48 set is the VSYSCALL, and that
 | |
|  * is handled via other mechanisms.
 | |
|  */
 | |
| # define TARGET_VIRT_ADDR_SPACE_BITS  47
 | |
| #else
 | |
| # define TARGET_LONG_BITS             32
 | |
| # define TARGET_PHYS_ADDR_SPACE_BITS  36
 | |
| # define TARGET_VIRT_ADDR_SPACE_BITS  32
 | |
| #endif
 | |
| #define TARGET_PAGE_BITS 12
 | |
| #define NB_MMU_MODES 3
 | |
| 
 | |
| #endif
 |