Revision be449fca libavcodec/i386/fft_3dn2.c

View differences:

libavcodec/i386/fft_3dn2.c
46 46
    int n = 1<<s->nbits;
47 47
    int i;
48 48
    ff_fft_dispatch_interleave_3dn2(z, s->nbits);
49
    asm volatile("femms");
49
    __asm__ volatile("femms");
50 50
    if(n <= 8)
51 51
        for(i=0; i<n; i+=2)
52 52
            FFSWAP(FFTSample, z[i].im, z[i+1].re);
......
69 69
    in1 = input;
70 70
    in2 = input + n2 - 1;
71 71
#ifdef EMULATE_3DNOWEXT
72
    asm volatile("movd %0, %%mm7" ::"r"(1<<31));
72
    __asm__ volatile("movd %0, %%mm7" ::"r"(1<<31));
73 73
#endif
74 74
    for(k = 0; k < n4; k++) {
75 75
        // FIXME a single block is faster, but gcc 2.95 and 3.4.x on 32bit can't compile it
76
        asm volatile(
76
        __asm__ volatile(
77 77
            "movd         %0, %%mm0 \n"
78 78
            "movd         %2, %%mm1 \n"
79 79
            "punpckldq    %1, %%mm0 \n"
......
94 94
            ::"m"(in2[-2*k]), "m"(in1[2*k]),
95 95
              "m"(tcos[k]), "m"(tsin[k])
96 96
        );
97
        asm volatile(
97
        __asm__ volatile(
98 98
            "movq    %%mm0, %0    \n\t"
99 99
            :"=m"(z[revtab[k]])
100 100
        );
......
117 117
    /* post rotation */
118 118
    j = -n2;
119 119
    k = n2-8;
120
    asm volatile(
120
    __asm__ volatile(
121 121
        "1: \n"
122 122
        CMUL(%0, %%mm0, %%mm1)
123 123
        CMUL(%1, %%mm2, %%mm3)
......
140 140
        :"r"(z+n8), "r"(tcos+n8), "r"(tsin+n8)
141 141
        :"memory"
142 142
    );
143
    asm volatile("femms");
143
    __asm__ volatile("femms");
144 144
}
145 145

  
146 146
void ff_imdct_calc_3dn2(MDCTContext *s, FFTSample *output, const FFTSample *input)
......
153 153

  
154 154
    j = -n;
155 155
    k = n-8;
156
    asm volatile(
156
    __asm__ volatile(
157 157
        "movq %4, %%mm7 \n"
158 158
        "1: \n"
159 159
        PSWAPD((%2,%1), %%mm0)
......
168 168
        :"r"(output+n4), "r"(output+n4*3),
169 169
         "m"(*m1m1)
170 170
    );
171
    asm volatile("femms");
171
    __asm__ volatile("femms");
172 172
}
173 173

  

Also available in: Unified diff