Commit ab6d960ffa1271db6866fc2b27e97e99a73598d2

Authored by bellard
1 parent fbf9eeb3

added target_phys_addr_t


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@756 c046a42c-6fe2-441c-8c8c-71466251a162
Showing 1 changed file with 15 additions and 0 deletions
cpu-defs.h
... ... @@ -29,8 +29,13 @@
29 29 #error TARGET_LONG_BITS must be defined before including this header
30 30 #endif
31 31  
  32 +#ifndef TARGET_PHYS_ADDR_BITS
  33 +#define TARGET_PHYS_ADDR_BITS TARGET_LONG_BITS
  34 +#endif
  35 +
32 36 #define TARGET_LONG_SIZE (TARGET_LONG_BITS / 8)
33 37  
  38 +/* target_ulong is the type of a virtual address */
34 39 #if TARGET_LONG_SIZE == 4
35 40 typedef int32_t target_long;
36 41 typedef uint32_t target_ulong;
... ... @@ -41,6 +46,16 @@ typedef uint64_t target_ulong;
41 46 #error TARGET_LONG_SIZE undefined
42 47 #endif
43 48  
  49 +/* target_phys_addr_t is the type of a physical address (its size can
  50 + be different from 'target_ulong') */
  51 +#if TARGET_PHYS_ADDR_BITS == 32
  52 +typedef uint32_t target_phys_addr_t;
  53 +#elif TARGET_PHYS_ADDR_BITS == 64
  54 +typedef uint64_t target_phys_addr_t;
  55 +#else
  56 +#error TARGET_PHYS_ADDR_BITS undefined
  57 +#endif
  58 +
44 59 #if defined(__alpha__) || defined (__ia64__) || defined(__x86_64__)
45 60 #define HOST_LONG_BITS 64
46 61 #else
... ...