diff options
author | Avi Kivity <avi@redhat.com> | 2008-09-16 22:51:16 -0700 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2008-09-16 23:04:54 -0700 |
commit | dc03f04b0ef5d109d9b4bbb102dbe4898ca6974d (patch) | |
tree | 6a269dee67fa5e76bd3c6ac1c8a0f76e1f34af28 /cpu-all.h | |
parent | kvm: external module: intel iommu compatibility (diff) | |
parent | target-alpha: small optimizations (diff) | |
download | qemu-kvm-dc03f04b0ef5d109d9b4bbb102dbe4898ca6974d.tar.gz qemu-kvm-dc03f04b0ef5d109d9b4bbb102dbe4898ca6974d.tar.bz2 qemu-kvm-dc03f04b0ef5d109d9b4bbb102dbe4898ca6974d.zip |
Merge branch 'qemu-cvs'
Conflicts:
qemu/block-raw-posix.c
qemu/hw/pc.c
qemu/monitor.c
qemu/vl.c
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'cpu-all.h')
-rw-r--r-- | cpu-all.h | 38 |
1 files changed, 0 insertions, 38 deletions
@@ -233,15 +233,6 @@ static inline int lduw_le_p(void *ptr) int val; __asm__ __volatile__ ("lhbrx %0,0,%1" : "=r" (val) : "r" (ptr)); return val; -#elif defined(__sparc__) -#ifndef ASI_PRIMARY_LITTLE -#define ASI_PRIMARY_LITTLE 0x88 -#endif - - int val; - __asm__ __volatile__ ("lduha [%1] %2, %0" : "=r" (val) : "r" (ptr), - "i" (ASI_PRIMARY_LITTLE)); - return val; #else uint8_t *p = ptr; return p[0] | (p[1] << 8); @@ -254,11 +245,6 @@ static inline int ldsw_le_p(void *ptr) int val; __asm__ __volatile__ ("lhbrx %0,0,%1" : "=r" (val) : "r" (ptr)); return (int16_t)val; -#elif defined(__sparc__) - int val; - __asm__ __volatile__ ("ldsha [%1] %2, %0" : "=r" (val) : "r" (ptr), - "i" (ASI_PRIMARY_LITTLE)); - return val; #else uint8_t *p = ptr; return (int16_t)(p[0] | (p[1] << 8)); @@ -271,11 +257,6 @@ static inline int ldl_le_p(void *ptr) int val; __asm__ __volatile__ ("lwbrx %0,0,%1" : "=r" (val) : "r" (ptr)); return val; -#elif defined(__sparc__) - int val; - __asm__ __volatile__ ("lduwa [%1] %2, %0" : "=r" (val) : "r" (ptr), - "i" (ASI_PRIMARY_LITTLE)); - return val; #else uint8_t *p = ptr; return p[0] | (p[1] << 8) | (p[2] << 16) | (p[3] << 24); @@ -284,27 +265,17 @@ static inline int ldl_le_p(void *ptr) static inline uint64_t ldq_le_p(void *ptr) { -#if defined(__sparc__) - uint64_t val; - __asm__ __volatile__ ("ldxa [%1] %2, %0" : "=r" (val) : "r" (ptr), - "i" (ASI_PRIMARY_LITTLE)); - return val; -#else uint8_t *p = ptr; uint32_t v1, v2; v1 = ldl_le_p(p); v2 = ldl_le_p(p + 4); return v1 | ((uint64_t)v2 << 32); -#endif } static inline void stw_le_p(void *ptr, int v) { #ifdef __powerpc__ __asm__ __volatile__ ("sthbrx %1,0,%2" : "=m" (*(uint16_t *)ptr) : "r" (v), "r" (ptr)); -#elif defined(__sparc__) - __asm__ __volatile__ ("stha %1, [%2] %3" : "=m" (*(uint16_t *)ptr) : "r" (v), - "r" (ptr), "i" (ASI_PRIMARY_LITTLE)); #else uint8_t *p = ptr; p[0] = v; @@ -316,9 +287,6 @@ static inline void stl_le_p(void *ptr, int v) { #ifdef __powerpc__ __asm__ __volatile__ ("stwbrx %1,0,%2" : "=m" (*(uint32_t *)ptr) : "r" (v), "r" (ptr)); -#elif defined(__sparc__) - __asm__ __volatile__ ("stwa %1, [%2] %3" : "=m" (*(uint32_t *)ptr) : "r" (v), - "r" (ptr), "i" (ASI_PRIMARY_LITTLE)); #else uint8_t *p = ptr; p[0] = v; @@ -330,15 +298,9 @@ static inline void stl_le_p(void *ptr, int v) static inline void stq_le_p(void *ptr, uint64_t v) { -#if defined(__sparc__) - __asm__ __volatile__ ("stxa %1, [%2] %3" : "=m" (*(uint64_t *)ptr) : "r" (v), - "r" (ptr), "i" (ASI_PRIMARY_LITTLE)); -#undef ASI_PRIMARY_LITTLE -#else uint8_t *p = ptr; stl_le_p(p, (uint32_t)v); stl_le_p(p + 4, v >> 32); -#endif } /* float access */ |