Browse Source

Fix x86-64

Originally committed as revision 14103 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/v0.5
Michael Niedermayer 17 years ago
parent
commit
560fa9bf51
3 changed files with 5 additions and 5 deletions
  1. +1
    -1
      libavcodec/dsputil.c
  2. +2
    -2
      libavcodec/dsputil.h
  3. +2
    -2
      libavcodec/i386/dsputil_mmx.c

+ 1
- 1
libavcodec/dsputil.c View File

@@ -3930,7 +3930,7 @@ void ff_vector_fmul_add_add_c(float *dst, const float *src0, const float *src1,
dst[i*step] = src0[i] * src1[i] + src2[i] + src3;
}

void ff_float_to_int16_c(int16_t *dst, const float *src, int len){
void ff_float_to_int16_c(int16_t *dst, const float *src, long len){
int i;
for(i=0; i<len; i++) {
int_fast32_t tmp = ((const int32_t*)src)[i];


+ 2
- 2
libavcodec/dsputil.h View File

@@ -63,7 +63,7 @@ void ff_h264_lowres_idct_put_c(uint8_t *dst, int stride, DCTELEM *block);

void ff_vector_fmul_add_add_c(float *dst, const float *src0, const float *src1,
const float *src2, int src3, int blocksize, int step);
void ff_float_to_int16_c(int16_t *dst, const float *src, int len);
void ff_float_to_int16_c(int16_t *dst, const float *src, long len);

/* encoding scans */
extern const uint8_t ff_alternate_horizontal_scan[64];
@@ -367,7 +367,7 @@ typedef struct DSPContext {

/* C version: convert floats from the range [384.0,386.0] to ints in [-32768,32767]
* simd versions: convert floats from [-32768.0,32767.0] without rescaling and arrays are 16byte aligned */
void (*float_to_int16)(int16_t *dst, const float *src, int len);
void (*float_to_int16)(int16_t *dst, const float *src, long len);

/* (I)DCT */
void (*fdct)(DCTELEM *block/* align 16*/);


+ 2
- 2
libavcodec/i386/dsputil_mmx.c View File

@@ -2022,7 +2022,7 @@ static void vector_fmul_add_add_sse(float *dst, const float *src0, const float *
ff_vector_fmul_add_add_c(dst, src0, src1, src2, src3, len, step);
}

static void float_to_int16_3dnow(int16_t *dst, const float *src, int len){
static void float_to_int16_3dnow(int16_t *dst, const float *src, long len){
// not bit-exact: pf2id uses different rounding than C and SSE
asm volatile(
"add %0 , %0 \n\t"
@@ -2044,7 +2044,7 @@ static void float_to_int16_3dnow(int16_t *dst, const float *src, int len){
:"+r"(len), "+r"(dst), "+r"(src)
);
}
static void float_to_int16_sse(int16_t *dst, const float *src, int len){
static void float_to_int16_sse(int16_t *dst, const float *src, long len){
int i;
for(i=0; i<len; i+=4) {
asm volatile(


Loading…
Cancel
Save