Skip to content

problem in alias analysis #5

Description

@kheradmand

alias analysis code does not detect the alias in this code

        // store data to be written in output bin
        pthread_mutex_lock(OutMutex);
        //OutputBuffer[blockNum].buf = DecompressedData;
        ((outBuff*) vector_get(&OutputBuffer, blockNum))->buf = DecompressedData;
        //OutputBuffer[blockNum].bufSize = outSize;
        ((outBuff*) vector_get(&OutputBuffer, blockNum))->bufSize = outSize;
        pthread_mutex_unlock(OutMutex);

        #ifdef PBZIP_DEBUG
        //fprintf(stderr, " OutputBuffer[%d].buf = %x\n", blockNum, OutputBuffer[blockNum].buf);
        fprintf(stderr, " OutputBuffer[%d].buf = %x\n", blockNum, 
                ((outBuff*)vector_get(&OutputBuffer, blockNum))->buf);
        //fprintf(stderr, " OutputBuffer[%d].bufSize = %u\n", blockNum, OutputBuffer[blockNum].bufSize);
        fprintf(stderr, " OutputBuffer[%d].bufSize = %u\n", blockNum, 
                ((outBuff*)vector_get(&OutputBuffer, blockNum))->buf);
        #endif

So the is alias between the values that vector_get returns but alias analysis can not detect it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions