21 #ifndef AVUTIL_PPC_INTREADWRITE_H 
   22 #define AVUTIL_PPC_INTREADWRITE_H 
   30 #define AV_RL16 av_read_bswap16 
   31 #define AV_WL16 av_write_bswap16 
   32 #define AV_RL32 av_read_bswap32 
   33 #define AV_WL32 av_write_bswap32 
   34 #define AV_RL64 av_read_bswap64 
   35 #define AV_WL64 av_write_bswap64 
   38 #define AV_RB16 av_read_bswap16 
   39 #define AV_WB16 av_write_bswap16 
   40 #define AV_RB32 av_read_bswap32 
   41 #define AV_WB32 av_write_bswap32 
   42 #define AV_RB64 av_read_bswap64 
   43 #define AV_WB64 av_write_bswap64 
   50     __asm__ (
"lhbrx   %0, %y1" : 
"=r"(v) : 
"Z"(*(
const uint16_t*)p));
 
   56     __asm__ (
"sthbrx  %1, %y0" : 
"=Z"(*(uint16_t*)p) : 
"r"(v));
 
   62     __asm__ (
"lwbrx   %0, %y1" : 
"=r"(v) : 
"Z"(*(
const uint32_t*)p));
 
   68     __asm__ (
"stwbrx  %1, %y0" : 
"=Z"(*(uint32_t*)p) : 
"r"(v));
 
   76     __asm__ (
"ldbrx   %0, %y1" : 
"=r"(v) : 
"Z"(*(
const uint64_t*)p));
 
   82     __asm__ (
"stdbrx  %1, %y0" : 
"=Z"(*(uint64_t*)p) : 
"r"(v));
 
   89     union { uint64_t v; uint32_t hl[2]; } v;
 
   90     __asm__ (
"lwbrx   %0, %y2  \n\t" 
   92              : 
"=&r"(v.hl[1]), 
"=r"(v.hl[0])
 
   93              : 
"Z"(*(
const uint32_t*)p), 
"Z"(*((
const uint32_t*)p+1)));
 
   99     union { uint64_t v; uint32_t hl[2]; } vv = { v };
 
  100     __asm__ (
"stwbrx  %2, %y0  \n\t" 
  101              "stwbrx  %3, %y1  \n\t" 
  102              : 
"=Z"(*(uint32_t*)p), 
"=Z"(*((uint32_t*)p+1))
 
  103              : 
"r"(vv.hl[1]), 
"r"(vv.hl[0]));