From 3befb246b4d61bf0b066e40d86c0e9be837d2671 Mon Sep 17 00:00:00 2001 From: Martin Storsjo Date: Fri, 13 Apr 2012 14:15:58 +0300 Subject: [PATCH] stagefright avcenc: Use intptr_t for casting pointers to integers This is used for doing integer arithmetic on the pointers, for checking pointer alignment. Change-Id: I7a7ff834dc631ac9cce90e46216f64645e1ae6e5 --- .../codecs/avc/enc/src/avcenc_api.cpp | 2 +- .../codecs/avc/enc/src/motion_comp.cpp | 14 +++++++------- .../libstagefright/codecs/avc/enc/src/sad_inline.h | 2 +- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/media/libstagefright/codecs/avc/enc/src/avcenc_api.cpp b/media/libstagefright/codecs/avc/enc/src/avcenc_api.cpp index d39885db3989f..6d43142961ece 100644 --- a/media/libstagefright/codecs/avc/enc/src/avcenc_api.cpp +++ b/media/libstagefright/codecs/avc/enc/src/avcenc_api.cpp @@ -573,7 +573,7 @@ OSCL_EXPORT_REF AVCEnc_Status PVAVCEncGetRecon(AVCHandle *avcHandle, AVCFrameIO recon->pitch = currFS->frame.pitch; recon->disp_order = currFS->PicOrderCnt; recon->coding_order = currFS->FrameNum; - recon->id = (uint32) currFS->base_dpb; /* use the pointer as the id */ + recon->id = (intptr_t) currFS->base_dpb; /* use the pointer as the id */ currFS->IsOutputted |= 1; diff --git a/media/libstagefright/codecs/avc/enc/src/motion_comp.cpp b/media/libstagefright/codecs/avc/enc/src/motion_comp.cpp index ac62d782c83d4..176fff86681d9 100644 --- a/media/libstagefright/codecs/avc/enc/src/motion_comp.cpp +++ b/media/libstagefright/codecs/avc/enc/src/motion_comp.cpp @@ -198,7 +198,7 @@ void eCreateAlign(uint8 *ref, int picpitch, int y_pos, out_offset = 24 - blkwidth; //switch(x_pos&0x3){ - switch (((uint32)ref)&0x3) + switch (((intptr_t)ref)&0x3) { case 1: offset = picpitch - blkwidth - 3; @@ -790,7 +790,7 @@ void eVertInterp1MC(uint8 *in, int inpitch, uint8 *out, int outpitch, uint8 tmp_in[24][24]; /* not word-aligned */ - if (((uint32)in)&0x3) + if (((intptr_t)in)&0x3) { eCreateAlign(in, inpitch, -2, &tmp_in[0][0], blkwidth, blkheight + 5); in = &tmp_in[2][0]; @@ -1465,7 +1465,7 @@ void eDiagonalInterpMC(uint8 *in1, uint8 *in2, int inpitch, /* perform vertical interpolation */ /* not word-aligned */ - if (((uint32)in2)&0x3) + if (((intptr_t)in2)&0x3) { eCreateAlign(in2, inpitch, -2, &tmp_in[0][0], blkwidth, blkheight + 5); in2 = &tmp_in[2][0]; @@ -1659,7 +1659,7 @@ void eFullPelMC(uint8 *in, int inpitch, uint8 *out, int outpitch, uint32 temp; uint8 byte; - if (((uint32)in)&3) + if (((intptr_t)in)&3) { for (j = blkheight; j > 0; j--) { @@ -1720,7 +1720,7 @@ void ePadChroma(uint8 *ref, int picwidth, int picheight, int picpitch, int x_pos else start = ref + x_pos; /* word-align start */ - offset = (uint32)start & 0x3; + offset = (intptr_t)start & 0x3; if (offset) start -= offset; word1 = *((uint32*)start); @@ -1746,7 +1746,7 @@ void ePadChroma(uint8 *ref, int picwidth, int picheight, int picpitch, int x_pos else start = ref + picpitch * (picheight - 1) + x_pos; /* word-align start */ - offset = (uint32)start & 0x3; + offset = (intptr_t)start & 0x3; if (offset) start -= offset; word1 = *((uint32*)start); @@ -2121,7 +2121,7 @@ void eChromaFullMC_SIMD(uint8 *pRef, int srcPitch, int dx, int dy, uint16 temp; uint8 byte; - if (((uint32)pRef)&1) + if (((intptr_t)pRef)&1) { for (j = blkheight; j > 0; j--) { diff --git a/media/libstagefright/codecs/avc/enc/src/sad_inline.h b/media/libstagefright/codecs/avc/enc/src/sad_inline.h index f39794f155e66..3f1848334dca4 100644 --- a/media/libstagefright/codecs/avc/enc/src/sad_inline.h +++ b/media/libstagefright/codecs/avc/enc/src/sad_inline.h @@ -80,7 +80,7 @@ extern "C" x9 = 0x80808080; /* const. */ - x8 = (uint32)ref & 0x3; + x8 = (intptr_t)ref & 0x3; if (x8 == 3) goto SadMBOffset3; if (x8 == 2)