PPC: fix asm operand constraints in AV_RL64
authorMåns Rullgård <mans@mansr.com>
Wed, 29 Jul 2009 19:06:55 +0000 (19:06 +0000)
committerMåns Rullgård <mans@mansr.com>
Wed, 29 Jul 2009 19:06:55 +0000 (19:06 +0000)
The target register of first word loaded must be marked early-clobber.

Originally committed as revision 19536 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavutil/ppc/intreadwrite.h

index 7bc2b2d4b331074a40f140c0dc10e778a466d27c..18444275444f8b73bb029268c35dd96fd8ade569 100644 (file)
@@ -78,7 +78,7 @@ static inline uint64_t AV_RL64(const void *p)
     union { uint64_t v; uint32_t hl[2]; } v;
     __asm__ ("lwbrx   %0, %y2  \n\t"
              "lwbrx   %1, %y3  \n\t"
-             : "=r"(v.hl[1]), "=r"(v.hl[0])
+             : "=&r"(v.hl[1]), "=r"(v.hl[0])
              : "Z"(*(const uint32_t*)p), "Z"(*((const uint32_t*)p+1)));
     return v.v;
 }