Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 18 Sep 2016 17:07:05 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-ports-bugs@FreeBSD.org
Subject:   [Bug 212798] multimedia/transcode: Fix build with clang 3.9.0
Message-ID:  <bug-212798-13@https.bugs.freebsd.org/bugzilla/>

next in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D212798

            Bug ID: 212798
           Summary: multimedia/transcode: Fix build with clang 3.9.0
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: freebsd-ports-bugs@FreeBSD.org
          Reporter: dim@FreeBSD.org
                CC: cyberbotx@cyberbotx.com
                CC: cyberbotx@cyberbotx.com
             Flags: maintainer-feedback?(cyberbotx@cyberbotx.com)

Created attachment 174922
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D174922&action=
=3Dedit
Add newlines to inline asm

In bug 212343, for the exp-run with clang 3.9.0, we encountered this error =
in
multimedia/transcode [1]:

motion.c:353:4: error: no matching '.endr' in definition
          " pxor         %%mm0 , %%mm0;          /* clear mm0=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20
                       */"
          ^
<inline asm>:1:466: note: instantiated into assembly here
         pxor         %mm0 , %mm0;          /* clear mm0=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20
                  */ pcmpeqw      %mm6 , %mm6;          /* Build 7f7f7f7f7f=
7f7f
in a register                 */ psrlw        $9    , %mm6;          /*=20=
=20=20=20=20=20=20=20
                                           */ packuswb     %mm6 , %mm6;=20=
=20=20=20=20=20=20=20
 /*                                                    */=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20
    ;          /*                                                    */ .re=
pt 8
                  ;          /*=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20
   */ movq        (%esi), %mm1;          /* 8 Pixels from filtered frame to=
 mm1
               */ movq        (%edi), %mm2;          /* 8 Pixels from filte=
red
frame to mm2 (displaced)    */ movq        (%eax), %mm3;          /* refere=
nce
to mm3                                   */ psrlq        $1    , %mm1;=20=
=20=20=20=20=20=20=20=20
/* average source pixels                              */ psrlq        $1   =
 ,
%mm2;          /* shift right by one (divide by two)                 */ pan=
d=20=20=20
     %mm6 , %mm1;          /* kill downshifted bits=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20
 */ pand         %mm6 , %mm2;          /* kill downshifted bits=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20
             */ paddusw      %mm2 , %mm1;          /* add up ...=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20
                         */ movq         %mm3 , %mm4;          /* copy
reference to mm4                              */ psubusb      %mm1 , %mm3;=
=20=20=20=20=20
    /* positive differences between mm2 and mm1 */ psubusb      %mm4 , %mm1=
;=20=20=20
      /* positive differences between mm1 and mm3 */ paddusb      %mm3 , %m=
m1;=20
        /* mm1 now contains abs(mm1-mm2) */ paddusw      %mm1 , %mm0;=20=20=
=20=20=20=20=20=20=20
/* add result to mm0                                  */ addl         %ecx ,
%esi;          /* add framewidth to frameaddress                     */ add=
l=20=20=20
     %ecx , %edi;          /* add framewidth to frameaddress=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20
 */ addl         %ecx , %ecx;          /* add framewidth to frameaddress=20=
=20=20=20=20=20=20
             */ .endr                     ;          /*=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20
                           */                                      /*=20=20=
=20=20=20=20=20=20=20=20
                                         */ movq         %mm0 ,
calc_SAD_half_mmx.a@GOTOFF(%edx)   ;          /* make mm0 available to gcc =
...=20
                    */
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=20=
=20=20=20=20
                                                                        ^
1 error generated.

For some reason, that particular inline assembly block does not have embedd=
ed
newlines, and this trips up the .rept .endr processing.  Fix it by adding
newlines.

[1]
http://package18.nyi.freebsd.org/data/headi386PR212343-default/2016-09-11_0=
7h04m19s/logs/errors/transcode-1.1.7_26.log

--=20
You are receiving this mail because:
You are the assignee for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-212798-13>